miden-core-lib 0.25.8

Miden VM core library
Documentation
1
2
3
4
5
6
7

## miden::core::sys::vm::public_inputs
| Procedure | Description |
| ----------- | ------------- |
| process_public_inputs | Processes the public inputs (step I of the verifier).<br /><br />See module banner for the memory layout, the canonical FS schedule and the advice tape<br />order.<br /><br />Precondition:  random coin input_len=0 (guaranteed by `init_seed`, which absorbs the<br />protocol parameters as one full rate block).<br />Postcondition: random coin input_len=0, output_len=8.<br /><br />Input:  [...]<br />Output: [...]<br /> |
| stage_reduced_inputs | Stages the reduced-inputs block at the fixed standalone `REDUCED_INPUTS_PTR` before the<br />transcript starts (called by `verify_proof`).<br /><br />Writes, in order:<br />reduced_inputs+0  : kernel_H = hash_elements(kernel_ptr, 4·N), the kernel commitment over the<br />caller-owned digest region.<br />reduced_inputs+4  : program_digest, taken from the operand word.<br />reduced_inputs+8  : transcript_state (DEFERRED), loaded from advice.<br /><br />Also persists the caller pointers `kernel_ptr` and `stack_io_ptr` and the digest count `N` into<br />their fixed cells so the step-I FLPI load and the step-II boundary fold can re-read the same<br />caller-owned regions. The trailing pad word is zeroed when the window is absorbed in step I.<br /><br />Input:  [kernel_ptr, N, stack_io_ptr, PROG0, PROG1, PROG2, PROG3, ...]<br />Output: [...]<br /> |
| compute_outer_logup_correction | Computes the outer-LogUp boundary correction `c_total` and stores it at `C_TOTAL_PTR`<br />(step II). Requires the aux randomness to have been sampled into `AUX_RAND_ELEM_PTR` by<br />`generate_aux_randomness` first.<br /><br />Derives `γ = β^16`, then folds the request/response terms over the caller-owned kernel digests<br />at `KERNEL_DIGESTS_ADDRESS_PTR` (count at `NUM_KERNEL_DIGESTS_PTR`) and the program digest /<br />transcript state in the reduced-inputs block, all staged in `verify_proof`. Mirrors the module<br />banner's `c_total` definition and `MidenMultiAir::eval_external`.<br /><br />Input:  [...]<br />Output: [...]<br /> |