matching problem

User 870ab5b546

22-06-2006 16:19:02

Consider these two compounds:





Code:
<?xml version="1.0" ?>


<MDocument>


  <MChemicalStruct>


    <molecule molID="m1">


      <atomArray


          atomID="a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 a16 a17 a18 a19 a20 a21 a22 a23 a24 a25 a26 a27 a28 a29 a30 a31 a32 a33 a34"


          elementType="C C C C C C H H H H H H H H H H H C C C C C C H H H H H H H H H H H"


          radical="0 0 0 0 0 monovalent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 monovalent 0 0 0 0 0 0 0 0 0 0 0"


          x2="-2.3916666507720947 -3.6375329797891225 -3.1616705624019 -1.6216627391422878 -1.145800321755067 0.31883223881736567 -2.8467677690305586 -1.9365655325136324 -5.177379669599478 -4.896153886542137 -3.658304623782584 -4.394652324932775 -0.3886809766114121 -1.1250286777616036 -0.904865744302144 0.6390337330508611 1.4632633051563022 6.71758458036966 5.471718251352632 5.947580668739855 7.487588491999467 7.963450909386688 9.42808346995912 6.262483462111196 7.172685698628122 3.9318715615422763 4.213097344599618 5.450946607359171 4.71459890620898 8.720570254530342 7.984222553380151 8.20438548683961 9.748284964192615 10.572514536298057"


          y2="-0.03167444367825385 -0.936891042190254 -2.4014384821101453 -2.4014384821101453 -0.9368910421902541 -0.4610218768611276 1.4395437495751793 1.4395437495751797 -0.9151615258567132 -0.04949405488174374 -3.859160886780022 -3.3241280145457623 -3.324128014545761 -3.8591608867800216 0.584144963099424 1.0453217104690131 -1.4914962988621419 0.06441565569214092 -0.8408009428198588 -2.3053483827397505 -2.3053483827397505 -0.8408009428198593 -0.3649317774907326 1.535633848945574 1.535633848945575 -0.8190714264863184 0.04659604448865107 -3.763070787409627 -3.228037915175367 -3.228037915175366 -3.7630707874096263 0.6802350624698192 1.1414118098394077 -1.395406199491747"


          />


      <bondArray>


        <bond atomRefs2="a1 a2" order="1" />


        <bond atomRefs2="a1 a5" order="1" />


        <bond atomRefs2="a2 a3" order="1" />


        <bond atomRefs2="a3 a4" order="1" />


        <bond atomRefs2="a4 a5" order="1" />


        <bond atomRefs2="a5 a6" order="1" />


        <bond atomRefs2="a1 a7" order="1" />


        <bond atomRefs2="a1 a8" order="1" />


        <bond atomRefs2="a2 a9" order="1" />


        <bond atomRefs2="a2 a10" order="1" />


        <bond atomRefs2="a3 a11" order="1" />


        <bond atomRefs2="a3 a12" order="1" />


        <bond atomRefs2="a4 a13" order="1" />


        <bond atomRefs2="a4 a14" order="1" />


        <bond atomRefs2="a5 a15" order="1" />


        <bond atomRefs2="a6 a16" order="1" />


        <bond atomRefs2="a6 a17" order="1" />


        <bond atomRefs2="a18 a19" order="1" />


        <bond atomRefs2="a18 a22" order="1" />


        <bond atomRefs2="a19 a20" order="1" />


        <bond atomRefs2="a20 a21" order="1" />


        <bond atomRefs2="a21 a22" order="1" />


        <bond atomRefs2="a22 a23" order="1" />


        <bond atomRefs2="a18 a24" order="1" />


        <bond atomRefs2="a18 a25" order="1" />


        <bond atomRefs2="a19 a26" order="1" />


        <bond atomRefs2="a19 a27" order="1" />


        <bond atomRefs2="a20 a28" order="1" />


        <bond atomRefs2="a20 a29" order="1" />


        <bond atomRefs2="a21 a30" order="1" />


        <bond atomRefs2="a21 a31" order="1" />


        <bond atomRefs2="a22 a32" order="1">


          <bondStereo convention="MDL" conventionValue="4" />


        </bond>


        <bond atomRefs2="a23 a33" order="1" />


        <bond atomRefs2="a23 a34" order="1" />


      </bondArray>


    </molecule>


  </MChemicalStruct>


