Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
mega_zk_recursive_flavor.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/commitment_key.hpp
"
9
#include "
barretenberg/commitment_schemes/kzg/kzg.hpp
"
10
#include "
barretenberg/ecc/curves/bn254/g1.hpp
"
11
#include "
barretenberg/flavor/flavor.hpp
"
12
#include "
barretenberg/flavor/flavor_macros.hpp
"
13
#include "
barretenberg/flavor/mega_recursive_flavor.hpp
"
14
#include "
barretenberg/flavor/mega_zk_flavor.hpp
"
15
#include "
barretenberg/polynomials/barycentric.hpp
"
16
#include "
barretenberg/polynomials/evaluation_domain.hpp
"
17
#include "
barretenberg/polynomials/univariate.hpp
"
18
#include "
barretenberg/stdlib/primitives/curves/bn254.hpp
"
19
#include "
barretenberg/stdlib/primitives/field/field.hpp
"
20
#include "
barretenberg/stdlib/transcript/transcript.hpp
"
21
#include "
barretenberg/stdlib_circuit_builders/mega_circuit_builder.hpp
"
22
23
namespace
bb
{
24
39
template
<
typename
BuilderType>
class
MegaZKRecursiveFlavor_
:
public
MegaRecursiveFlavor_
<BuilderType> {
40
public
:
41
using
NativeFlavor
=
MegaZKFlavor
;
42
43
static
constexpr
bool
HasZK
=
true
;
44
45
// BATCHED_RELATION_PARTIAL_LENGTH = algebraic degree of sumcheck relation *after* multiplying by the `pow_zeta`
46
// random polynomial e.g. For \sum(x) [A(x) * B(x) + C(x)] * PowZeta(X), relation length = 2 and random relation
47
// length = 3
48
static
constexpr
size_t
BATCHED_RELATION_PARTIAL_LENGTH
=
NativeFlavor::BATCHED_RELATION_PARTIAL_LENGTH
;
49
};
50
51
}
// namespace bb
barycentric.hpp
bb::MegaRecursiveFlavor_
The recursive counterpart to the "native" Mega flavor.
Definition
mega_recursive_flavor.hpp:39
bb::MegaZKFlavor
Child class of MegaFlavor that runs with ZK Sumcheck. See more in Sumcheck Outline.
Definition
mega_zk_flavor.hpp:17
bb::MegaZKFlavor::BATCHED_RELATION_PARTIAL_LENGTH
static constexpr size_t BATCHED_RELATION_PARTIAL_LENGTH
Definition
mega_zk_flavor.hpp:22
bb::MegaZKRecursiveFlavor_
The recursive counterpart to the "native" MegaZKFlavor.
Definition
mega_zk_recursive_flavor.hpp:39
bb::MegaZKRecursiveFlavor_::HasZK
static constexpr bool HasZK
Definition
mega_zk_recursive_flavor.hpp:43
bb::MegaZKRecursiveFlavor_::BATCHED_RELATION_PARTIAL_LENGTH
static constexpr size_t BATCHED_RELATION_PARTIAL_LENGTH
Definition
mega_zk_recursive_flavor.hpp:48
commitment_key.hpp
evaluation_domain.hpp
flavor.hpp
Base class templates for structures that contain data parameterized by the fundamental polynomials of...
flavor_macros.hpp
g1.hpp
kzg.hpp
mega_circuit_builder.hpp
mega_recursive_flavor.hpp
mega_zk_flavor.hpp
bb
Entry point for Barretenberg command-line interface.
Definition
acir_format_getters.cpp:6
bn254.hpp
field.hpp
transcript.hpp
univariate.hpp
src
barretenberg
flavor
mega_zk_recursive_flavor.hpp
Generated by
1.9.8