# NumberFieldIntegralBasis(UP, F)¶

In this package F is a framed algebra over the integers (typically F = Z[a] for some algebraic integer a). The package provides functions to compute the integral closure of Z in the quotient field of F.
discriminant() returns the discriminant of the integral closure of Z in the quotient field of the framed algebra F.
integralBasis() returns a record [basis, basisDen, basisInv] containing information regarding the integral closure of Z in the quotient field of F, where F is a framed algebra with Z-module basis w1, w2, ..., wn. If basis is the matrix (aij, i = 1..n, j = 1..n), then the ith element of the integral basis is vi = (1/basisDen) * sum(aij * wj, j = 1..n), i.e. the ith row of basis contains the coordinates of the ith basis vector. Similarly, the ith row of the matrix basisInv contains the coordinates of wi with respect to the basis v1, ..., vn: if basisInv is the matrix (bij, i = 1..n, j = 1..n), then wi = sum(bij * vj, j = 1..n).
integralBasis(p) returns a record [basis, basisDen, basisInv] containing information regarding the local integral closure of Z at the prime p in the quotient field of F, where F is a framed algebra with Z-module basis w1, w2, ..., wn. If basis is the matrix (aij, i = 1..n, j = 1..n), then the ith element of the integral basis is vi = (1/basisDen) * sum(aij * wj, j = 1..n), i.e. the ith row of basis contains the coordinates of the ith basis vector. Similarly, the ith row of the matrix basisInv contains the coordinates of wi with respect to the basis v1, ..., vn: if basisInv is the matrix (bij, i = 1..n, j = 1..n), then wi = sum(bij * vj, j = 1..n).