The class field theory of local fields classifies abelian extensions of local field in a way similar to the way global class field theory deals with extensions of number fields and global function fields.
While the origins of local class field theory are, via completions and localisations, in the global case, today it is a theory in its own. Although local class field theory can be used to obtain global results, it has very powerful generalisations that the global case (currently) does not allow.
Local class fields are classified in terms of the norm group, ie. the multiplicative group of norms of elements, rather than some ideal or divisor class group as in the global case. Since the multiplicative group of a local field is far better understood than the ideal group of a global field, the theory is much more explicit and easier in the local case.
In contrast to the case of global fields, the multiplicative group of both p-adic rings and fields has a well understood structure which can be computed by algorithms developed and implemented by S. Pauli [Pau06]. It should be noted that all the unit group related functions operate on fixed-precision rings only.
The principal units of a p-adic ring or field R are elements of the form 1 + π ZR where π is a uniformizing element of R and ZR is the ring of integers. This function returns a sequence of generators for this group.
The principal units of a p-adic ring or field R are elements of the form 1 + π ZR where π is a uniformizing element of R and ZR is the ring of integers. This function returns an abstract abelian group isomorphic to the group of principal units and an explicit isomorphism, ie. a map between the abstract group and the p-adic ring or field.
Given a p-adic ring R of fixed precision, this function computes an abstract abelian group isomorphic to the unit group as well as an explicit map between the abstract group and R.
Given a p-adic field F of fixed precision, this function computes an abstract abelian group isomorphic to the multiplicative group of F as well as an explicit map between the abstract group and F.
Given a p-adic ring with fixed precision, this function computes generators for its unit group.
Given a p-adic field with fixed precision, this function computes generators for its multiplicative group.
Given a l-adic field F, return the p-Selmer group, i.e., the group F * /F * p, as an abstract group, as well as the map from F * to the abstract group.
Given two p-adic field F/k the norm group of F in k, ie. the image of the norm map from F to k is the central object of local class field theory. Since the norm map will always operate on some multiplicative group, all functions in this section will take the map returned by UnitGroup as an argument as this then allows the convenient way of describing the norm group as a subgroup of some explicit finitely generated abelian group.
Given a p-adic ring or field R extending S and a description of the unit group of S encoded by a map m from some abstract abelian group to S as computed by UnitGroup, compute the image of the norm map as a subgroup. The map returned is the embedding map returned form the subgroup constructor.
Given a p-adic ring R defined over S, the unit group of S encoded by the map m as computed by UnitGroup(S) and some element b∈S, try to compute an element a∈R such that the norm of a equals b. In case such an element exists, it is returned as a second value.
Given two p-adic rings R and S and their unit groups UR and US as parameterized by the maps m1: UR to R and USto S as well as a subgroup G<US, compute the preimage of G under the norm map operating on the unit groups.
Given two p-adic rings R and S and their unit groups UR and US as parameterized by the maps m1: UR to R and USto S as well as a subgroup G<UR, compute the image of G under the norm map operating on the unit groups.
Given two p-adic rings R and S and their unit groups UR and US as parameterized by the maps m1: UR to R and USto S compute the kernel of the norm map from UR to US as a subgroup of UR.
Class fields, that is abelian extensions are parameterized by their norm groups. Pauli, in [Pau06] gave explicit algorithms to solve the reverse problem of class field theory: given a suitable subgroup of some (abstractly given) multiplicatively group of some p-adic field, compute explicit defining equations for the class field.
Given a p-adic field S and its multiplicative group US specified by the map m: US to S and a suitable subgroup G<US, this function computes for each cyclic factor of US/G an explicit defining equation for the class field corresponding to this factor.
Given a p-adic field S and its multiplicative group US specified by the map m: US to S and a suitable subgroup G<US, this function computes the valuation of the discriminant of the extension parameterized by G without computing explicit equations for it.