</MDocument>








The wavy bond in the second structure has no chemical meaning, yet when we do a search with the left structure as target and the right structure as query, with ExactStereoMatching = false, there is no match. !!? Same problem when the CH2• is replaced with NH2.





-- Bob

User 870ab5b546

22-06-2006 18:53:58

Here's an even more simple example. Query:





Code:
<?xml version="1.0" ?>


<MDocument>


  <MChemicalStruct>


    <molecule molID="m1">


      <atomArray


          atomID="a1 a2 a3 a4 a5 a6"


          elementType="C C C C C C"


          x2="-2.450000047683716 -3.6958663767007436 -3.2200039593135212 -1.6799961360539089 0.26049884190574457 -1.204133718666688"


          y2="1.7183255861240685 0.8131089876120683 -0.6514384523078229 -0.6514384523078229 1.2889781529411948 0.8131089876120683"


          />


      <bondArray>


        <bond atomRefs2="a1 a2" order="1" />


        <bond atomRefs2="a1 a6" order="1" />


        <bond atomRefs2="a3 a4" order="1" />


        <bond atomRefs2="a4 a6" order="1" />


        <bond atomRefs2="a6 a5" order="1">


          <bondStereo convention="MDL" conventionValue="4" />


        </bond>


      </bondArray>


    </molecule>


  </MChemicalStruct>


</MDocument>








and target:





Code:
<?xml version="1.0" ?>


<MDocument>


  <MChemicalStruct>


    <molecule molID="m1">


      <atomArray


          atomID="a1 a2 a3 a4 a5 a6"


          elementType="C C C C C C"


          x2="-2.450000047683716 -3.6958663767007436 -3.2200039593135212 -1.6799961360539089 0.26049884190574457 -1.204133718666688"


          y2="1.7183255861240685 0.8131089876120683 -0.6514384523078229 -0.6514384523078229 1.2889781529411948 0.8131089876120683"


          />


      <bondArray>


        <bond atomRefs2="a1 a2" order="1" />


        <bond atomRefs2="a1 a6" order="1" />


        <bond atomRefs2="a3 a4" order="1" />


        <bond atomRefs2="a4 a6" order="1" />


        <bond atomRefs2="a6 a5" order="1" />


      </bondArray>


    </molecule>


  </MChemicalStruct>


</MDocument>








The wavy bond in the first structure is meaningless, but the two structures do not match.

ChemAxon a3d59b832c

23-06-2006 11:55:11

Hi Bob,





This is the same issue as we discussed here:





http://www.chemaxon.com/forum/ftopic1546.html





There, in one of your proposed option was to have wiggly bonds behave as plain bonds (inclusive OR). That will be the option you need. I will let you know when this option is ready.





Best regards,


Szabolcs

User 870ab5b546

23-06-2006 12:39:23

It's actually a different issue. In the previous discussion, I was assuming that the wavy bond had chemical meaning. In this particular case, the wavy bond has no chemical meaning. That is, whether you consider the wavy bond to mean XOR or AND, the two structures it denotes are identical, so the wavy bond should be identical to a plain bond.

ChemAxon a3d59b832c

23-06-2006 13:46:28

OK, I see now. We also discussed this kind of questions before:


http://www.chemaxon.com/forum/ftopic1195.html





And it seems to me now that we could not work out a fully satisfactory solution. Maybe we should review the two problems together.





Just one clarification: You intend to do full structure comparison (PERFECT search) in both cases and not substructure search. Is this correct?





Szabolcs

User 870ab5b546

23-06-2006 16:00:19

We generally do EXACT searches, not PERFECT searches.





Looking back at the other discussion, I see why you have arranged things the way you have. That makes sense. And in fact, the wavy bond that was causing us trouble was one that was incorrectly introduced during hydrogenation, and you have already changed hydrogenization so that it doesn't add wavy bonds anymore. So maybe we are looking for a solution without a problem.





In other words, I now understand, and I don't advocate that you change what you are doing.

ChemAxon a3d59b832c

23-06-2006 16:12:16

OK. Thanks.