Architecture
TruthTable is organized as a Rust workspace of focused crates. At a high level, a query flows through the following stages:
- Front-end — a SQL query is parsed and lowered into an intermediate
representation of relational operators (
tt-front-end,tt-core). - Planning — the logical plan is transformed into a proof plan that decides
how each operator will be proven (
tt-proof-planner). - Arithmetization — relational operators (joins, aggregates, sorts, …) are
encoded into constraints over columns (
tt-arithmetic,tt-core). - Commitment & proving — the prover commits to the witness columns and produces a succinct proof.
- Verification — the verifier checks the proof against the dataset commitment and the claimed result.
