pairing_checks.hpp
Go to the documentation of this file.
29 // - the component "check_e_equals_ee_component" checks the equation "e(P1,Q1)=e(P2,Q2)*e(P3,Q3)".
Definition: blueprint.hpp:46
Definition: pairing_checks.hpp:49
g2_precomputation< CurveType > lhs_G2
Definition: pairing_checks.hpp:63
blueprint_variable< field_type > result
Definition: pairing_checks.hpp:67
std::shared_ptr< final_exp_component< CurveType > > check_finexp
Definition: pairing_checks.hpp:60
g1_precomputation< CurveType > rhs_G1
Definition: pairing_checks.hpp:64
void generate_r1cs_witness()
Definition: pairing_checks.hpp:88
void generate_r1cs_constraints()
Definition: pairing_checks.hpp:83
std::shared_ptr< Fqk_variable_type > ratio
Definition: pairing_checks.hpp:58
g1_precomputation< CurveType > lhs_G1
Definition: pairing_checks.hpp:62
std::shared_ptr< mnt_e_over_e_miller_loop_component< CurveType > > compute_ratio
Definition: pairing_checks.hpp:59
CurveType::scalar_field_type field_type
Definition: pairing_checks.hpp:56
check_e_equals_e_component(blueprint< field_type > &bp, const g1_precomputation< CurveType > &lhs_G1, const g2_precomputation< CurveType > &lhs_G2, const g1_precomputation< CurveType > &rhs_G1, const g2_precomputation< CurveType > &rhs_G2, const blueprint_variable< field_type > &result)
Definition: pairing_checks.hpp:69
g2_precomputation< CurveType > rhs_G2
Definition: pairing_checks.hpp:65
Definition: pairing_checks.hpp:95
g1_precomputation< CurveType > rhs2_G1
Definition: pairing_checks.hpp:112
g1_precomputation< CurveType > rhs1_G1
Definition: pairing_checks.hpp:110
std::shared_ptr< final_exp_component< CurveType > > check_finexp
Definition: pairing_checks.hpp:106
g2_precomputation< CurveType > lhs_G2
Definition: pairing_checks.hpp:109
g2_precomputation< CurveType > rhs2_G2
Definition: pairing_checks.hpp:113
g2_precomputation< CurveType > rhs1_G2
Definition: pairing_checks.hpp:111
blueprint_variable< field_type > result
Definition: pairing_checks.hpp:115
void generate_r1cs_constraints()
Definition: pairing_checks.hpp:134
CurveType::scalar_field_type field_type
Definition: pairing_checks.hpp:102
check_e_equals_ee_component(blueprint< field_type > &bp, const g1_precomputation< CurveType > &lhs_G1, const g2_precomputation< CurveType > &lhs_G2, const g1_precomputation< CurveType > &rhs1_G1, const g2_precomputation< CurveType > &rhs1_G2, const g1_precomputation< CurveType > &rhs2_G1, const g2_precomputation< CurveType > &rhs2_G2, const blueprint_variable< field_type > &result)
Definition: pairing_checks.hpp:117
std::shared_ptr< Fqk_variable_type > ratio
Definition: pairing_checks.hpp:104
g1_precomputation< CurveType > lhs_G1
Definition: pairing_checks.hpp:108
void generate_r1cs_witness()
Definition: pairing_checks.hpp:139
std::shared_ptr< mnt_e_times_e_over_e_miller_loop_component< CurveType > > compute_ratio
Definition: pairing_checks.hpp:105
Definition: component.hpp:37
blueprint< CurveType::scalar_field_type > & bp
Definition: component.hpp:39
Definition: blueprint/include/nil/crypto3/zk/components/algebra/pairing/detail/mnt4.hpp:46
Definition: precomputation.hpp:59
Definition: precomputation.hpp:189
Definition: miller_loop.hpp:382
Definition: miller_loop.hpp:586
Definition: pair.hpp:31
Definition: blueprint/include/nil/crypto3/zk/components/algebra/pairing/weierstrass/final_exponentiation.hpp:52