Formally verified
AI-generated
software

Your idea. Clear requirements.
Your code. Verified properties.

Join beta test

What’s OrdoCode?

Software creation with
requirements and
verification built in

OrdoCode turns your product idea into an approved specification, generated code, and evidence that the agreed properties were checked.

You review what will be built before generation starts. Afterward, you receive the code, tests, proof artifacts, and documentation.

See how it works ↓

How it works

One clear path from idea to verified code

You approve what will be built. OrdoCode and Cambrian handle implementation and verification.

  1. 01 Describe

    Describe your product

    Start with the outcome. OrdoCode asks only for the missing details.

    Example “Create a multisig wallet for N participants, where each transaction requires approval from at least two-thirds of them.”
    Clarify
    owners
    Specify
    threshold
    Confirm
    release rule
  2. 02 Approve

    Confirm what will be built

    Review the behavior and properties before generation starts.

    Expected behavior 2 of 3 owners approve a transfer. Property to verify Only approved owners release funds.
    ✓ Approval checkpoint
  3. 03 Craft

    Build and verify

    Powered by Cambrian™

    OrdoCode uses Cambrian language to generate implementation and verify the agreed properties against the approved specification.

    Generate
    Source code
    Run
    Tests
    Verify
    Proofs for agreed properties
  4. 04 Deploy

    Get code and evidence

    Everything you need to review, run, verify the result, and deploy.

    Code
    Source package
    Tests
    Test suites + results
    Proofs
    Lean package
    Docs
    Product description, specification, API
    ✓ Ready

Formal verification

Inspect the exact specification, code, and proof

Open one evidence extract at a time. Each extract stays exact and scrollable.

Technical evidence

PROP-EE-003 · Transaction requires 3 confirmations

MultisigWallet · threshold 3 · confirmations 2 · transaction remains unexecuted

Machine-checkable
01SpecificationView extract
// Universal PROP-EE-003: execute blocked whenever confirmations < threshold.
property "execute blocked while confirmations < threshold"
    (threshold: u64, confirmed: u64, txId: U256) for MultisigWallet {
    assume threshold >= 1
    assume confirmed < threshold
    assume txId > 0

    // Any state with:
    //   m_threshold == threshold
    //   confirmation_count(txId) == confirmed
    //   pending (!executed) transaction txId
    call execute(txId)

    expect revert 203
}
02CodeView extract
m_transactions: HashMap<U256, Transaction> {
    in submit(to, value, data) => {
        let id = m_txCount + 1;
        let tx = Transaction { to: to, value: value, data: data, executed: false };
        m_transactions.insert(id, tx)
    }
    in execute(txId) => {
        let tx = m_transactions[txId];
        let done = tx { executed: true };
        m_transactions.update(txId, done)   // only if execute's where passed
    }
}

m_confirmations: HashMap<U256, bool> {
    in submit(_, _, _) => {
        let id = m_txCount + 1;
        m_confirmations.insert(confirmation_key(id, msg::sender), true)
    }
    in confirm(txId) => {
        m_confirmations.insert(confirmation_key(txId, msg::sender), true)
    }
    in revoke(txId) => {
        m_confirmations.remove(confirmation_key(txId, msg::sender))
    }
}
03ProofView extract
private theorem _probe_exec_fails :
    (MultisigWallet.Routes.execute _w {} Cambrian.MsgCtx.default 1).isOk = false := by
  native_decide

theorem prop_ee_003_below_threshold_execute_blocked :
  ∀ (trace : List Action),
  -- seeded: m_threshold = 3, exactly two confirmation keys, pending tx 1
  traceValid w inst ctx trace = true →
  (match runTrace w inst ctx trace with
   | .error _ => True
   | .ok w =>
     (!((Cambrian.AddressMap.lookup
          (Cambrian.Generated.World.multisigWallet w inst).m_transactions 1 |>.get!)).executed)) := by
  exact _ee003_core

What you get

The reviewable package includes code, tests and verification artifacts

Build

  1. Specifications at multiple levels
  2. Source code
  3. Test suites
  4. Test run results

Verify

  1. Proof artifacts

Deliver

  1. Demo environment
  2. Network + addresses

Demo

See OrdoCode at work

See the route from specification to code and proof.

01:24 · OrdoCode

Ordo community

For upcoming beta tests

Join the candidate pool. We’ll invite selected participants to upcoming tests that match their interests and experience.