barretenberg
Loading...
Searching...
No Matches
ultra.hpp
1#pragma once
2#include "barretenberg/plonk/composer/ultra_composer.hpp"
3#include "barretenberg/plonk/proof_system/commitment_scheme/kate_commitment_scheme.hpp"
4#include "barretenberg/plonk/proof_system/prover/prover.hpp"
5#include "barretenberg/plonk/proof_system/types/prover_settings.hpp"
6#include "barretenberg/stdlib/commitment/pedersen/pedersen.hpp"
7#include "barretenberg/stdlib/encryption/schnorr/schnorr.hpp"
8#include "barretenberg/stdlib/merkle_tree/hash_path.hpp"
9#include "barretenberg/stdlib/primitives/bigfield/bigfield.hpp"
10#include "barretenberg/stdlib/primitives/biggroup/biggroup.hpp"
11#include "barretenberg/stdlib/primitives/bit_array/bit_array.hpp"
12#include "barretenberg/stdlib/primitives/bool/bool.hpp"
13#include "barretenberg/stdlib/primitives/byte_array/byte_array.hpp"
14#include "barretenberg/stdlib/primitives/curves/bn254.hpp"
15#include "barretenberg/stdlib/primitives/curves/secp256k1.hpp"
16#include "barretenberg/stdlib/primitives/memory/rom_table.hpp"
17#include "barretenberg/stdlib/primitives/packed_byte_array/packed_byte_array.hpp"
18#include "barretenberg/stdlib/primitives/uint/uint.hpp"
19#include "barretenberg/stdlib/primitives/witness/witness.hpp"
20#include "barretenberg/stdlib/recursion/verifier/program_settings.hpp"
21
22namespace proof_system::plonk::stdlib::types {
23
24using namespace proof_system::plonk;
25
28
29// TODO(Cody): These might be wrong depending on desired F-S hash.
32
33using settings = plonk::ultra_settings;
34
35using kate_commitment_scheme = plonk::KateCommitmentScheme<settings>;
36using witness_ct = stdlib::witness_t<Builder>;
37using public_witness_ct = stdlib::public_witness_t<Builder>;
38using bool_ct = stdlib::bool_t<Builder>;
39using byte_array_ct = stdlib::byte_array<Builder>;
40using packed_byte_array_ct = stdlib::packed_byte_array<Builder>;
42using suint_ct = stdlib::safe_uint_t<Builder>;
43using uint8_ct = stdlib::uint8<Builder>;
44using uint16_ct = stdlib::uint16<Builder>;
45using uint32_ct = stdlib::uint32<Builder>;
46using uint64_ct = stdlib::uint64<Builder>;
47using bit_array_ct = stdlib::bit_array<Builder>;
50using pedersen_commitment = stdlib::pedersen_commitment<Builder>;
51using cycle_group_ct = stdlib::cycle_group<Builder>;
52using bn254 = stdlib::bn254<Builder>;
53using secp256k1_ct = stdlib::secp256k1<Builder>;
54
55namespace merkle_tree {
56using namespace stdlib::merkle_tree;
57using hash_path = stdlib::merkle_tree::hash_path<Builder>;
58} // namespace merkle_tree
59
60namespace schnorr {
61using signature_bits = stdlib::schnorr::signature_bits<Builder>;
62} // namespace schnorr
63
64// Ultra-composer specific types
66
67using recursive_inner_verifier_settings = recursion::recursive_ultra_verifier_settings<bn254>;
68
69} // namespace proof_system::plonk::stdlib::types
Definition: standard_circuit_builder.hpp:12
Definition: ultra_circuit_builder.hpp:31
Definition: kate_commitment_scheme.hpp:6
Definition: prover.hpp:12
Definition: standard_composer.hpp:14
Definition: ultra_composer.hpp:16
Definition: verifier.hpp:9
Definition: bigfield.hpp:17
Definition: bit_array.hpp:9
Definition: byte_array.hpp:9
cycle_group represents a group Element of the proving system's embedded curve i.e....
Definition: cycle_group.hpp:27
Definition: biggroup.hpp:22
Definition: field.hpp:10
Definition: packed_byte_array.hpp:10
Definition: rom_table.hpp:10
Definition: safe_uint.hpp:17
Definition: witness.hpp:10
Definition: prover_settings.hpp:27
Definition: widget.bench.cpp:13
Definition: bn254.hpp:10
Definition: secp256k1.hpp:12