diff --git a/src/fields/fq2.rs b/src/fields/fq2.rs index 8f64016..df96d40 100644 --- a/src/fields/fq2.rs +++ b/src/fields/fq2.rs @@ -92,6 +92,14 @@ impl Fq2 { } } } + + pub fn real(&self) -> &Fq { + &self.c0 + } + + pub fn imaginary(&self) -> &Fq { + &self.c1 + } } impl FieldElement for Fq2 { diff --git a/src/lib.rs b/src/lib.rs index e55ab2e..be492e5 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -215,6 +215,14 @@ impl Fq2 { pub fn pow(&self, exp: arith::U256) -> Self { Fq2(self.0.pow(exp)) } + + pub fn real(&self) -> Fq { + Fq(*self.0.real()) + } + + pub fn imaginary(&self) -> Fq { + Fq(*self.0.imaginary()) + } }