Clearmatics Libff
0.1
C++ library for Finite Fields and Elliptic Curves
|
#include <fp12_2over3over2.hpp>
Public Types | |
typedef Fp_model< n, modulus > | my_Fp |
typedef Fp2_model< n, modulus > | my_Fp2 |
typedef Fp6_3over2_model< n, modulus > | my_Fp6 |
Static Public Member Functions | |
static Fp12_2over3over2_model< n, modulus > | zero () |
static Fp12_2over3over2_model< n, modulus > | one () |
static Fp12_2over3over2_model< n, modulus > | random_element () |
static my_Fp6 | mul_by_non_residue (const my_Fp6 &elt) |
static bigint< n > | base_field_char () |
static constexpr size_t | extension_degree () |
Public Attributes | |
my_Fp6 | coeffs [2] |
Static Public Attributes | |
static bigint< 12 *n > | euler |
static std::size_t | s |
static bigint< 12 *n > | t |
static bigint< 12 *n > | t_minus_1_over_2 |
static Fp12_2over3over2_model< n, modulus > | nqr |
static Fp12_2over3over2_model< n, modulus > | nqr_to_t |
static Fp2_model< n, modulus > | non_residue |
static Fp2_model< n, modulus > | Frobenius_coeffs_c1 [12] |
non_residue^((modulus^i-1)/6) for i=0,...,11 More... | |
static const size_t | tower_extension_degree = 2 |
Friends | |
std::ostream & | operator (std::ostream &out, const Fp12_2over3over2_model< n, modulus > &el) |
std::istream & | operator>> (std::istream &in, Fp12_2over3over2_model< n, modulus > &el) |
Arithmetic in the finite field F[((p^2)^3)^2].
Let p := modulus. This interface provides arithmetic for the extension field Fp12 = Fp6[W]/(W^2-V) where Fp6 = Fp2[V]/(V^3-non_residue) and non_residue is in Fp2
ASSUMPTION: p = 1 (mod 6)
Definition at line 20 of file fp12_2over3over2.hpp.
typedef Fp_model<n, modulus> libff::Fp12_2over3over2_model< n, modulus >::my_Fp |
Definition at line 52 of file fp12_2over3over2.hpp.
typedef Fp2_model<n, modulus> libff::Fp12_2over3over2_model< n, modulus >::my_Fp2 |
Definition at line 53 of file fp12_2over3over2.hpp.
typedef Fp6_3over2_model<n, modulus> libff::Fp12_2over3over2_model< n, modulus >::my_Fp6 |
Definition at line 54 of file fp12_2over3over2.hpp.
|
inline |
Definition at line 63 of file fp12_2over3over2.hpp.
|
inline |
Definition at line 64 of file fp12_2over3over2.hpp.
|
inlinestatic |
Definition at line 115 of file fp12_2over3over2.hpp.
|
inline |
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::cyclotomic_exp | ( | const bigint< m > & | exponent | ) | const |
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::cyclotomic_squared | ( | ) | const |
|
inlinestaticconstexpr |
Definition at line 116 of file fp12_2over3over2.hpp.
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::Frobenius_map | ( | unsigned long | power | ) | const |
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::inverse | ( | ) | const |
|
inline |
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::mul_by_024 | ( | const my_Fp2 & | ell_0, |
const my_Fp2 & | ell_VW, | ||
const my_Fp2 & | ell_VV | ||
) | const |
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::mul_by_045 | ( | const my_Fp2 & | ell_0, |
const my_Fp2 & | ell_VW, | ||
const my_Fp2 & | ell_VV | ||
) | const |
|
static |
|
static |
bool libff::Fp12_2over3over2_model< n, modulus >::operator!= | ( | const Fp12_2over3over2_model< n, modulus > & | other | ) | const |
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::operator* | ( | const Fp12_2over3over2_model< n, modulus > & | other | ) | const |
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::operator+ | ( | const Fp12_2over3over2_model< n, modulus > & | other | ) | const |
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::operator- | ( | ) | const |
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::operator- | ( | const Fp12_2over3over2_model< n, modulus > & | other | ) | const |
bool libff::Fp12_2over3over2_model< n, modulus >::operator== | ( | const Fp12_2over3over2_model< n, modulus > & | other | ) | const |
|
inline |
|
static |
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::squared | ( | ) | const |
default is squared_complex
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::squared_complex | ( | ) | const |
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::squared_karatsuba | ( | ) | const |
Fp12_2over3over2_model libff::Fp12_2over3over2_model< n, modulus >::unitary_inverse | ( | ) | const |
|
static |
|
friend |
|
friend |
my_Fp6 libff::Fp12_2over3over2_model< n, modulus >::coeffs[2] |
Definition at line 62 of file fp12_2over3over2.hpp.
|
static |
Definition at line 40 of file fp12_2over3over2.hpp.
|
static |
non_residue^((modulus^i-1)/6) for i=0,...,11
Definition at line 58 of file fp12_2over3over2.hpp.
|
static |
Definition at line 56 of file fp12_2over3over2.hpp.
|
static |
Definition at line 48 of file fp12_2over3over2.hpp.
|
static |
Definition at line 50 of file fp12_2over3over2.hpp.
|
static |
Definition at line 42 of file fp12_2over3over2.hpp.
|
static |
Definition at line 44 of file fp12_2over3over2.hpp.
|
static |
Definition at line 46 of file fp12_2over3over2.hpp.
|
static |
Definition at line 60 of file fp12_2over3over2.hpp.