synkit 1.5.0__tar.gz → 2.0.0.dev1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {synkit-1.5.0 → synkit-2.0.0.dev1}/.gitignore +14 -0
- synkit-2.0.0.dev1/Data/Mech/README.md +46 -0
- synkit-2.0.0.dev1/Data/Mech/polar.json +15921 -0
- synkit-2.0.0.dev1/Data/Mech/radical.json +12062 -0
- synkit-2.0.0.dev1/Data/Mech/stereo.json +6306 -0
- synkit-2.0.0.dev1/LICENSES/StereoMolGraph-MIT.txt +30 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/PKG-INFO +65 -5
- {synkit-1.5.0 → synkit-2.0.0.dev1}/README.md +63 -4
- {synkit-1.5.0 → synkit-2.0.0.dev1}/pyproject.toml +20 -8
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Molecule/atom_features.py +1 -0
- synkit-2.0.0.dev1/synkit/Chem/Reaction/__init__.py +20 -0
- synkit-2.0.0.dev1/synkit/Chem/Reaction/explicit_h_audit.py +237 -0
- synkit-2.0.0.dev1/synkit/Data/aldol.json.gz +1 -0
- synkit-2.0.0.dev1/synkit/Data/paracetamol.json.gz +1 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Hyrogen/_misc.py +7 -1
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/ITS/its_construction.py +6 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/ITS/its_reverter.py +28 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/ITS/rc_extractor.py +9 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/batch_cluster.py +12 -39
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/graph_cluster.py +42 -52
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/graph_matcher.py +5 -48
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/subgraph_matcher.py +37 -90
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Mech/electron_accounting.py +5 -1
- synkit-2.0.0.dev1/synkit/Graph/Stereo/__init__.py +108 -0
- synkit-2.0.0.dev1/synkit/Graph/Stereo/changes.py +177 -0
- synkit-2.0.0.dev1/synkit/Graph/Stereo/couplings.py +224 -0
- synkit-2.0.0.dev1/synkit/Graph/Stereo/descriptors.py +734 -0
- synkit-2.0.0.dev1/synkit/Graph/Stereo/identity.py +565 -0
- synkit-2.0.0.dev1/synkit/Graph/Stereo/interchange.py +496 -0
- synkit-2.0.0.dev1/synkit/Graph/Stereo/matching.py +436 -0
- synkit-2.0.0.dev1/synkit/Graph/Stereo/outcomes.py +99 -0
- synkit-2.0.0.dev1/synkit/Graph/Stereo/rdkit_adapter.py +638 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/syn_graph.py +48 -6
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/utils.py +131 -2
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/chem_converter.py +13 -1
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/data_io.py +0 -45
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/graph_to_mol.py +69 -4
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/mol_to_graph.py +73 -1
- synkit-2.0.0.dev1/synkit/Mechanism/__init__.py +134 -0
- synkit-2.0.0.dev1/synkit/Mechanism/adapters.py +136 -0
- synkit-2.0.0.dev1/synkit/Mechanism/audit.py +323 -0
- synkit-2.0.0.dev1/synkit/Mechanism/benchmark.py +618 -0
- synkit-2.0.0.dev1/synkit/Mechanism/compatibility.py +10 -0
- synkit-2.0.0.dev1/synkit/Mechanism/drawing.py +85 -0
- synkit-2.0.0.dev1/synkit/Mechanism/equivalence.py +443 -0
- synkit-2.0.0.dev1/synkit/Mechanism/evidence.py +255 -0
- synkit-2.0.0.dev1/synkit/Mechanism/interchange.py +124 -0
- synkit-2.0.0.dev1/synkit/Mechanism/model.py +1214 -0
- synkit-2.0.0.dev1/synkit/Mechanism/radical_data.py +238 -0
- synkit-2.0.0.dev1/synkit/Mechanism/replay.py +574 -0
- synkit-2.0.0.dev1/synkit/Mechanism/schema.py +206 -0
- synkit-2.0.0.dev1/synkit/Mechanism/stereo_state.py +348 -0
- synkit-2.0.0.dev1/synkit/Mechanism/symbols.py +91 -0
- synkit-2.0.0.dev1/synkit/Rule/Compose/_identity.py +43 -0
- synkit-2.0.0.dev1/synkit/Rule/stereo_identity.py +200 -0
- synkit-2.0.0.dev1/synkit/Rule/syn_rule.py +872 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Reactor/batch_reactor.py +11 -36
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Reactor/benchmark.py +0 -4
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Reactor/rule_filter.py +3 -5
- synkit-2.0.0.dev1/synkit/Synthesis/Reactor/syn_reactor.py +3115 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/reactor_utils.py +0 -27
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/epd/models.py +30 -1
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/epd/visualizer.py +3 -1
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/reaction/rule.py +11 -49
- synkit-2.0.0.dev1/synkit/version.py +16 -0
- synkit-1.5.0/synkit/CRN/Construct/DAG/crn.py +0 -207
- synkit-1.5.0/synkit/CRN/Construct/DAG/mod_crn.py +0 -160
- synkit-1.5.0/synkit/Chem/Reaction/__init__.py +0 -7
- synkit-1.5.0/synkit/IO/dg_to_gml.py +0 -133
- synkit-1.5.0/synkit/Rule/Apply/reactor_rule.py +0 -90
- synkit-1.5.0/synkit/Rule/Apply/retro_reactor.py +0 -212
- synkit-1.5.0/synkit/Rule/Apply/rule_rbl.py +0 -86
- synkit-1.5.0/synkit/Rule/Compose/compose_rule.py +0 -225
- synkit-1.5.0/synkit/Rule/Compose/rule_compose.py +0 -236
- synkit-1.5.0/synkit/Rule/Compose/rule_mapping.py +0 -315
- synkit-1.5.0/synkit/Rule/Compose/seq_comp.py +0 -71
- synkit-1.5.0/synkit/Rule/Compose/valence_constrain.py +0 -107
- synkit-1.5.0/synkit/Rule/syn_rule.py +0 -401
- synkit-1.5.0/synkit/Synthesis/MSR/multi_steps.py +0 -137
- synkit-1.5.0/synkit/Synthesis/Reactor/mod_aam.py +0 -279
- synkit-1.5.0/synkit/Synthesis/Reactor/mod_reactor.py +0 -427
- synkit-1.5.0/synkit/Synthesis/Reactor/single_predictor.py +0 -90
- synkit-1.5.0/synkit/Synthesis/Reactor/syn_reactor.py +0 -1429
- synkit-1.5.0/synkit/version.py +0 -7
- {synkit-1.5.0 → synkit-2.0.0.dev1}/LICENSE +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/DAG/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/DAG/syncrn.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/abstract.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/arity.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/builder.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/derivation.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/flattener.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/keys.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/mixtures.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/smiles.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/state.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/strategy.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Construct/worker.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Pathway/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Pathway/_adapter.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Pathway/pathfinder.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Pathway/reachability.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Pathway/realizability.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Petrinet/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Petrinet/analyzer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Petrinet/net.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Petrinet/persistence.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Petrinet/semiflows.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Petrinet/structure.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Props/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Props/dynamics.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Props/helper.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Props/stoich.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Props/thermo.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Query/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Query/kegg_api.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Query/kegg_extract.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Query/kegg_impute.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Query/kegg_parse.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Structure/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Structure/reaction.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Structure/rule.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Structure/species.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Structure/syncrn.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Symmetry/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Symmetry/_common.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Symmetry/_ir.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Symmetry/automorphism.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Symmetry/canon.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Symmetry/isomorphism.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Symmetry/symmetry.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Symmetry/wl_canon.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Visualize/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Visualize/crn_vis.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Visualize/labels.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Visualize/layout.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Visualize/palette.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Visualize/validation.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/Visualize/vis.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/Structure/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/Structure/backend.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/Structure/conversion.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/Structure/hyperedge.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/Structure/hypergraph.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/Structure/rxn.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/Symmetry/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/Symmetry/automorphism.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/Symmetry/canon.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/Symmetry/wl_canon.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/configs/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/configs/loader.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/configs/models.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/constants.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/crn_formula.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/deficiency.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/enumerator.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/exceptions.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/explorer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/helpers.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/injectivity.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/motif.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/network.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/pathway.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/properties.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/reaction.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/utils.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/CRN/dev_crn/viz.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Cluster/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Cluster/butina.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Fingerprint/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Fingerprint/fp_calculator.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Fingerprint/smiles_featurizer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Fingerprint/transformation_fp.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Molecule/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Molecule/descriptors.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Molecule/formula.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Molecule/graph_annotator.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Molecule/standardize.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Molecule/valence.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/aam_validator.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/chem/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/chem/aam.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/chem/its.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/chem/smiles.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/exact/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/exact/branching.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/exact/certificate.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/exact/enumerate.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/exact/exhaustive.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/exact/kernel.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/exact/milp.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/graph/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/graph/automorphism.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/graph/blockcut.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/graph/labeled_graph.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/graph/refine.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/graph/synkit_adapter.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/io/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/io/idxmapstr.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/slap/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/slap/lap.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/Mapper/slap/sequential.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/aam_validator.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/balance_check.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/canon_rsmi.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/cleaning.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/deionize.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/fix_aam.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/neutralize.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/radical_wildcard.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/standardize.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/Reaction/tautomerize.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Chem/utils.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Data/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Data/gen_partial_aam.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Canon/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Canon/canon_algs.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Canon/canon_graph.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Canon/nauty.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Context/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Context/hier_context.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Context/radius_expand.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/FG/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/FG/api.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/FG/audit.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/FG/catalog.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/FG/detector.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/FG/model.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/FG/ring_system.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Feature/Descriptors/topology.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Feature/Fingerprint/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Feature/Fingerprint/wl_rxn_fps.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Feature/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Feature/graph_descriptors.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Feature/graph_fps.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Feature/graph_signature.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Feature/hash_fps.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Feature/morgan_fps.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Feature/path_fps.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Feature/wl_hash.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Hyrogen/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Hyrogen/hcomplete.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Hyrogen/hextend.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/ITS/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/ITS/its_builder.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/ITS/its_decompose.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/ITS/its_destruction.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/ITS/its_expand.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/ITS/its_relabel.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/ITS/normalize_aam.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/ITS/partial_its.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/MTG/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/MTG/mcs_matcher.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/MTG/mtg.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/MTG/mtg_explore.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/MTG/utils.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/approx_mcs.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/auto_est.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/automorphism.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/dedup_matches.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/graph_morphism.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/mcs_matcher.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/multi_turbo_iso.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/orbit.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/partial_matcher.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/sing.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/turbo_iso.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Matcher/wl_sel.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Mech/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Mech/conversion.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Mech/lwg_editor.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Mech/lwg_ops.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Wildcard/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Wildcard/fuse_graph.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Wildcard/graph_wc.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Wildcard/its_merge.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Wildcard/radwc.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Wildcard/wc_matcher.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/Wildcard/wildcard.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Graph/canon_graph.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/combinatorial/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/combinatorial/gml_to_graph.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/combinatorial/graph_to_gml.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/combinatorial/graph_to_smarts.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/combinatorial/smarts_expander.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/combinatorial/smarts_generalizer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/combinatorial/smarts_to_graph.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/conversion.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/data_process.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/debug.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/gml_to_nx.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/nx_to_gml.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/IO/smiles_to_id.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Rule/Apply/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Rule/Apply/rule_matcher.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Rule/Compose/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Rule/Modify/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Rule/Modify/implict_rule.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Rule/Modify/longest_path.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Rule/Modify/molecule_rule.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Rule/Modify/prune_templates.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Rule/Modify/rule_utils.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Rule/Modify/strip_rule.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Rule/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/MSR/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/MSR/path_finder.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Metrics/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Metrics/_base.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Metrics/_plot.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Metrics/_ranking.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Reactor/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Reactor/imba_engine.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Reactor/partial_engine.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Reactor/post_syn.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Reactor/rbl_engine.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/Reactor/strategy.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Synthesis/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Utils/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Utils/utils.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/crn/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/crn/visualizer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/epd/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/epd/arrows.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/epd/chem.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/epd/constants.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/epd/layout.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/epd/mapping.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/epd/render.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/epd/utils.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/graph_visualizer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/its/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/its/drawer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/its_drawer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/molecule/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/molecule/drawer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/molecule/reaction.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/molecule_drawer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/mtg/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/mtg/drawer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/mtg_drawer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/pdf_writer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/reaction/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/reaction/rxn.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/reaction_drawer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/space/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/space/chemical.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/space/embedding.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/vis_synedu/Vis/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/vis_synedu/Vis/dpo.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/vis_synedu/rxn_vis.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/vis_synedu/vis.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/visual_drawer.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/Vis/visual_model.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/__init__.py +0 -0
- {synkit-1.5.0 → synkit-2.0.0.dev1}/synkit/examples.py +0 -0
|
@@ -9,6 +9,13 @@
|
|
|
9
9
|
|
|
10
10
|
.coverage
|
|
11
11
|
dev/*
|
|
12
|
+
# Local development, audit, and debugging helpers.
|
|
13
|
+
/tools/
|
|
14
|
+
!/tools/
|
|
15
|
+
/tools/*
|
|
16
|
+
!/tools/stereo_conformance.py
|
|
17
|
+
/debug/
|
|
18
|
+
/Test/Conformance/
|
|
12
19
|
*.rdf
|
|
13
20
|
test_syn_reactor.py
|
|
14
21
|
|
|
@@ -30,10 +37,17 @@ Data/Study/CRN/case_formose/*
|
|
|
30
37
|
synkit/Graph/dev/*
|
|
31
38
|
*.ipynb
|
|
32
39
|
*.json
|
|
40
|
+
!Data/Mech/polar.json
|
|
41
|
+
!Data/Mech/radical.json
|
|
42
|
+
!Data/Mech/stereo.json
|
|
43
|
+
!Test/Synthesis/Reactor/fixtures/small_rewrite_conformance.json
|
|
44
|
+
!Data/Conformance/stereomolgraph_graph_conformance.json
|
|
33
45
|
*.txt
|
|
46
|
+
!LICENSES/*.txt
|
|
34
47
|
*.log
|
|
35
48
|
sprint/
|
|
36
49
|
test_syn.py
|
|
37
50
|
.gitignore
|
|
38
51
|
measure_candidate_stages.py
|
|
39
52
|
run_valid_bug_cases.py
|
|
53
|
+
paper/*
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# MechanismBench
|
|
2
|
+
|
|
3
|
+
`Data/Mech/` is the canonical on-branch location for the three reviewed
|
|
4
|
+
MechanismBench partitions. The former large `polar.csv` and `radical.csv`
|
|
5
|
+
source pools are not vendored; all release cases and their review provenance
|
|
6
|
+
are embedded in the JSON manifests below.
|
|
7
|
+
|
|
8
|
+
The public, executable MechanismBench layout has exactly three partitions:
|
|
9
|
+
|
|
10
|
+
- `radical.json` — 80 chemistry-reviewed, macro-balanced radical mechanisms.
|
|
11
|
+
Every case embeds its correction history, strict forward/reverse replay, and
|
|
12
|
+
unmapped rule-reapplication evidence.
|
|
13
|
+
- `polar.json` — 80 reviewed two-electron mechanisms selected deterministically
|
|
14
|
+
from SynEPD's 1,915-record `polar.json` source pool. The manifest records the
|
|
15
|
+
source SHA-256, CC BY 4.0 provenance, eight top-level POLAR strata, and strict
|
|
16
|
+
replay/reapplication evidence for every selected record. The full source pool
|
|
17
|
+
is intentionally not copied here.
|
|
18
|
+
- `stereo.json` — 72 positive transformations: the original 40 reaction-SMILES
|
|
19
|
+
cases, four reviewed non-tetrahedral/atrop rewrite fixtures, seven Phase 2R
|
|
20
|
+
electron-flow × stereo fixtures, and 21 reviewed native-descriptor rewrites.
|
|
21
|
+
Its eight negative assertions are retained as corruption/specification
|
|
22
|
+
fixtures and do not count as positive cases.
|
|
23
|
+
|
|
24
|
+
The compact nine-case rewrite conformance suite is development-only data at
|
|
25
|
+
`Test/Synthesis/Reactor/fixtures/small_rewrite_conformance.json`. It deliberately
|
|
26
|
+
does not define a MechanismBench partition.
|
|
27
|
+
|
|
28
|
+
The current stereo baseline is 72 positives, not 80. Any future claim of an
|
|
29
|
+
80-positive stereo partition requires eight further independently reviewed
|
|
30
|
+
positive cases; negative fixtures must never be counted to fill that gap.
|
|
31
|
+
|
|
32
|
+
Raw candidate pools, audit summaries, and release-owner checklists do not belong
|
|
33
|
+
in this directory. They should be regenerated from source data or kept as project
|
|
34
|
+
documentation rather than presented as benchmark cases.
|
|
35
|
+
|
|
36
|
+
Generate the current replay/corruption/runtime evidence with:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
python tools/mechanismbench_evidence.py \
|
|
40
|
+
--output Data/Mech/evidence/mechanismbench_evidence.json
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
The report currently covers typed `MechanismRecord` fixtures. It records the
|
|
44
|
+
reaction-SMILES, non-tetrahedral, and promoted native-descriptor rewrite
|
|
45
|
+
fixtures that remain outside that shared replay representation instead of
|
|
46
|
+
assigning them fabricated metrics.
|