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

Serialized state of a circuit. More...

#include <circuit_schema.hpp>

Public Member Functions

 MSGPACK_FIELDS (modulus, public_inps, vars_of_interest, variables, selectors, wires, real_variable_index, lookup_tables, real_variable_tags, range_tags, rom_records, rom_states, ram_records, ram_states, circuit_finalized)
 

Public Attributes

std::string modulus
 
std::vector< uint32_t > public_inps
 
std::unordered_map< uint32_t, std::string > vars_of_interest
 
std::vector< bb::frvariables
 
std::vector< std::vector< std::vector< bb::fr > > > selectors
 
std::vector< std::vector< std::vector< uint32_t > > > wires
 
std::vector< uint32_t > real_variable_index
 
std::vector< std::vector< std::vector< bb::fr > > > lookup_tables
 
std::vector< uint32_t > real_variable_tags
 
std::unordered_map< uint32_t, uint64_t > range_tags
 
std::vector< std::vector< std::vector< uint32_t > > > rom_records
 
std::vector< std::vector< std::array< uint32_t, 2 > > > rom_states
 
std::vector< std::vector< std::vector< uint32_t > > > ram_records
 
std::vector< std::vector< uint32_t > > ram_states
 
bool circuit_finalized
 

Detailed Description

Serialized state of a circuit.

Used to transfer the state of the circuit to Symbolic Circuit class. Symbolic circuit is then used to produce SMT statements that describe needed properties of the circuit.

Parameters
modulusModulus of the field we are working with
public_inpsPublic inputs to the current circuit
vars_of_interestMap wires indices to their given names
variablesList of wires values in the current circuit
selectorsList of selectors in the current circuit
wiresList of wires indices for each selector
real_variable_indexEncoded copy constraints

Definition at line 24 of file circuit_schema.hpp.

Member Function Documentation

◆ MSGPACK_FIELDS()

smt_circuit_schema::CircuitSchema::MSGPACK_FIELDS ( modulus  ,
public_inps  ,
vars_of_interest  ,
variables  ,
selectors  ,
wires  ,
real_variable_index  ,
lookup_tables  ,
real_variable_tags  ,
range_tags  ,
rom_records  ,
rom_states  ,
ram_records  ,
ram_states  ,
circuit_finalized   
)

Member Data Documentation

◆ circuit_finalized

bool smt_circuit_schema::CircuitSchema::circuit_finalized

Definition at line 39 of file circuit_schema.hpp.

◆ lookup_tables

std::vector<std::vector<std::vector<bb::fr> > > smt_circuit_schema::CircuitSchema::lookup_tables

Definition at line 32 of file circuit_schema.hpp.

◆ modulus

std::string smt_circuit_schema::CircuitSchema::modulus

Definition at line 25 of file circuit_schema.hpp.

◆ public_inps

std::vector<uint32_t> smt_circuit_schema::CircuitSchema::public_inps

Definition at line 26 of file circuit_schema.hpp.

◆ ram_records

std::vector<std::vector<std::vector<uint32_t> > > smt_circuit_schema::CircuitSchema::ram_records

Definition at line 37 of file circuit_schema.hpp.

◆ ram_states

std::vector<std::vector<uint32_t> > smt_circuit_schema::CircuitSchema::ram_states

Definition at line 38 of file circuit_schema.hpp.

◆ range_tags

std::unordered_map<uint32_t, uint64_t> smt_circuit_schema::CircuitSchema::range_tags

Definition at line 34 of file circuit_schema.hpp.

◆ real_variable_index

std::vector<uint32_t> smt_circuit_schema::CircuitSchema::real_variable_index

Definition at line 31 of file circuit_schema.hpp.

◆ real_variable_tags

std::vector<uint32_t> smt_circuit_schema::CircuitSchema::real_variable_tags

Definition at line 33 of file circuit_schema.hpp.

◆ rom_records

std::vector<std::vector<std::vector<uint32_t> > > smt_circuit_schema::CircuitSchema::rom_records

Definition at line 35 of file circuit_schema.hpp.

◆ rom_states

std::vector<std::vector<std::array<uint32_t, 2> > > smt_circuit_schema::CircuitSchema::rom_states

Definition at line 36 of file circuit_schema.hpp.

◆ selectors

std::vector<std::vector<std::vector<bb::fr> > > smt_circuit_schema::CircuitSchema::selectors

Definition at line 29 of file circuit_schema.hpp.

◆ variables

std::vector<bb::fr> smt_circuit_schema::CircuitSchema::variables

Definition at line 28 of file circuit_schema.hpp.

◆ vars_of_interest

std::unordered_map<uint32_t, std::string> smt_circuit_schema::CircuitSchema::vars_of_interest

Definition at line 27 of file circuit_schema.hpp.

◆ wires

std::vector<std::vector<std::vector<uint32_t> > > smt_circuit_schema::CircuitSchema::wires

Definition at line 30 of file circuit_schema.hpp.


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