Re: [Rdkit-discuss] RDKit PostgreSQL extension: Unexpected behaviour of substruct()

2024-07-02 Thread Ernst-Georg Schmid
Am 27.06.2024 um 11:03 schrieb Wim Dehaen: I would expect the problem here is kekulization. The SMARTS is pattern matching using the kekule structure (i.e. double and single bonds, non aromatic atoms) and is not sanitized whereas the SMILES after parsing and sanitization has aromatic bonds and

Re: [Rdkit-discuss] RDKit PostgreSQL extension: Unexpected behaviour of substruct()

2024-06-27 Thread Noel O'Boyle
"Every valid SMILES is also a valid SMARTS": I think this is one of John May's lines, which I was never keen on as it makes people think that if you treat a SMILES as a SMARTS that it will match the original SMILES. It mostly will, but I think you have found the difference between the SMILES and SM

Re: [Rdkit-discuss] RDKit PostgreSQL extension: Unexpected behaviour of substruct()

2024-06-27 Thread Wim Dehaen
I would expect the problem here is kekulization. The SMARTS is pattern matching using the kekule structure (i.e. double and single bonds, non aromatic atoms) and is not sanitized whereas the SMILES after parsing and sanitization has aromatic bonds and aromatic atoms. Try what happens when you do a

[Rdkit-discuss] RDKit PostgreSQL extension: Unexpected behaviour of substruct()

2024-06-27 Thread pgchem pgchem
Hello all, if every valid SMILES is also a valid SMARTS, why does: select substruct('[2H]C1=CC([3H])=CC(=C1)C1=N[C@](C)([37Cl])CC1'::mol, '[2H]C1=CC([3H])=CC(=C1)C1=N[C@](C)([37Cl])CC1'::mol) yield "True", but: select substruct('[2H]C1=CC([3H])=CC(=C1)C1=N[C@](C)([37Cl])CC1'::mol, '[2H]C1=