Fake \(p\)-adic embeddings¶
Let \(K\) and \(L\) be \(p\)-adic number fields. In this module we define a class
FakepAdicEmbedding
whose objects represent embeddings \(\phi:K\to L\) over
\(\mathbb{Q}_p\).
Here the \(p\)-adic number fields \(K\) and \(L\) are objects of the
class FakepAdicCompletion
. This means that \(K\) and \(L\) represented as pairs
\((K_0,v_K)\) and \((L_0,v_L)\), where e.g. \(K_0\) is a number field and \(v_K\) a
\(p\)-adic valuation on \(K_0\) such that \(K\) is the completion of \(K_0\) at \(v_K\).
In fact, we do not work with actual \(p\)-adic numbers.
Given an embedding \(\phi:K\to L\), there need not exist any embedding \(K_0\to L_0\) of the underlying number fields. Therefore, the embedding \(\phi\) has to be construced in a rather indirect way. Recall that \(K_0\) and \(L_0\) are absolute number fields generated by prime elements \(\pi_K\) and \(\pi_L\) over \(\mathbb{Q}\) (with respect to \(v_K\) and \(v_L\)). So an embedding \(\phi:K\to L\) is uniquely determined by a root of the absolute minimal polynomial \(P_K\) of \(\pi_K\) over \(\mathbb{Q}\) in \(L\). Such a root may be represented by a limit pseudo valuation \(v\) on the polynomial ring \(L_0[x]\) with \(v(P_K)=\infty\).
AUTHORS:
- Stefan Wewers (2017-08-30): initial version
EXAMPLES:
TO DO:
-
class
mclf.padic_extensions.fake_padic_embeddings.
FakepAdicEmbedding
(K, L, approximation=None)¶ Bases:
SageObject
Return an embedding of two \(p\)-adic number fields.
INPUT:
K
,L
– two \(p\)-adic number fields, given as objects ofFakepAdicCompletion
approximation
- an approximation of the desired emdding, orNone
(default:None
)
OUTPUT: an embedding of \(K\) into \(L\) which is approximated by
approximation
, orNone
if no such embedding exists.WARNING: to return
None
doesn’t make sense, because __init__ returns an instance ofFakepAdicEmbedding
.Internally, the embedding \(\phi\) is represented by a limit pseudo valuation \(v\) on \(L_0[x]\) such that \(v(P_K)=\infty\). Here \(K_0\) and \(L_0\) are the algebraic number fields underlying \(K\) and \(L\) and \(P_K\) is the minimal valuation of the canonical generator of \(K_0\) over \(\mathbb{Q}\).
An approximation of \(\phi\) is any discrete valuation \(v_0\) on \(L_0[x]\) which approximates \(v\). This may actually be \(v\) itself.
Note that the resulting embedding may not be unique, in which case an arbitrary embedding is chosen.
-
eval
(alpha, precision=2)¶ Evaluate this embedding on an element of this domain, or on a polynomial.
INPUT:
alpha
– an element of the domain of this embedding, or a polynomial over the underlying number field of the domainprecision
– a positive integer, or None (default:None
)
OUTPUT:
the image of
alpha
under this embedding \(\phi:K\to L\), with the guaranteed precisionprecision
.The element \(\alpha\) of \(K\) may be given as an element of the number field \(K_0\) underlying \(K\). In this case the image \(\phi(\alpha)\) will be given as an element of the number field \(L_0\) underlying \(L\), which is an approximation of the true value of \(\phi(\alpha)\) modulo \(p^N\), where \(N\) is the guaranteed precision. If
precision
is given then \(N\) is larger or equal toprecision
. Otherwise the internal precision of \(\phi\) is used (which only guarantees that \(\phi\) is uniquely determined).The element \(\alpha\) in \(K\) may also be given by a …
-
improve_approximation
(N=None)¶ Improve the underlying approximation of this embedding.
INPUT:
N
– a positive integer, orNone
(default:None
)
The effect of this method is that the underlying approximation of the limit valuation representing this embedding is improved. If
N
is given then this improvement will guarantee that for any integral element \(\alpha\) of the number field \(K_0\) underlying the domain \(K\) of this embedding, the value ofself.eval(alpha)
will agree with the true value \(\phi(\alpha)\) modulo \(p^N\).