Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
acir_loader.hpp
Go to the documentation of this file.
1#pragma once
5#include <cstdint>
6#include <string>
7#include <vector>
8
Class for loading ACIR (Arithmetic Circuit Intermediate Representation) programs and converting them ...
acir_format::AcirFormat & get_constraint_systems()
Gets the constraint systems from the loaded ACIR program.
AcirToSmtLoader(const AcirToSmtLoader &other)=delete
acir_format::AcirFormat constraint_system
The parsed constraint system from the ACIR program.
AcirToSmtLoader && operator=(AcirToSmtLoader &&other)=delete
msgpack::sbuffer circuit_buf
Buffer for circuit serialization using MessagePack.
smt_solver::Solver get_smt_solver()
Gets an SMT solver instance.
smt_circuit::UltraCircuit get_field_smt_circuit(smt_solver::Solver *solver)
Creates an SMT circuit for field operations.
AcirToSmtLoader(AcirToSmtLoader &&other)=delete
std::string instruction_name
Name of the instruction/filename being processed.
~AcirToSmtLoader()=default
AcirToSmtLoader()=delete
AcirToSmtLoader & operator=(const AcirToSmtLoader other)=delete
smt_circuit::CircuitSchema get_circuit_schema()
Gets the circuit schema from the loaded ACIR program.
bb::UltraCircuitBuilder get_circuit_builder()
Creates a circuit builder for the loaded program.
std::vector< uint8_t > acir_program_buf
Buffer containing the raw ACIR program data read from file.
smt_circuit::UltraCircuit get_bitvec_smt_circuit(smt_solver::Solver *solver)
Creates an SMT circuit for bitvector operations.
smt_circuit::UltraCircuit get_integer_smt_circuit(smt_solver::Solver *solver)
Creates an SMT circuit for integer operations.
Symbolic Circuit class for Standard Circuit Builder.
Class for the solver.
Definition solver.hpp:80
Serialized state of a circuit.