@ -4,7 +4,7 @@ use ark_ec::{
mnt4 ::MNT4Parameters ,
models ::{ ModelParameters , SWModelParameters } ,
} ;
use ark_ff ::{ biginteger ::BigInteger320 , field_new } ;
use ark_ff ::field_new ;
pub type G2Affine = mnt4 ::G2Affine < crate ::Parameters > ;
pub type G2Projective = mnt4 ::G2Projective < crate ::Parameters > ;
@ -40,13 +40,7 @@ impl SWModelParameters for Parameters {
#[ rustfmt::skip ]
const COEFF_B : Fq2 = field_new ! ( Fq2 ,
FQ_ZERO ,
field_new ! ( Fq , BigInteger320 ( [
9511110677122940475 ,
13403516020116973437 ,
1464701424831086967 ,
4646785117660390394 ,
1747881737068 ,
] ) ) ,
field_new ! ( Fq , "67372828414711144619833451280373307321534573815811166723479321465776723059456513877937430" ) ,
) ;
/// COFACTOR =
@ -63,13 +57,7 @@ impl SWModelParameters for Parameters {
/// COFACTOR^(-1) mod r =
/// 475922286169261325753349249653048451545124878207887910632124039320641839552134835598065665
#[ rustfmt::skip ]
const COFACTOR_INV : Fr = field_new ! ( Fr , BigInteger320 ( [
8065818351154103109 ,
7537800592537321232 ,
747075088561892445 ,
6335802185495034136 ,
1874289794052 ,
] ) ) ;
const COFACTOR_INV : Fr = field_new ! ( Fr , "475922286169261325753349249653048451545124878207887910632124039320641839552134835598065665" ) ;
/// AFFINE_GENERATOR_COEFFS = (G2_GENERATOR_X, G2_GENERATOR_Y)
const AFFINE_GENERATOR_COEFFS : ( Self ::BaseField , Self ::BaseField ) =
@ -87,41 +75,17 @@ const G2_GENERATOR_Y: Fq2 = field_new!(Fq2, G2_GENERATOR_Y_C0, G2_GENERATOR_Y_C1
// Generator of G2
// These are two Fq elements each because X and Y (and Z) are elements of Fq^2
// X = 438374926219350099854919100077809681842783509163790991847867546339851681564223481322252708,
// 37620953615500480110935514360923278605464476459712393277679280819942849043649216370485641,
// 37620953615500480110935514360923278605464476459712393277679280819942849043649216370485641,
// Y = 37437409008528968268352521034936931842973546441370663118543015118291998305624025037512482,
// 424621479598893882672393190337420680597584695892317197646113820787463109735345923009077489,
// 424621479598893882672393190337420680597584695892317197646113820787463109735345923009077489,
#[ rustfmt::skip ]
pub const G2_GENERATOR_X_C0 : Fq = field_new ! ( Fq , BigInteger320 ( [
5356671649366391794 ,
2684151262065976452 ,
4683110650642896126 ,
10421299515941681582 ,
1618695480960
] ) ) ;
pub const G2_GENERATOR_X_C0 : Fq = field_new ! ( Fq , "438374926219350099854919100077809681842783509163790991847867546339851681564223481322252708" ) ;
#[ rustfmt::skip ]
pub const G2_GENERATOR_X_C1 : Fq = field_new ! ( Fq , BigInteger320 ( [
133394645290266480 ,
15395232932057272770 ,
18271324022738539173 ,
9095178119640120034 ,
2303787573609
] ) ) ;
pub const G2_GENERATOR_X_C1 : Fq = field_new ! ( Fq , "37620953615500480110935514360923278605464476459712393277679280819942849043649216370485641" ) ;
#[ rustfmt::skip ]
pub const G2_GENERATOR_Y_C0 : Fq = field_new ! ( Fq , BigInteger320 ( [
16920448081812496532 ,
15580160192086626100 ,
3974467672100342742 ,
8216505962266760277 ,
2643162835232
] ) ) ;
pub const G2_GENERATOR_Y_C0 : Fq = field_new ! ( Fq , "37437409008528968268352521034936931842973546441370663118543015118291998305624025037512482" ) ;
#[ rustfmt::skip ]
pub const G2_GENERATOR_Y_C1 : Fq = field_new ! ( Fq , BigInteger320 ( [
73816197493558356 ,
8663991890578965996 ,
11575903875707445958 ,
17953546933481201011 ,
2167465829200
] ) ) ;
pub const G2_GENERATOR_Y_C1 : Fq = field_new ! ( Fq , "424621479598893882672393190337420680597584695892317197646113820787463109735345923009077489" ) ;