The mploc software package

The mploc software package

Canonical lift

Using mploc, is is currently relatively easy to compute for instance the canonical lift (Teichmüller lift) of a given definition polynomial up to arbitrary precision.

Let K=\mathbb F_q be a finite field. Consider an unramified extension R of \mathbb Z_p . A given element \alpha\in K can be lifted to many different elements. The canonical lift of \alpha is the unique element of R which maps to \alpha in the residue field and which is at the same time a root of the polynomial X^q-X in R .

When the input data is an irreducible polynomial f(X) over \mathbb F_p , consider an extension K of \mathbb F_p , and an unramified extension R of \mathbb Z_p having K as a residue field. The canonical lift of f(X) is the minimal polynomial of the canonical lift of \alpha in R , where \alpha is a root of f(X) in K . The canonical lift is defined over \mathbb Z_p .

The mploc distribution contains code in the demo/ directory, more precisely files teich1.c and teich2.c (see also the main calling code in teich.c), which compute the canonical lift of a given irreducible polynomial over \mathbb F_2 using various algorithms.

At present, the code in teich2.c in mploc-0.3 achieves the following timings for lifting a polynomial of degree 163 up to the given precision. Timings are in seconds on a 3.00GHz Intel Pentium 4 processor.

precisiontime
256 0.04
512 0.08
1024 0.17
2048 0.36
4096 0.78
8192 1.73
16384 3.95
32768 7.72
65536 22.33
Last modified: Mon Oct 02 16:12:39 CEST 2006

20052006 Emmanuel Thomé ; valid XHTML 1.0, valid CSS