package tezos-protocol-016-PtMumbai

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Abstraction layer for the public inputs to the ZKRU aPlonk circuits.

As explained in the documentation, circuits in ZKRUs will be grouped into three categories: pending (public) operations, private batches and fee circuit. Each of these expects a different set of public inputs.

type pending_op_public_inputs = {
  1. old_state : Zk_rollup_state_repr.t;
  2. new_state : Zk_rollup_state_repr.t;
  3. fee : Zk_rollup_scalar.t;
  4. exit_validity : bool;
  5. zk_rollup : Zk_rollup_repr.t;
  6. l2_op : Zk_rollup_operation_repr.t;
}

Public inputs expected by circuits that handle single public L2 operations.

type private_batch_public_inputs = {
  1. old_state : Zk_rollup_state_repr.t;
  2. new_state : Zk_rollup_state_repr.t;
  3. fees : Zk_rollup_scalar.t;
  4. zk_rollup : Zk_rollup_repr.t;
}

Public inputs expected by circuits that handle a batch of private L2 operations.

type fee_public_inputs = {
  1. old_state : Zk_rollup_state_repr.t;
  2. new_state : Zk_rollup_state_repr.t;
  3. fees : Zk_rollup_scalar.t;
}

Public inputs expected by the circuit that handles the L2 fees.

type t =
  1. | Pending_op of pending_op_public_inputs
  2. | Private_batch of private_batch_public_inputs
  3. | Fee of fee_public_inputs
val to_scalar_array : t -> Zk_rollup_scalar.t array

Conversion to the type the aPlonk verifier expects.

OCaml

Innovation. Community. Security.