Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
client_ivc_base.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
12
13namespace bb {
14
21class IVCBase {
22 public:
25
26 virtual ~IVCBase() = default;
27
28 virtual Goblin& get_goblin() = 0;
29 virtual const Goblin& get_goblin() const = 0;
30
31 virtual void accumulate(ClientCircuit& circuit, const std::shared_ptr<MegaVerificationKey>& precomputed_vk) = 0;
32
33 protected:
34 IVCBase() = default;
35};
36
37} // namespace bb
Base class interface for IVC schemes.
virtual const Goblin & get_goblin() const =0
IVCBase()=default
virtual void accumulate(ClientCircuit &circuit, const std::shared_ptr< MegaVerificationKey > &precomputed_vk)=0
virtual ~IVCBase()=default
virtual Goblin & get_goblin()=0
The verification key is responsible for storing the commitments to the precomputed (non-witness) poly...
Entry point for Barretenberg command-line interface.
MegaCircuitBuilder_< field< Bn254FrParams > > MegaCircuitBuilder
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Definition tuple.hpp:13