Prepare release v.1.2
SynKit v1.2.0 — Release Notes
✨ New Features
-
New
SynKit/CRNpackage with 6 dedicated submodules- SynKit v1.2 introduces a new CRN package organized into six explicit submodules:
- Construct — CRN generation via rule application
- Structure — canonical CRN representation through the
SynCRNobject - Symmetry — morphism, automorphism, and canonicalization utilities
- Props — stoichiometric, thermodynamic, and dynamical properties
- Petrinet — foundational Petri net layer for CRN analysis
- Pathway — reachability, realizability, and pathway search
- SynKit v1.2 introduces a new CRN package organized into six explicit submodules:
-
Construct: CRN generation via rule application
- Added a dedicated construction layer for generating CRNs from reaction rules.
- Supports controlled network expansion, derivation tracking, mixture/state handling, and rule-application workflows.
- Designed to serve as the entry point for building reaction networks from seeds and transformation rules.
-
Structure:
SynCRNas the core CRN representation- Added the
SynCRNobject as the main structured representation of a chemical reaction network. - Supports explicit species-reaction organization and clean conversion between views.
- The representation is designed to be invertible to both:
- hypergraph structure
- Petri net structure
- Includes explicit reaction objects, normalized stoichiometric sides, and reaction-string parsing such as
2A + B >> C.
- Added the
-
Symmetry: morphism and canonicalization utilities
- Added a symmetry-focused layer for CRN equivalence and structure-aware analysis.
- Includes support for:
- graph morphism utilities
- isomorphism-style comparison
- automorphism analysis
- orbit-related symmetry handling
- exact or approximate canonicalization
- Intended to support symmetry-aware reasoning, deduplication, and canonical CRN representations.
-
Props: stoichiometric, thermodynamic, and dynamic properties
- Added a property-analysis layer gathering core CRN descriptors and structural analyses.
- Includes:
- stoichiometric analysis
S⁻,S⁺, andS = S⁺ − S⁻- stoichiometric matrix extraction
- rank
- left and right nullspaces
- conservation laws
- thermodynamic-oriented utilities
- structural quantities relevant to feasibility and constraint-based interpretation
- dynamic / structural system analysis
- symbolic reactivity matrix
- symbolic Jacobian
- Jacobian sparsity
- Jacobian sign pattern
- species influence graph
- structural singularity summaries
- stoichiometric analysis
-
Petrinet: foundational Petri net model for CRNs
- Added a dedicated Petri net foundation for CRN representation and analysis.
- Provides place-transition semantics as a formal view of a CRN.
- Includes support for:
- Petri net construction from CRN incidence
- place / transition ordering
- siphons
- traps
- persistence-related checks
- analyzer utilities operating on either CRN or Petri-net inputs
- Establishes the formal basis for structural reasoning, reachability-style workflows, and future extensions.
-
Pathway: reachability, realizability, and path finding
- Added a pathway-analysis layer for reasoning about how target species or states can be achieved.
- Includes:
- reachability-oriented workflows
- flow realizability
- qualitative pathway search
- Introduced:
- PathwayFinder for source-to-target search in set semantics
- PathwayRealizability for checking whether a proposed reaction flow can be realized from an initial marking
- Supports bounded search, deduplication by flow, early stopping, and serializable summaries.
🚀 Enhancements
-
Cleaner modular organization
- The CRN system is now explicitly organized around the six submodules:
ConstructStructureSymmetryPropsPetrinetPathway
- The CRN system is now explicitly organized around the six submodules:
-
Improved interoperability across CRN views
- Added cleaner transitions between construction workflows,
SynCRN, hypergraph representations, stoichiometric views, and Petri net formulations.
- Added cleaner transitions between construction workflows,
-
More consistent ordering and tokenization
- Species and reaction ordering is more consistent across structural, stoichiometric, and Petri-net analyses, improving reproducibility.
-
Expanded API and internal helpers
- Improved helper and adapter utilities for handling CRN-like inputs, graph extraction, incidence conversion, and representation-level transformations.
🧪 Testing & Documentation
- Expanded unit test coverage
- Added or extended tests across the new CRN package, including:
- rule-based construction workflows
- reaction parsing
SynCRNstructure handling- stoichiometric and Petri-net analysis
- pathway and realizability utilities
- Added or extended tests across the new CRN package, including:
⚠️ Known Issues
-
Symmetry analysis is still evolving
- Some automorphism- and canonicalization-related workflows remain under active development and may not yet provide exact behavior in all cases.
-
Property analysis is primarily structural
- Several stoichiometric, thermodynamic, and dynamic utilities currently emphasize structural inference rather than full kinetic or physical modeling.
-
Pathway routines are bounded
- Reachability and realizability workflows rely on bounded exploration and may require additional pruning or heuristics for very large CRNs.
-
Improved documentation
- Not yet API documentation across the CRN package.
If you encounter issues or have feedback on the new CRN package, please report them via the issue tracker.
What's Changed
- Prepare releases 1.2 by @TieuLongPhan in #44
Full Changelog: v1.1.2...v1.2