Giter Club home page Giter Club logo

synrbl's People

Contributors

klausweinbauer avatar tieulongphan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

synrbl's Issues

Carbon-Oxygen bond break

{
'id': 'US20070225349A1'
'class': 6
'reactions': 'COc1ccc(-c2nn(C(C)C)c3c(Cl)cccc23)cc1>>CC(C)n1nc(-c2ccc(O)cc2)c2cccc(Cl)c21'
'reactants': 'COc1ccc(-c2nn(C(C)C)c3c(Cl)cccc23)cc1'
'products': 'CC(C)n1nc(-c2ccc(O)cc2)c2cccc(Cl)c21'
'Unbalance': 'Products'
'Diff_formula': {'C': 1, 'H': 2}
'mcs_impute_reaction': 'COc1ccc(-c2nn(C(C)C)c3c(Cl)cccc23)cc1>>CC(C)n1nc(-c2ccc(O)cc2)c2cccc(Cl)c21.CO'
}
export_US20070225349A1

MCS problem

{'id': 'US20140049823A1',
'old_reaction': 'C=CCBr.CCOP(OCC)OCC>>C=CCP(=O)(OCC)OCC',
'new_reaction': 'C=CCBr.CCOP(OCC)OCC>>C=CCP(=O)(OCC)OCC.Br.CCO',
'merge_rules': [],
'compound_rules': [],
'issue': None}

image

Cannot find the right missing graphs, which lead to 2 molecules instead of CH3-CH2-Br

Grignard reaction

I've encountered an issue with the reaction imputation process. The reaction in question appears to be imputed correctly, as shown in the following image:

image

However, there's a critical problem concerning the multiple steps of this reaction. The use of Grignard reagents in this context does not seem chemically plausible. Grignard reagents are known to be highly reactive with water, making them unstable and unsuitable for use in aqueous solutions. This issue raises questions about the reaction's feasibility and accuracy in a real-world chemical setting.

