Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
ec_operations.hpp
Go to the documentation of this file.
1
// === AUDIT STATUS ===
2
// internal: { status: Complete, auditors: [Luke], commit: a48c205d6dcd4338f5b83b4fda18bff6015be07b}
3
// external_1: { status: not started, auditors: [], commit: }
4
// external_2: { status: not started, auditors: [], commit: }
5
// =====================
6
7
#pragma once
8
#include "
barretenberg/dsl/acir_format/witness_constant.hpp
"
9
#include <cstdint>
10
11
namespace
acir_format
{
12
31
struct
EcAdd
{
32
WitnessOrConstant<bb::fr>
input1_x
;
33
WitnessOrConstant<bb::fr>
input1_y
;
34
WitnessOrConstant<bb::fr>
input1_infinite
;
35
WitnessOrConstant<bb::fr>
input2_x
;
36
WitnessOrConstant<bb::fr>
input2_y
;
37
WitnessOrConstant<bb::fr>
input2_infinite
;
38
// Predicate indicating whether the constraint should be disabled:
39
// - true: the constraint is valid
40
// - false: the constraint is disabled, i.e it must not fail and can return whatever.
41
WitnessOrConstant<bb::fr>
predicate
;
42
uint32_t
result_x
;
43
uint32_t
result_y
;
44
uint32_t
result_infinite
;
45
46
friend
bool
operator==
(
EcAdd
const
& lhs,
EcAdd
const
& rhs) =
default
;
47
};
48
49
template
<
typename
Builder>
void
create_ec_add_constraint
(
Builder
&
builder
,
const
EcAdd
& input);
50
}
// namespace acir_format
bb::ECCVMCircuitBuilder
Definition
eccvm_circuit_builder.hpp:24
builder
AluTraceBuilder builder
Definition
alu.test.cpp:124
acir_format
Definition
acir_format.cpp:30
acir_format::create_ec_add_constraint
void create_ec_add_constraint(Builder &builder, const EcAdd &input)
Create constraints for addition of two points on the Grumpkin curve.
Definition
ec_operations.cpp:38
acir_format::EcAdd
Constraints for addition of two points on the Grumpkin curve.
Definition
ec_operations.hpp:31
acir_format::EcAdd::result_infinite
uint32_t result_infinite
Definition
ec_operations.hpp:44
acir_format::EcAdd::operator==
friend bool operator==(EcAdd const &lhs, EcAdd const &rhs)=default
acir_format::EcAdd::input1_y
WitnessOrConstant< bb::fr > input1_y
Definition
ec_operations.hpp:33
acir_format::EcAdd::input1_infinite
WitnessOrConstant< bb::fr > input1_infinite
Definition
ec_operations.hpp:34
acir_format::EcAdd::input2_y
WitnessOrConstant< bb::fr > input2_y
Definition
ec_operations.hpp:36
acir_format::EcAdd::input2_infinite
WitnessOrConstant< bb::fr > input2_infinite
Definition
ec_operations.hpp:37
acir_format::EcAdd::input1_x
WitnessOrConstant< bb::fr > input1_x
Definition
ec_operations.hpp:32
acir_format::EcAdd::result_y
uint32_t result_y
Definition
ec_operations.hpp:43
acir_format::EcAdd::input2_x
WitnessOrConstant< bb::fr > input2_x
Definition
ec_operations.hpp:35
acir_format::EcAdd::predicate
WitnessOrConstant< bb::fr > predicate
Definition
ec_operations.hpp:41
acir_format::EcAdd::result_x
uint32_t result_x
Definition
ec_operations.hpp:42
acir_format::WitnessOrConstant
Definition
witness_constant.hpp:12
witness_constant.hpp
src
barretenberg
dsl
acir_format
ec_operations.hpp
Generated by
1.9.8