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

#include <element_g1.hpp>

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

Public Member Functions

 element_g1_is_well_formed (blueprint< scalar_field_type > &bp, blueprint_variable< scalar_field_type > a, blueprint_variable< scalar_field_type > d, const element_g1< CurveType > &P)
 
 element_g1_is_well_formed (blueprint< underlying_field_type > &bp, const element_g1< CurveType > &P)
 
void generate_r1cs_constraints ()
 
void generate_r1cs_constraints ()
 
void generate_r1cs_witness ()
 
void generate_r1cs_witness ()
 

Public Attributes

blueprint_variable< scalar_field_type > a
 
blueprint_variable< scalar_field_type > aXX
 
blueprint_variable< scalar_field_type > d
 
blueprint_variable< scalar_field_type > dXX
 
blueprint_variable< scalar_field_type > dXXYY
 
blueprint_variable< scalar_field_type > lhs
 
element_g1< CurveType > P
 
blueprint_variable< underlying_field_type > P_X_squared
 
blueprint_variable< underlying_field_type > P_Y_squared
 
blueprint_variable< scalar_field_type > rhs
 
blueprint_variable< scalar_field_type > XX
 
blueprint_variable< scalar_field_type > YY
 

Protected Attributes

blueprint< CurveType::scalar_field_type > & bp
 

Detailed Description

template<typename CurveType>
class nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >

Component that creates constraints for the validity of a G1 element. (if element from group G1 lies on the elliptic curve)

Component that creates constraints for the validity of a G1 element.

Constructor & Destructor Documentation

◆ element_g1_is_well_formed() [1/2]

template<typename CurveType >
nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::element_g1_is_well_formed ( blueprint< scalar_field_type > &  bp,
blueprint_variable< scalar_field_type >  a,
blueprint_variable< scalar_field_type >  d,
const element_g1< CurveType > &  P 
)
inline

◆ element_g1_is_well_formed() [2/2]

template<typename CurveType >
nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::element_g1_is_well_formed ( blueprint< underlying_field_type > &  bp,
const element_g1< CurveType > &  P 
)
inline

Member Function Documentation

◆ generate_r1cs_constraints() [1/2]

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

◆ generate_r1cs_constraints() [2/2]

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

◆ generate_r1cs_witness() [1/2]

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

◆ generate_r1cs_witness() [2/2]

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

Member Data Documentation

◆ a

template<typename CurveType >
blueprint_variable<scalar_field_type> nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::a

◆ aXX

template<typename CurveType >
blueprint_variable<scalar_field_type> nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::aXX

◆ bp

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

◆ d

template<typename CurveType >
blueprint_variable<scalar_field_type> nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::d

◆ dXX

template<typename CurveType >
blueprint_variable<scalar_field_type> nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::dXX

◆ dXXYY

template<typename CurveType >
blueprint_variable<scalar_field_type> nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::dXXYY

◆ lhs

template<typename CurveType >
blueprint_variable<scalar_field_type> nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::lhs

◆ P

template<typename CurveType >
element_g1< CurveType > nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::P

◆ P_X_squared

template<typename CurveType >
blueprint_variable<underlying_field_type> nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::P_X_squared

◆ P_Y_squared

template<typename CurveType >
blueprint_variable<underlying_field_type> nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::P_Y_squared

◆ rhs

template<typename CurveType >
blueprint_variable<scalar_field_type> nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::rhs

◆ XX

template<typename CurveType >
blueprint_variable<scalar_field_type> nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::XX

◆ YY

template<typename CurveType >
blueprint_variable<scalar_field_type> nil::crypto3::zk::components::element_g1_is_well_formed< CurveType >::YY

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