Carbon-Carbon formation issues

  1. Formation of Halogen bond (Cl-Br; Br-I,...) due to the missing of metal
    {'id': 'US08802886B2',
    'class': 3,
    'reactions': 'CCOC(=O)C(F)(F)Br.CCOC(=O)c1ccc(I)cc1>>CCOC(=O)c1ccc(C(F)(F)C(=O)OCC)cc1',
    'reactants': 'CCOC(=O)C(F)(F)Br.CCOC(=O)c1ccc(I)cc1',
    'products': 'CCOC(=O)c1ccc(C(F)(F)C(=O)OCC)cc1.BrI',
    'standardized_reactants': nan,
    'standardized_products': nan,
    'Unbalance': 'Products',
    'Diff_formula': {'Br': 1, 'I': 1, 'Q': 0},
    'new_reaction': 'CCOC(=O)C(F)(F)Br.CCOC(=O)c1ccc(I)cc1>>CCOC(=O)c1ccc(C(F)(F)C(=O)OCC)cc1.BrI'

image

Mismatch Reduction - Oxidation

{'id': 'US05622954',
'class': 8,
'reactions': 'CC(C)(CO)c1ccc(Cl)cc1>>CC(C)(C=O)c1ccc(Cl)cc1',
'reactants': 'CC(C)(CO)c1ccc(Cl)cc1',
'products': 'CC(C)(C=O)c1ccc(Cl)cc1.[HH]',
'standardized_reactants': nan,
'standardized_products': nan,
'Unbalance': 'Products',
'Diff_formula': {'H': 2, 'Q': 0},
'new_reaction': 'CC(C)(CO)c1ccc(Cl)cc1>>CC(C)(C=O)c1ccc(Cl)cc1.[HH]'}
image

{'id': 'US05670675',
'class': 8,
'reactions': 'CC(=O)NC@HC(C)C>>CC(=O)NC@HC(C)C',
'reactants': 'CC(=O)NC@HC(C)C',
'products': 'CC(=O)NC@HC(C)C.[HH]',
'standardized_reactants': nan,
'standardized_products': nan,
'Unbalance': 'Products',
'Diff_formula': {'H': 2, 'Q': 0},
'new_reaction': 'CC(=O)NC@HC(C)C>>CC(=O)NC@HC(C)C.[HH]'}

image

Decarboxylation

'id': 'US04480118',

image

This case still right, but can not extract the right mechanism, which should result in carbon dioxide in products

Carbon-Halogen break

I've identified a potential issue in the reaction transformations involving aryl halides (Ar-Halide) and alkyl halides (Alkyl-Halide). For eg: id': 'US20130089512A1'

  1. Aryl Halides (Ar-Halide) Reduction:

In the current dataset, aryl halides are being reduced directly to aryl hydrides (Ar-H). The provided example (see image below) illustrates this issue. However, this direct reduction approach is chemically less common for aryl halides.
A more chemically accurate approach would be to first transform the aryl halide into a metal derivative, followed by solvation with H2O. This pathway would better reflect the typical reactivity of aryl halides.

image

  1. Alkyl Halides (Alkyl-Halide) Reduction:

For alkyl halides, using [H] for reduction seems appropriate. However, the same treatment for aryl halides seems to oversimplify their chemistry.

Oxidation - Reduction reagents

1. Reduction reaction

The current transformation appears to treat the reduction of carboxylic acids to carbonyl compounds as a direct reaction facilitated merely by the addition of H2. An example of this is shown in the figure below. While this approach is stoichiometrically correct, it does not accurately reflect the typical chemical pathways for such a reduction.

Direct reduction of carboxylic acids to carbonyl compounds is relatively rare in chemical processes. More commonly, these reductions involve intermediate steps or different reagents.

image

As a temporary solution, I suggest changing H2 to [H] in the dataset. This alteration might better represent the general concept of reduction without specifying a direct reaction mechanism that is chemically less common.

For a more accurate and detailed representation, it might be beneficial to consider incorporating specific reagents and intermediate steps that are commonly involved in the reduction of carboxylic acids to carbonyl compounds in real-world chemistry. For example: in reduction of amid to amin should use LiAlH4, reduction of alken to alkan should use H2/Ni

2. Oxidation reaction

Should be the same issue

Stereoisomer

  1. Hydrogenation
    {'id': 'US20110060146A1',
    'class': 7,
    'reactions': 'CCC(CC)(c1ccc(O)c(C)c1)c1ccc(C#CC2(O)CCCC2)c(C)c1>>CCC(CC)(c1ccc(O)c(C)c1)c1ccc(/C=C/C2(O)CCCC2)c(C)c1',
    'reactants': 'CCC(CC)(c1ccc(O)c(C)c1)c1ccc(C#CC2(O)CCCC2)c(C)c1.[HH]',
    'products': 'CCC(CC)(c1ccc(O)c(C)c1)c1ccc(/C=C/C2(O)CCCC2)c(C)c1',
    'standardized_reactants': nan,
    'standardized_products': nan,
    'Unbalance': 'Reactants',
    'Diff_formula': {'H': 2, 'Q': 0},
    'new_reaction': 'CCC(CC)(c1ccc(O)c(C)c1)c1ccc(C#CC2(O)CCCC2)c(C)c1.[HH]>>CCC(CC)(c1ccc(O)c(C)c1)c1ccc(/C=C/C2(O)CCCC2)c(C)c1'}

image

The product is E-isomer so it should be Na+NH3 instead of H2

Undefined reaction

  1. R-CH=CBr2 => R-C#C

{'id': 'US07700657B2',
'class': 9,
'reactions': 'CC/C(=C\C=C(Br)Br)c1cccc(CCc2ccc(C(OSiHC)C(C)(C)C)c(C(OSiHC)C(C)(C)C)c2)c1>>C#C/C=C(\CC)c1cccc(CCc2ccc(C(OSiHC)C(C)(C)C)c(C(OSiHC)C(C)(C)C)c2)c1',
'reactants': 'CC/C(=C\C=C(Br)Br)c1cccc(CCc2ccc(C(OSiHC)C(C)(C)C)c(C(OSiHC)C(C)(C)C)c2)c1',
'products': 'C#C/C=C(\CC)c1cccc(CCc2ccc(C(OSiHC)C(C)(C)C)c(C(OSiHC)C(C)(C)C)c2)c1.BrBr',
'standardized_reactants': nan,
'standardized_products': nan,
'Unbalance': 'Products',
'Diff_formula': {'Br': 2, 'Q': 0},
'new_reaction': 'CC/C(=C\C=C(Br)Br)c1cccc(CCc2ccc(C(OSiHC)C(C)(C)C)c(C(OSiHC)C(C)(C)C)c2)c1>>C#C/C=C(\CC)c1cccc(CCc2ccc(C(OSiHC)C(C)(C)C)c(C(O[SiH](C

image

Bug incode logic

{'id': 'US20110212930A1',
'class': 4,
'reactions': 'CC(C)(C)OC(=O)N1CCc2cc(N)ccc21.O=C(Cl)CCCCBr>>CC(C)(C)OC(=O)N1CCc2cc(N3CCCCC3=O)ccc21',
'reactants': 'CC(C)(C)OC(=O)N1CCc2cc(N)ccc21.O=C(Cl)CCCCBr',
'products': 'CC(C)(C)OC(=O)N1CCc2cc(N3CCCCC3=O)ccc21.ClBr.[HH]',
'standardized_reactants': nan,
'standardized_products': nan,
'Unbalance': 'Products',
'Diff_formula': {'Cl': 1, 'Br': 1, 'H': 2, 'Q': 0},
'new_reaction': 'CC(C)(C)OC(=O)N1CCc2cc(N)ccc21.O=C(Cl)CCCCBr>>CC(C)(C)OC(=O)N1CCc2cc(N3CCCCC3=O)ccc21.ClBr.[HH]'}

image

=> Should be HBr + HCl

The problem is caused by

   shortest_sublists = find_shortest_sublists(solutions)
   return sorted(shortest_sublists, key=calculate_net_charge, reverse=True)

Diff_formula': {'Cl': 1, 'Br': 1, 'H': 2, 'Q': 0}

The wrong solution: {HH, BrCl} only 2 elements
The right solution: {2H+, Br-, Cl-} 4 elements

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.