> For the complete documentation index, see [llms.txt](https://docs.moduluszk.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.moduluszk.io/glossary.md).

# Glossary

**Predicate**. A statement in first-order logic about a proposed state transition. On Modulus, the predicate is the contract.&#x20;

**Witness**. The inputs that make a predicate true for a given transition, such as signatures and amounts. A proof can establish that a witness exists without revealing it.&#x20;

**Proof**. A cryptographic object establishing, at the stated security level, that the named predicates are satisfied over the stated transition.&#x20;

**State transition**. A proposed change to chain state: state consumed, state produced, and the transaction presenting them. Admitted only with a proof.&#x20;

**Validator slot**. The position in a chain's design where transactions are checked for admission. On Modulus, zkFOL proofs occupy the validator slot; on execution chains, a virtual machine does.&#x20;

**Prover envelope**. The three quantities this project claims and measures: proving time, proving memory, and the hardware proving runs on.&#x20;

**Arithmetisation**. Translating the validity of a logical assertion into a checkable property of a polynomial.&#x20;

**Polynomial semantics**. The translation route of eprint 2024/954: logical connectives map directly to polynomial operations, with no abstract machine in the middle.&#x20;

**Soundness**. The property that an accepted proof implies the proved statement holds, at the stated security level.

**Safety failure and liveness failure**. A safety failure admits something wrong; a liveness failure refuses something right. Modulus converts a class of the former into the latter: a transition that cannot be proved does not occur.&#x20;

**Static in units**. The fee property Modulus claims: a given transaction costs the same over time in units of the native asset. Predictability in external value is a separate, open question.

### Naming&#x20;

Modulus is the chain. Modulus zkFOL is the full name, used on first reference only. zkFOL is the language and compiler; Modulus is the chain that consumes it.&#x20;

Correct: "zkFOL proofs in the validator slot", "a predicate on Modulus". Incorrect: "the zkFOL chain", "the zkFOL blockchain", "zkModulus".

<br>
