AREST Developer Docs

Self-contained reference for building on arest. FORML 2 readings compile to a database schema, constraint rules, state machines, and a REST API with HATEOAS, all from one β-reducer over Backus's FFP algebra.

View the Project on GitHub graphdl/arest

arest Developer Docs

These pages form a self-contained reference for building on arest, and they do not require reading the whitepaper.

Read them in order if you are new. If you are looking up a particular topic, jump to the relevant chapter.

  1. Introduction: what AREST is, when you should reach for it, and when you should not.
  2. Writing Readings: entity types, fact types, verbs, and instance facts.
  3. Constraints: all 17 constraint kinds, the alethic-vs-deontic split, and violation messages.
  4. State Machines: statuses, transitions, events, and facts-as-events.
  5. Derivation Rules: forward chaining, join syntax, and the least fixed point.
  6. The Compile Pipeline: what happens between readings and runnable state.
  7. Generators: SQL, iLayer, XSD, Verilog, and Solidity, plus the opt-in mechanism.
  8. Federation: external systems, credentials, and populate functions.
  9. MCP Verbs: the v1.0 tool surface.
  10. Self-Modification: compile, propose, and the Domain Change workflow.
  11. Runtime Portability: per-primitive target map across Cloudflare / CLI / kernel / WASM / FPGA.
  12. Physical Mapping: one Durable Object per cell, the canonical form of Definition 2.
  13. The Resolution Registry: the operation-level DI/IoC seam — per-platform fast overrides resolved by canon interface name, certified equal behind one kill switch.
  14. The Entity Navigation Graph: child/peer/collection edges derived from uniqueness cardinality; the graph HATEOAS links project from.

For a quick start, see the top-level README. For the formal foundations, the whitepaper presents the five theorems and their proofs.