Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
logic_constraint.hpp
Go to the documentation of this file.
1// === AUDIT STATUS ===
2// internal: { status: not started, auditors: [], date: YYYY-MM-DD }
3// external_1: { status: not started, auditors: [], date: YYYY-MM-DD }
4// external_2: { status: not started, auditors: [], date: YYYY-MM-DD }
5// =====================
6
7#pragma once
11#include <cstdint>
12
13namespace acir_format {
14
15using namespace bb;
16
30 uint32_t result;
31 uint32_t num_bits;
33
34 friend bool operator==(LogicConstraint const& lhs, LogicConstraint const& rhs) = default;
35
36 // for serialization, update with any new fields
38};
39
40template <typename Builder>
44 uint32_t result,
45 std::size_t num_bits,
46 bool is_xor_gate);
47
49
51} // namespace acir_format
AluTraceBuilder builder
Definition alu.test.cpp:124
FF a
FF b
void xor_gate(UltraCircuitBuilder &builder, WitnessOrConstant< fr > a, WitnessOrConstant< fr > b, uint32_t result)
void and_gate(UltraCircuitBuilder &builder, WitnessOrConstant< fr > a, WitnessOrConstant< fr > b, uint32_t result)
void create_logic_gate(Builder &builder, const WitnessOrConstant< bb::fr > a, const WitnessOrConstant< bb::fr > b, const uint32_t result, const size_t num_bits, const bool is_xor_gate)
Entry point for Barretenberg command-line interface.
Definition api.hpp:5
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Definition tuple.hpp:13
Logic constraint representation in ACIR format.
friend bool operator==(LogicConstraint const &lhs, LogicConstraint const &rhs)=default
WitnessOrConstant< fr > a
MSGPACK_FIELDS(a, b, result, num_bits, is_xor_gate)
WitnessOrConstant< fr > b