ark-curves-cherry-picked/mnt6_298/src/fields/fq6.rs
mnt6_298/src/fields/fq6.rsRaw
1use crate::{Fq, Fq3, Fq3Parameters, FQ_ONE, FQ_ZERO};
2use ark_ff::{
3 field_new,
4 fields::fp6_2over3::{Fp6, Fp6Parameters},
5};
6
7pub type Fq6 = Fp6<Fq6Parameters>;
8
9pub struct Fq6Parameters;
10
11impl Fp6Parameters for Fq6Parameters {
12 type Fp3Params = Fq3Parameters;
13
14 const NONRESIDUE: Fq3 = field_new!(Fq3, FQ_ZERO, FQ_ONE, FQ_ZERO);
15
16 const FROBENIUS_COEFF_FP6_C1: &'static [Fq] = &[
17 field_new!(Fq, "1"),
18 field_new!(Fq, "471738898967521029133040851318449165997304108729558973770077319830005517129946578866686957"),
19 field_new!(Fq, "471738898967521029133040851318449165997304108729558973770077319830005517129946578866686956"),
20 field_new!(Fq, "475922286169261325753349249653048451545124878552823515553267735739164647307408490559963136"),
21 field_new!(Fq, "4183387201740296620308398334599285547820769823264541783190415909159130177461911693276180"),
22 field_new!(Fq, "4183387201740296620308398334599285547820769823264541783190415909159130177461911693276181"),
23 ];
24}