pub type Complex<FA> = BinomialExtensionField<FA, 2>;
Aliased Type§
pub struct Complex<FA> { /* private fields */ }
Implementations§
Source§impl<FA: FieldAlgebra> Complex<FA>
Convenience methods for complex extensions
impl<FA: FieldAlgebra> Complex<FA>
Convenience methods for complex extensions
pub const fn new(real: FA, imag: FA) -> Self
pub const fn new_real(real: FA) -> Self
pub const fn new_imag(imag: FA) -> Self
pub fn real(&self) -> FA
pub fn imag(&self) -> FA
pub fn conjugate(&self) -> Self
pub fn norm(&self) -> FA
pub fn to_array(&self) -> [FA; 2]
pub fn rotate<Ext: FieldExtensionAlgebra<FA>>( &self, rhs: Complex<Ext>, ) -> Complex<Ext>
Trait Implementations§
Source§impl<F, const D: usize> BinomiallyExtendable<D> for Complex<F>where
F: HasComplexBinomialExtension<D>,
impl<F, const D: usize> BinomiallyExtendable<D> for Complex<F>where
F: HasComplexBinomialExtension<D>,
Source§impl<F, const D: usize> HasTwoAdicBinomialExtension<D> for Complex<F>where
F: HasTwoAdicComplexBinomialExtension<D>,
impl<F, const D: usize> HasTwoAdicBinomialExtension<D> for Complex<F>where
F: HasTwoAdicComplexBinomialExtension<D>,
const EXT_TWO_ADICITY: usize = F::COMPLEX_EXT_TWO_ADICITY
Source§fn ext_two_adic_generator(bits: usize) -> [Self; D]
fn ext_two_adic_generator(bits: usize) -> [Self; D]
Assumes the multiplicative group size has at least
bits
powers of two, otherwise the
behavior is undefined.