Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
arithmetic_constraints.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
8#include "acir_format.hpp"
14#include <vector>
15
16namespace acir_format {
17
25template <typename Builder> void set_zero_idx(const Builder& builder, mul_quad_<typename Builder::FF>& mul_quad);
26
31template <typename Builder>
33 const mul_quad_<typename Builder::FF>& mul_quad,
34 const typename Builder::FF next_wire_w4 = Builder::FF::zero());
35
44template <typename Builder>
46
47// clang-format off
78// clang-format on
79template <typename Builder>
81
82} // namespace acir_format
AluTraceBuilder builder
Definition alu.test.cpp:124
void create_quad_constraint(Builder &builder, bb::mul_quad_< typename Builder::FF > &mul_quad)
Create a simple width-4 Ultra arithmetic gate constraint representing the equation.
void set_zero_idx(const Builder &builder, mul_quad_< typename Builder::FF > &mul_quad)
Replace indices which are set to IS_CONSTANT with the zero index of the builder.
void check_mul_add_gate(Builder &builder, const mul_quad_< typename Builder::FF > &mul_quad, const typename Builder::FF next_wire_w4)
Check if a mul add gate is valid.
void create_big_quad_constraint(Builder &builder, std::vector< mul_quad_< typename Builder::FF > > &big_constraint)