catopt-graph-graph-calculus.../docs/dsl_sketch.md

1.4 KiB

DSL Sketch: CatOpt-Graph MVP

This document provides a minimal DSL sketch to seed adapter implementers with canonical data contracts for LocalProblem, SharedVariables, PlanDelta, and DualVariables. The goal is to accelerate onboarding and ensure consistent semantics across adapters.

  • Canonical primitives
    • Objects: LocalProblem (assets, constraints, and objectives)
    • Morphisms: SharedVariables (versioned signals exchanged between agents)
    • DualVariables: Lagrange multipliers coordinating cross-adapter objectives
    • PlanDelta: incremental plan changes with timestamp and signature
    • PrivacyBudget, AuditLog: governance scaffolds
  • Time modelling
    • TimeMonoid: rounds with delta-sync semantics to support islanding and reconnection
  • Registry
    • Graph-of-Contracts (GoC): per-adapter contract versions with semantics and conformance rules

Seed DSL snippet (Python-like pseudo-DSL for onboarding):

LocalProblem { asset_id: str domain: str objective: dict variables: dict }

SharedVariables { iter_id: int values: dict }

PlanDelta { iter_id: int delta: dict }

DualVariables { iter_id: int values: dict }

PrivacyBudget { budget_id: str, limits: dict } AuditLog { entry_id: str, payload: dict }

This sketch is intentionally compact; implementers should map their domain data structures into this canonical form via EnergiBridge-like adapters.