Skip to content

Packages

The GDS ecosystem is a set of packages for defining, verifying, visualizing, simulating, and analyzing complex systems. The packages share a modeling vocabulary, but they are intentionally split by role so you can install only the pieces you need.

Package Layers

graph TD
    classDef core fill:#e0e7ff,stroke:#4f46e5,stroke-width:2px,color:#1e1b4b
    classDef dsl fill:#fef3c7,stroke:#d97706,stroke-width:2px,color:#78350f
    classDef runtime fill:#d1fae5,stroke:#059669,stroke-width:2px,color:#064e3b
    classDef tool fill:#f3e8ff,stroke:#7c3aed,stroke-width:2px,color:#4c1d95

    DSL["Domain DSLs<br/><small>stockflow, control, games, software, business</small>"]:::dsl
    FW["gds-framework<br/><small>typed specs + verification</small>"]:::core
    VIZ["gds-viz<br/><small>diagrams</small>"]:::tool
    OWL["gds-interchange<br/><small>OWL / SHACL / SPARQL</small>"]:::tool
    ANALYSIS["gds-analysis<br/><small>spec-to-runtime bridge</small>"]:::runtime
    SIM["gds-sim<br/><small>discrete-time runtime</small>"]:::runtime
    CONT["gds-continuous<br/><small>ODE runtime</small>"]:::runtime
    PSUU["gds_analysis.psuu<br/><small>sweeps + optimization</small>"]:::runtime

    DSL --> FW
    FW --> VIZ
    FW --> OWL
    FW --> ANALYSIS
    ANALYSIS --> SIM
    ANALYSIS --> CONT
    SIM --> PSUU

What Do You Want To Do?

Goal Start Here Package
Define a typed system specification gds-framework gds-framework
Use a domain vocabulary Choosing a DSL gds-domains.*
Render diagrams Visualization gds-viz
Export OWL, SHACL, or SPARQL OWL gds-interchange
Run discrete-time simulations Simulation gds-sim
Run ODE simulations Continuous-Time gds-continuous
Bridge GDSSpec to simulation Analysis gds-analysis
Sweep and optimize parameters PSUU gds_analysis.psuu

Foundation

Distribution Import Role
gds-framework gds Core specification, composition, compilation, and structural verification
gds-viz gds_viz Mermaid diagrams and visual projections of GDS specifications
gds-interchange gds_interchange.owl OWL, SHACL, SPARQL, and semantic-web interchange
gds-proof gds_proof Deterministic model identity and symbolic invariant proof checks

Domain DSLs

Domain packages provide compact vocabulary for common modeling families. They compile into GDS specifications so they can reuse the same verification and visualization stack.

Distribution Import Role
gds-domains gds_domains.stockflow Stocks, flows, auxiliaries, and system dynamics models
gds-domains gds_domains.control State-space control systems, sensors, controllers, and plants
gds-domains gds_domains.games Compositional game theory and open-game patterns
gds-domains gds_domains.software DFD, state machine, C4, ERD, component, and dependency diagrams
gds-domains gds_domains.business CLD, supply chain, and value stream modeling
gds-domains gds_domains.symbolic SymPy bridge for control models and symbolic equations

Simulation And Analysis

These packages move from structural specifications to executable trajectories, metrics, parameter search, and sensitivity analysis.

Distribution Import Role
gds-sim gds_sim Standalone discrete-time simulation runtime
gds-continuous gds_continuous Continuous-time ODE simulation runtime
gds-analysis gds_analysis Bridge from GDSSpec structures to simulation workflows and reachability analysis
gds-analysis gds_analysis.psuu Parameter sweeps, KPI scoring, optimization, and sensitivity analysis
gds-psuu gds_psuu Deprecated compatibility import path for gds_analysis.psuu

PSUU package naming

New code should install gds-analysis and import from gds_analysis.psuu. The gds-psuu distribution remains only as a compatibility layer for older code that imports gds_psuu.

Examples

Package Role
gds-examples Tutorial models and notebooks that demonstrate the packages together

Next Steps