RAMPermutation
RAMPermutation PI
Input
pub struct RamPermutationInputData<F: SmallField> {
pub unsorted_queue_initial_state: QueueState<F, FULL_SPONGE_QUEUE_STATE_WIDTH>,
pub sorted_queue_initial_state: QueueState<F, FULL_SPONGE_QUEUE_STATE_WIDTH>,
pub non_deterministic_bootloader_memory_snapshot_length: UInt32<F>,
}Output
()FSM Input and FSM Output
pub struct RamPermutationFSMInputOutput<F: SmallField> {
pub lhs_accumulator: [Num<F>; DEFAULT_NUM_PERMUTATION_ARGUMENT_REPETITIONS],
pub rhs_accumulator: [Num<F>; DEFAULT_NUM_PERMUTATION_ARGUMENT_REPETITIONS],
pub current_unsorted_queue_state: QueueState<F, FULL_SPONGE_QUEUE_STATE_WIDTH>,
pub current_sorted_queue_state: QueueState<F, FULL_SPONGE_QUEUE_STATE_WIDTH>,
pub previous_sorting_key: [UInt32<F>; RAM_SORTING_KEY_LENGTH],
pub previous_full_key: [UInt32<F>; RAM_FULL_KEY_LENGTH],
pub previous_value: UInt256<F>,
pub previous_is_ptr: Boolean<F>,
pub num_nondeterministic_writes: UInt32<F>,
}Main circuit logic
First part
Main part
Final part
Last updated