Native memory-query realizations #
The native query arguments are already in the caller's live register environment. Loads and stores reuse the basis-generic execution rules. Allocation uses exact arithmetic and the existing generic zero-fill subroutine; it changes the full memory abstraction exactly as the memory oracle specifies. Argument computation, binds and the final halt are charged by the surrounding realization rules rather than hidden in these primitives.
Main definitions #
Realizes.readWitness,Realizes.writeWitness: supplied one-instruction witnesses.Realizes.allocDirtyWitness,Realizes.allocWitness: supplied allocation witnesses.
Main results #
Realizes.read,Realizes.write: one-instruction memory operations with live-register frames.Realizes.allocDirty: exact two-instruction bump allocation, including zero-width empty blocks.Realizes.alloc: zeroed allocation via the existing basis-generic zero-fill code.
A read returns a word without changing the frontier or any memory cell. Its address is a live word; memory admissibility additionally states that the address is allocated.
Instances For
The existential realization supplied by readWitness.
A store returns unit, updates precisely the selected memory cell and preserves all registers. The value and allocated-address hypotheses remain in the existing memory valid-history premise.
Instances For
The existential realization supplied by writeWitness.
Dirty allocation returns the old frontier and adds the count exactly, without touching memory.
No constant 1 is materialized, so a zero-width empty allocation is included.
Instances For
The existential realization supplied by allocDirtyWitness.
Zeroed allocation realizes the full oracle memory update on arbitrary old scratch contents.
The reused clear code materializes 1 only in the positive-size branch.
Instances For
The existential realization supplied by allocWitness.
Frontier-bounded realization of Memory.read.
Frontier-bounded realization of Memory.write.
Frontier-bounded realization of Memory.allocDirty.
Frontier-bounded realization of Memory.alloc.