nil::crypto3::zk::components::element_fp2_squared< Fp2T > Struct Template Reference

#include <element_fp2.hpp>

+ Inheritance diagram for nil::crypto3::zk::components::element_fp2_squared< Fp2T >:
+ Collaboration diagram for nil::crypto3::zk::components::element_fp2_squared< Fp2T >:

Public Types

using base_field_type = typename Fp2T::base_field_type
 
using base_field_value_type = typename base_field_type::value_type
 

Public Member Functions

 element_fp2_squared (blueprint< base_field_type > &bp, const element_fp2< Fp2T > &A, const element_fp2< Fp2T > &result)
 
void generate_r1cs_constraints ()
 
void generate_r1cs_witness ()
 

Public Attributes

element_fp2< Fp2T > A
 
element_fp2< Fp2T > result
 

Protected Attributes

blueprint< Fp2T::underlying_field_type > & bp
 

Detailed Description

template<typename Fp2T>
struct nil::crypto3::zk::components::element_fp2_squared< Fp2T >

Component that creates constraints for Fp2 squaring.

Member Typedef Documentation

◆ base_field_type

template<typename Fp2T >
using nil::crypto3::zk::components::element_fp2_squared< Fp2T >::base_field_type = typename Fp2T::base_field_type

◆ base_field_value_type

template<typename Fp2T >
using nil::crypto3::zk::components::element_fp2_squared< Fp2T >::base_field_value_type = typename base_field_type::value_type

Constructor & Destructor Documentation

◆ element_fp2_squared()

template<typename Fp2T >
nil::crypto3::zk::components::element_fp2_squared< Fp2T >::element_fp2_squared ( blueprint< base_field_type > &  bp,
const element_fp2< Fp2T > &  A,
const element_fp2< Fp2T > &  result 
)
inline

Member Function Documentation

◆ generate_r1cs_constraints()

template<typename Fp2T >
void nil::crypto3::zk::components::element_fp2_squared< Fp2T >::generate_r1cs_constraints ( )
inline

◆ generate_r1cs_witness()

template<typename Fp2T >
void nil::crypto3::zk::components::element_fp2_squared< Fp2T >::generate_r1cs_witness ( )
inline

Member Data Documentation

◆ A

template<typename Fp2T >
element_fp2<Fp2T> nil::crypto3::zk::components::element_fp2_squared< Fp2T >::A

◆ bp

blueprint<Fp2T::underlying_field_type >& nil::crypto3::zk::components::component< Fp2T::underlying_field_type >::bp
protectedinherited

◆ result

template<typename Fp2T >
element_fp2<Fp2T> nil::crypto3::zk::components::element_fp2_squared< Fp2T >::result

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