Native van Emde Boas membership descent #
The proof state records only the registers required by membership; all other registers and all memory outside the represented tree may be arbitrary. Queries need not belong to the tree universe. The maximum guard is checked before any cluster address is calculated.
Main definitions #
MemberEntry: the membership-loop register invariant.memberNext: a mathematical description of one native iteration, not a machine instruction.
Main results #
memberBody_exec: an actual iteration takes at most 26 instructions.memberLoop_spec: membership takes at most28 * (d + 1) + 2loop instructions, gives the functional answer and preserves all memory.
References #
The constant, traversal and result registers at entry to an unfinished lookup.
Instances For
A description of one native iteration. Each update corresponds to an instruction in
memberBody; the description itself is used only in proofs.
Instances For
Membership performs no writes, including on unsuccessful or out-of-universe queries.
One real membership iteration, including all branches and address computations. The sole address-fit assumption covers the represented record endpoint.
Constant registers are preserved by a membership iteration.
The membership loop is correct for every depth and arbitrary surrounding memory. Its bound charges each body, loop test and jump; setup, dispatch and halt are separate.