arnaucube
arnaucube/ark-r1cs-stdPublic Self-hosted repository
ark-r1cs-std/r1cs-std/src/instantiated/bls12_377/fields.rs
r1cs-std/src/instantiated/bls12_377/fields.rsRaw
 1use algebra::bls12_377::{Fq, Fq12Parameters, Fq2Parameters, Fq6Parameters};
 2
 3use crate::fields::{fp::FpGadget, fp12::Fp12Gadget, fp2::Fp2Gadget, fp6_3over2::Fp6Gadget};
 4
 5pub type FqGadget = FpGadget<Fq>;
 6pub type Fq2Gadget = Fp2Gadget<Fq2Parameters, Fq>;
 7pub type Fq6Gadget = Fp6Gadget<Fq6Parameters, Fq>;
 8pub type Fq12Gadget = Fp12Gadget<Fq12Parameters, Fq>;
 9
10#[test]
11fn bls12_377_field_gadgets_test() {
12    use super::*;
13    use crate::fields::tests::*;
14    use algebra::bls12_377::{Fq, Fq12, Fq2, Fq6};
15
16    field_test::<_, Fq, FqGadget>();
17    frobenius_tests::<Fq, Fq, FqGadget>(13);
18
19    field_test::<_, Fq, Fq2Gadget>();
20    frobenius_tests::<Fq2, Fq, Fq2Gadget>(13);
21
22    field_test::<_, Fq, Fq6Gadget>();
23    frobenius_tests::<Fq6, Fq, Fq6Gadget>(13);
24
25    field_test::<_, Fq, Fq12Gadget>();
26    frobenius_tests::<Fq12, Fq, Fq12Gadget>(13);
27}