Fractional ideals
A fractional ideal in the number field $K$ is a $Z_K$-module $A$ such that there exists an integer $d>0$ wich $dA$ is an (integral) ideal in $Z_K$. Due to the Dedekind property of $Z_K$, the ideals for a multiplicative group.
Fractional ideals are represented as an integral ideal and an additional denominator. They are of type NfOrdFracIdl.
Creation
Hecke.frac_ideal — Method.frac_ideal(O::NfOrd, A::fmpz_mat, b::fmpz, A_in_hnf::Bool = false) -> NfOrdFracIdlCreates the fractional ideal of $\mathcal O$ with basis matrix $A/b$. If Ainhnf is set, then it is assumed that $A$ is already in lower left HNF.
Hecke.frac_ideal — Method.frac_ideal(O::NfOrd, A::fmpz_mat, b::fmpz, A_in_hnf::Bool = false) -> NfOrdFracIdlCreates the fractional ideal of $\mathcal O$ with basis matrix $A/b$. If Ainhnf is set, then it is assumed that $A$ is already in lower left HNF.
Hecke.frac_ideal — Method.frac_ideal(O::NfOrd, A::FakeFmpqMat, A_in_hnf::Bool = false) -> NfOrdFracIdlCreates the fractional ideal of $\mathcal O$ with basis matrix $A$. If Ainhnf is set, then it is assumed that the numerator of $A$ is already in lower left HNF.
Hecke.frac_ideal — Method.frac_ideal(O::NfOrd, I::NfOrdIdl) -> NfOrdFracIdlTurns the ideal $I$ into a fractional ideal of $\mathcal O$.
Hecke.frac_ideal — Method.frac_ideal(O::NfOrd, I::NfOrdIdl, b::fmpz) -> NfOrdFracIdlCreates the fractional ideal $I/b$ of $\mathcal O$.
Hecke.frac_ideal — Method.frac_ideal(O::NfOrd, a::nf_elem) -> NfOrdFracIdlCreates the principal fractional ideal $(a)$ of $\mathcal O$.
Hecke.frac_ideal — Method.frac_ideal(O::NfOrd, a::NfOrdElem) -> NfOrdFracIdlCreates the principal fractional ideal $(a)$ of $\mathcal O$.
Base.inv — Method.inv(A::NfAbsOrdIdl) -> NfOrdFracIdlComputes the inverse of A, that is, the fractional ideal $B$ such that $AB = \mathcal O_K$.
inv(a::NfRelOrdIdl) -> NfRelOrdFracIdl
inv(a::NfRelOrdFracIdl) -> NfRelOrdFracIdlComputes the inverse of $a$, that is, the fractional ideal $b$ such that $ab = O$, where $O$ is the ambient order of $a$. $O$ must be maximal.
Arithmetic
Base.:== — Method.==(x::NfOrdFracIdl, y::NfOrdFracIdl) -> BoolReturns whether $x$ and $y$ are equal.
Base.inv — Method.inv(A::NfOrdFracIdl) -> NfOrdFracIdlReturns the fractional ideal $B$ such that $AB = \mathcal O$.
Hecke.integral_split — Method.integral_split(A::NfOrdFracIdl) -> NfOrdIdl, NfOrdIdlComputes the unique coprime integral ideals $N$ and $D$ s.th. $A = ND^{-1}$
Miscaellenous
AbstractAlgebra.Generic.order — Method.order(a::NfOrdFracIdl) -> NfOrdThe order that was used to define the ideal $a$.
Hecke.basis_mat — Method.basis_mat(I::NfOrdFracIdl) -> FakeFmpqMatReturns the basis matrix of $I$ with respect to the basis of the order.
Hecke.basis_mat_inv — Method.basis_mat_inv(I::NfOrdFracIdl) -> FakeFmpqMatReturns the inverse of the basis matrix of $I$.
Hecke.basis — Method.basis(I::NfOrdFracIdl) -> Array{nf_elem, 1}Returns the $\mathbf Z$-basis of $I$.
LinearAlgebra.norm — Method.norm(I::NfOrdFracIdl) -> fmpqReturns the norm of $I$