compute_exe_commit_from_mem_config

Function compute_exe_commit_from_mem_config 

Source
pub fn compute_exe_commit_from_mem_config<F: PrimeField32>(
    program_commitment: &[F; 8],
    exe: &VmExe<F>,
    memory_config: &MemoryConfig,
) -> [F; 8]
Expand description

Computes a commitment to a VM executable. This is a Merklelized hash of:

  • Program code commitment (commitment of the cached trace)
  • Merkle root of the initial memory
  • Starting program counter (pc_start)

The program code commitment is itself a commitment (via the proof system PCS) to the program code.

The Merklelization uses Poseidon2 as a cryptographic hash function (for the leaves) and a cryptographic compression function (for internal nodes).

Note: This function recomputes the Merkle tree for the initial memory image.