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

36 lines
1.2 KiB
Markdown

# DSL Sketch: Core CatOpt-Graph Primitives
This document provides a minimal sketch for the DSL that describes LocalProblems,
SharedVariables, PlanDelta, and related contracts used by adapters and the ADMM-lite
core.
LocalProblem
- asset_id: identifier of the local optimization problem on the device
- payload: dictionary containing domain-specific problem data (e.g., objective terms, constraints)
SharedVariables
- iter_id: iteration counter for synchronization rounds
- values: map of signals that are shared across the mesh (e.g., dual variables, summaries)
DualVariables
- iter_id: iteration counter
- values: dual variables per shared signal
PlanDelta
- iter_id: iteration counter
- delta: aggregated changes to be applied to local plans
PrivacyBudget
- budget_id: identifier for privacy budget instance
- limits: per-signal DP budgets or leakage limits
AuditLog
- entry_id: unique log entry identifier
- payload: audit metadata for reconciliation steps
Notes
- All messages should include per-message metadata (version, timestamp, nonce, crypto-tag).
- Identity should be established via DIDs or short-lived certificates; transport should be TLS-secured.
This sketch intentionally stays minimal to accelerate MVP integration.