Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
honk_recursion_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
8
#include "
barretenberg/commitment_schemes/claim.hpp
"
9
#include "
barretenberg/dsl/acir_format/recursion_constraint.hpp
"
10
#include "
barretenberg/honk/proof_system/types/proof.hpp
"
11
#include "
barretenberg/stdlib/honk_verifier/ultra_recursive_verifier.hpp
"
12
#include "
barretenberg/stdlib/primitives/bigfield/bigfield.hpp
"
13
#include "
barretenberg/stdlib/primitives/curves/grumpkin.hpp
"
14
#include "
barretenberg/stdlib/primitives/pairing_points.hpp
"
15
#include <vector>
16
17
namespace
acir_format
{
18
19
using namespace
bb
;
20
21
template
<
typename
Builder>
22
using
HonkRecursionConstraintOutput
=
bb::stdlib::recursion::honk::UltraRecursiveVerifierOutput<Builder>
;
23
24
template
<
typename
Flavor>
25
[[nodiscard(
"IPA claim and Pairing points should be accumulated"
)]]
HonkRecursionConstraintOutput
<
26
typename
Flavor::CircuitBuilder
>
27
create_honk_recursion_constraints
(
typename
Flavor::CircuitBuilder
&
builder
,
28
const
RecursionConstraint& input,
29
bool
has_valid_witness_assignments =
false
)
30
requires
(IsRecursiveFlavor<Flavor> && IsUltraHonk<typename Flavor::NativeFlavor>);
31
32
}
// namespace acir_format
bigfield.hpp
claim.hpp
bb::ECCVMCircuitBuilder
Definition
eccvm_circuit_builder.hpp:24
builder
AluTraceBuilder builder
Definition
alu.test.cpp:123
proof.hpp
acir_format
Definition
acir_format.cpp:34
acir_format::HonkRecursionConstraintOutput
bb::stdlib::recursion::honk::UltraRecursiveVerifierOutput< Builder > HonkRecursionConstraintOutput
Definition
civc_recursion_constraints.cpp:20
acir_format::create_honk_recursion_constraints
HonkRecursionConstraintOutput< typename Flavor::CircuitBuilder > create_honk_recursion_constraints(typename Flavor::CircuitBuilder &builder, const RecursionConstraint &input, bool has_valid_witness_assignments)
Add constraints required to recursively verify an UltraHonk proof.
Definition
honk_recursion_constraint.cpp:104
bb
Entry point for Barretenberg command-line interface.
Definition
acir_format_getters.cpp:6
recursion_constraint.hpp
grumpkin.hpp
pairing_points.hpp
bb::stdlib::recursion::honk::UltraRecursiveVerifierOutput
Definition
ultra_recursive_verifier.hpp:23
ultra_recursive_verifier.hpp
src
barretenberg
dsl
acir_format
honk_recursion_constraint.hpp
Generated by
1.9.8