nil::crypto3::algebra::fields::fp2< BaseField > Struct Template Reference

#include <fp2.hpp>

+ Collaboration diagram for nil::crypto3::algebra::fields::fp2< BaseField >:

Public Types

typedef BaseField base_field_type
 
typedef policy_type::extended_integral_type extended_integral_type
 
typedef detail::fp2_extension_params< policy_typeextension_policy
 
typedef policy_type::integral_type integral_type
 
typedef policy_type::modular_backend modular_backend
 
typedef policy_type::modular_type modular_type
 
typedef base_field_type policy_type
 
typedef extension_policy::underlying_field_type underlying_field_type
 
typedef detail::element_fp2< extension_policyvalue_type
 

Static Public Attributes

constexpr static const std::size_t arity = 2
 
constexpr static const integral_type modulus = policy_type::modulus
 
constexpr static const std::size_t modulus_bits = policy_type::modulus_bits
 
constexpr static const std::size_t number_bits = policy_type::number_bits
 
constexpr static const std::size_t value_bits = arity * modulus_bits
 

Detailed Description

template<typename BaseField>
struct nil::crypto3::algebra::fields::fp2< BaseField >

Template Parameters
Version

Member Typedef Documentation

◆ base_field_type

template<typename BaseField >
typedef BaseField nil::crypto3::algebra::fields::fp2< BaseField >::base_field_type

◆ extended_integral_type

template<typename BaseField >
typedef policy_type::extended_integral_type nil::crypto3::algebra::fields::fp2< BaseField >::extended_integral_type

◆ extension_policy

◆ integral_type

template<typename BaseField >
typedef policy_type::integral_type nil::crypto3::algebra::fields::fp2< BaseField >::integral_type

◆ modular_backend

template<typename BaseField >
typedef policy_type::modular_backend nil::crypto3::algebra::fields::fp2< BaseField >::modular_backend

◆ modular_type

template<typename BaseField >
typedef policy_type::modular_type nil::crypto3::algebra::fields::fp2< BaseField >::modular_type

◆ policy_type

template<typename BaseField >
typedef base_field_type nil::crypto3::algebra::fields::fp2< BaseField >::policy_type

◆ underlying_field_type

template<typename BaseField >
typedef extension_policy::underlying_field_type nil::crypto3::algebra::fields::fp2< BaseField >::underlying_field_type

◆ value_type

template<typename BaseField >
typedef detail::element_fp2<extension_policy> nil::crypto3::algebra::fields::fp2< BaseField >::value_type

Member Data Documentation

◆ arity

template<typename BaseField >
constexpr std::size_t const nil::crypto3::algebra::fields::fp2< BaseField >::arity = 2
staticconstexpr

◆ modulus

template<typename BaseField >
constexpr fp2< BaseField >::integral_type const nil::crypto3::algebra::fields::fp2< BaseField >::modulus = policy_type::modulus
staticconstexpr

◆ modulus_bits

template<typename BaseField >
constexpr static const std::size_t nil::crypto3::algebra::fields::fp2< BaseField >::modulus_bits = policy_type::modulus_bits
staticconstexpr

◆ number_bits

template<typename BaseField >
constexpr static const std::size_t nil::crypto3::algebra::fields::fp2< BaseField >::number_bits = policy_type::number_bits
staticconstexpr

◆ value_bits

template<typename BaseField >
constexpr static const std::size_t nil::crypto3::algebra::fields::fp2< BaseField >::value_bits = arity * modulus_bits
staticconstexpr

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