Math does the trust. Paste any paragraph, mint the facts, download a self-verifying JSON — anyone can recompute the state integer on their own machine with no SUM software installed.
0
1.00
Facts 0
Gödel state integer
—
what is this
Each fact (subject, predicate, object) is deterministically mapped to a unique prime via SHA-256(axiom_key) → seed → nextprime(seed). The state integer is the LCM of every prime. Two SUM states merge losslessly by taking their LCM. Entailment: state % prime == 0 answers "does this knowledge base contain fact X?"
unsigned in-browser mint — bundle carries signature: "unsigned:v0".
Structural integrity (state integer ↔ tome) is still verifiable by anyone.
For HMAC or Ed25519 signatures, run sum attest --signing-key …
(see DID_SETUP.md).
Render tome with sliders
Five axes shape the tome from the same facts. Density (above) is deterministic — selects which facts to include.
The four below condition an LLM render via /api/render. Fact preservation across non-density axes
is empirically verified at median 1.000; p10 0.769 long-corpus (n=16), 0.818 short-corpus (n=8) — see
SLIDER_CONTRACT.md.
⚙ Settings — bring your own API keys
operator-funded
Default: operator-funded (the demo's keys). To use your own quota, paste a
scoped/restricted API key below — stored in this browser's localStorage only,
sent to /api/render as a request header per render, never persisted server-side.
The signed receipt's provider still reflects which API actually served the call.
Security: localStorage is per-origin and survives reloads. Use a scoped key with a low spend cap
and rotate it after this session if anyone else uses this browser. XSS would expose the key — the demo's
CSP is tight (script-src 'unsafe-inline', connect-src 'self'), but no browser-stored
secret is invulnerable. Receipt-verifier path does not use these keys.
0.50
0.50
0.50
0.50
Provenance verified: the receipt proves the issuer signed this render tuple
(§5 trust scope).
Preservation benchmarked: median 1.000; p10 0.769 long / 0.818 short.
Not recomputed for this render — see
SLIDER_CONTRACT.md.
Signed does not mean true: the receipt is not a truth oracle.
Verify a bundle
Paste a SUM bundle JSON. This in-browser verifier runs two checks: structural — recomputes the state integer from the canonical tome and confirms it matches the claim; Ed25519 — if the bundle carries a public_signature and public_key, the signature is verified natively via SubtleCrypto (Chrome 113+, Firefox 129+, Safari 17+). No server, no network, no keys to supply. HMAC (shared-secret) signatures still require sum verify --signing-key ….
This file is both a standalone HTML page AND a Claude artifact. Paste it into a Claude artifact conversation and extraction upgrades automatically to Claude-grade recall (SVO, lowercased, underscore-joined subjects, negation suppressed, passive inverted — the same rules SUM's Python sieve enforces). Outside an artifact it uses a naive tokeniser; the attestation layer is identical either way. Source + cross-runtime harnesses: github.com/OtotaO/SUM.