nil::crypto3::zk::components::check_e_equals_ee_component< CurveType > Class Template Reference

#include <pairing_checks.hpp>

+ Inheritance diagram for nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >:
+ Collaboration diagram for nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >:

Public Types

typedef CurveType::scalar_field_type field_type
 

Public Member Functions

 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)
 
void generate_r1cs_constraints ()
 
void generate_r1cs_witness ()
 

Public Attributes

std::shared_ptr< final_exp_component< CurveType > > check_finexp
 
std::shared_ptr< mnt_e_times_e_over_e_miller_loop_component< CurveType > > compute_ratio
 
g1_precomputation< CurveType > lhs_G1
 
g2_precomputation< CurveType > lhs_G2
 
std::shared_ptr< Fqk_variable_type > ratio
 
blueprint_variable< field_typeresult
 
g1_precomputation< CurveType > rhs1_G1
 
g2_precomputation< CurveType > rhs1_G2
 
g1_precomputation< CurveType > rhs2_G1
 
g2_precomputation< CurveType > rhs2_G2
 

Protected Attributes

blueprint< CurveType::scalar_field_type > & bp
 

Member Typedef Documentation

◆ field_type

template<typename CurveType >
typedef CurveType::scalar_field_type nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::field_type

Constructor & Destructor Documentation

◆ check_e_equals_ee_component()

template<typename CurveType >
nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::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 
)
inline

Member Function Documentation

◆ generate_r1cs_constraints()

template<typename CurveType >
void nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::generate_r1cs_constraints ( )
inline

◆ generate_r1cs_witness()

template<typename CurveType >
void nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::generate_r1cs_witness ( )
inline

Member Data Documentation

◆ bp

blueprint<CurveType::scalar_field_type >& nil::crypto3::zk::components::component< CurveType::scalar_field_type >::bp
protectedinherited

◆ check_finexp

template<typename CurveType >
std::shared_ptr<final_exp_component<CurveType> > nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::check_finexp

◆ compute_ratio

template<typename CurveType >
std::shared_ptr<mnt_e_times_e_over_e_miller_loop_component<CurveType> > nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::compute_ratio

◆ lhs_G1

template<typename CurveType >
g1_precomputation<CurveType> nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::lhs_G1

◆ lhs_G2

template<typename CurveType >
g2_precomputation<CurveType> nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::lhs_G2

◆ ratio

template<typename CurveType >
std::shared_ptr<Fqk_variable_type> nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::ratio

◆ result

◆ rhs1_G1

template<typename CurveType >
g1_precomputation<CurveType> nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::rhs1_G1

◆ rhs1_G2

template<typename CurveType >
g2_precomputation<CurveType> nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::rhs1_G2

◆ rhs2_G1

template<typename CurveType >
g1_precomputation<CurveType> nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::rhs2_G1

◆ rhs2_G2

template<typename CurveType >
g2_precomputation<CurveType> nil::crypto3::zk::components::check_e_equals_ee_component< CurveType >::rhs2_G2

The documentation for this class was generated from the following file: