CyberRXN Docs
Chemistry and evidence

Validation and atom balancing

R1–R8 screening, full conservation and explicit model imputation.

Strict validation

validate_reaction / POST /v1/chemistry/validate uses the reaction-validation package plus full atom, hydrogen/isotope and formal-charge conservation. Supply reaction_smiles; mode defaults to strict.

Optional conditions use temperature_c_min, temperature_c_max, ph, time_hours, pressure_bar. Patent/year fields support source screening. Unknown conditions should be omitted, not invented. include_agents_in_balance:false keeps middle-section agents out of the consumed-reactant atom count; classify a genuinely consumed reagent on the reactant side.

{"reaction_smiles":"CCO>>CC=O","mode":"strict"}

Heavy atoms and charge match in this example, but H does not: C₂H₆O → C₂H₄O has ΔH = −2. The existing package's heavy-atom check alone does not establish complete conservation. Read atom_balance, errors, warnings, validator.version and limitations.

training mode can retain warnings for dataset processing. Use strict checks for acceptance decisions. Do not treat training-mode acceptance as proof of a complete equation.

Coefficients of supplied species

{"reaction_smiles":"[H][H].O=O>>O","method":"coefficients"}

balance_reaction solves exact positive integer coefficients without silently inventing a missing molecule. The readable result is 2 H₂ + O₂ → 2 H₂O. It can return already_balanced, balanced, unsolved, ambiguous, invalid or limit_exceeded. An underdetermined equation is not resolved by choosing arbitrary chemistry.

SynRBL missing-species hypotheses

{"reaction_smiles":"CC(=O)OCC>>CC(=O)O.CCO","method":"synrbl"}

The isolated SynRBL runtime can propose missing water on the reactant side. The result exposes imputed_species, imputed_reactants, imputed_products, model diagnostics and fresh validation. Keep the original equation and label every addition as algorithmic.

The model bridge has bounded input, CPU, memory and concurrency. A busy/unavailable/timed-out model returns a structured service error; it does not become an empty or successful balance. Coefficient balancing remains available independently.

A solved equation confirms accounting consistency only. It does not validate kinetics, selectivity, yield, source authenticity or an actual experiment.

On this page