Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
acir_format::ProgramMetadata Struct Reference

Metadata required to create a circuit. More...

#include <acir_format.hpp>

Public Attributes

std::shared_ptr< bb::IVCBaseivc = nullptr
 
bool has_ipa_claim
 
bool collect_gates_per_opcode = false
 

Detailed Description

Metadata required to create a circuit.

The metadata is required for three reasons:

  1. When we add constraints to kernels, we need an IVC instance. The metadata contains a pointer to such instance.
  2. When we add constraints to rollup circuits, we need to know whether the circuit should propagate an IPA claim or recursively verify it. The boolean has_ipa_claim specifies what the circuit should do with an IPA claim.
  3. If we wish to collect the number of gates added by each opcode, we set collect_gates_per_opcode to true.

Definition at line 137 of file acir_format.hpp.

Member Data Documentation

◆ collect_gates_per_opcode

bool acir_format::ProgramMetadata::collect_gates_per_opcode = false

Definition at line 145 of file acir_format.hpp.

◆ has_ipa_claim

bool acir_format::ProgramMetadata::has_ipa_claim
Initial value:
=
false

Definition at line 141 of file acir_format.hpp.

◆ ivc

std::shared_ptr<bb::IVCBase> acir_format::ProgramMetadata::ivc = nullptr

Definition at line 139 of file acir_format.hpp.


The documentation for this struct was generated from the following file: