Elements
Elements in orders have two representations: they can be viewed as elements in the
Creation
Elements are constructed either as linear combinations of basis elements or via explicit coercion. Elements will be of type AbsNumFieldOrderElem, the type if actually parametrized by the type of the surrounding field and the type of the field elements. E.g. the type of any element in any order of an absolute simple field will be AbsSimpleNumFieldOrderElem
AbsNumFieldOrder Type
(O::NumFieldOrder)(a::NumFieldElem, check::Bool = true) -> NumFieldOrderElemGiven an element check is true.
(O::NumFieldOrder)(a::NumFieldOrderElem, check::Bool = true) -> NumFieldOrderElemGiven an element check is true.
(O::NumFieldOrder)(a::IntegerUnion) -> NumFieldOrderElemGiven an element ZZRingElem or Integer, this function coerces the element into
(O::AbsNumFieldOrder)(arr::Vector{ZZRingElem})Returns the element of arr.
(O::AbsNumFieldOrder)(arr::Vector{Integer})Returns the element of arr.
Basic properties
parent Method
parent(a::NumFieldOrderElem) -> NumFieldOrderReturns the order of which
elem_in_nf Method
elem_in_nf(a::NumFieldOrderElem) -> NumFieldElemReturns the element
coordinates Method
coordinates(a::AbsNumFieldOrderElem) -> Vector{ZZRingElem}Returns the coefficient vector of
discriminant Method
discriminant(B::Vector{NumFieldOrderElem})Returns the discriminant of the family
discriminant(E::EllipticCurve) -> FieldElemReturn the discriminant of
discriminant(C::HypellCrv{T}) -> TCompute the discriminant of
discriminant(O::AlgssRelOrd)Returns the discriminant of
== Method
==(x::NumFieldOrderElem, y::NumFieldOrderElem) -> BoolReturns whether
Arithmetic
All the usual arithmetic operations are defined:
-(::NUmFieldOrdElem)+(::NumFieldOrderElem, ::NumFieldOrderElem)-(::NumFieldOrderElem, ::NumFieldOrderElem)*(::NumFieldOrderElem, ::NumFieldOrderElem)^(::NumFieldOrderElem, ::Int)mod(::AbsNumFieldOrderElem, ::Int)mod_sym(::NumFieldOrderElem, ::ZZRingElem)powermod(::AbsNumFieldOrderElem, ::ZZRingElem, ::Int)
Miscellaneous
representation_matrix Method
representation_matrix(a::AbsNumFieldOrderElem) -> ZZMatrixReturns the representation matrix of the element
representation_matrix Method
representation_matrix(a::AbsNumFieldOrderElem, K::AbsSimpleNumField) -> FakeFmpqMatReturns the representation matrix of the element
absolute_norm Method
absolute_norm(a::NumFieldOrderElem) -> ZZRingElemReturn the absolute norm as an integer.
sourceabsolute_tr Method
absolute_tr(a::NumFieldOrderElem) -> ZZRingElemReturn the absolute trace as an integer.
sourcerand Method
rand(O::AbsSimpleNumFieldOrder, n::IntegerUnion) -> AbsNumFieldOrderElemComputes a coefficient vector with entries uniformly distributed in
minkowski_map Method
minkowski_map(a::NumFieldOrderElem, abs_tol::Int) -> Vector{ArbFieldElem}Returns the image of ArbFieldElem with radius less then 2^-abs_tol.
conjugates_arb Method
conjugates_arb(x::NumFieldOrderElem, abs_tol::Int) -> Vector{AcbFieldElem}Compute the conjugates of AcbFieldElem. Recall that we order the complex conjugates
Every entry radius(real(y)) < 2^-abs_tol, radius(imag(y)) < 2^-abs_tol respectively.
conjugates_arb_log Method
conjugates_arb_log(x::NumFieldOrderElem, abs_tol::Int) -> Vector{ArbFieldElem}Returns the elements ArbFieldElem radius less then 2^-abs_tol.
t2 Method
t2(x::NumFieldOrderElem, abs_tol::Int = 32) -> ArbFieldElemReturn the 2^-abs_tol.
minpoly Method
minpoly([ZZPolyRing], a::AbsNumFieldOrderElem) -> ZZPolyRingElemThe minimal polynomial of
charpoly Method
charpoly([ZZPolyRing], a::AbsNumFieldOrderElem) -> ZZPolyRingElemThe characteristic polynomial of
factor Method
factor(a::AbsSimpleNumFieldOrderElem) -> Fac{AbsSimpleNumFieldOrderElem}Computes a factorization of fac, which satisfies a = unit(fac) * prod(p^e for (p, e) in fac).
The function requires that
denominator Method
denominator(a::NumFieldElem, O::AbsSimpleNumFieldOrder) -> ZZRingElemReturns the smallest positive integer
discriminant Method
discriminant(B::Vector{NumFieldOrderElem})Returns the discriminant of the family
discriminant(E::EllipticCurve) -> FieldElemReturn the discriminant of
discriminant(C::HypellCrv{T}) -> TCompute the discriminant of
discriminant(O::AlgssRelOrd)Returns the discriminant of
