Leading terms of Witt vector multiplication #
The goal of this file is to study the leading terms of the formula for the n+1
st coefficient
of a product of Witt vectors x
and y
over a ring of characteristic p
.
We aim to isolate the n+1
st coefficients of x
and y
, and express the rest of the product
in terms of a function of the lower coefficients.
For most of this file we work with terms of type MvPolynomial (Fin 2 × ℕ) ℤ
.
We will eventually evaluate them in k
, but first we must take care of a calculation
that needs to happen in characteristic 0.
Main declarations #
WittVector.nth_mul_coeff
: expresses the coefficient of a product of Witt vectors in terms of the previous coefficients of the multiplicands.
(∑ i in range n, (y.coeff i)^(p^(n-i)) * p^i.val) *
(∑ i in range n, (y.coeff i)^(p^(n-i)) * p^i.val)
Equations
- WittVector.wittPolyProd p n = (MvPolynomial.rename (Prod.mk 0)) (wittPolynomial p ℤ n) * (MvPolynomial.rename (Prod.mk 1)) (wittPolynomial p ℤ n)
Instances For
The "remainder term" of WittVector.wittPolyProd
. See mul_polyOfInterest_aux2
.
Equations
- WittVector.wittPolyProdRemainder p n = Finset.sum (Finset.range n) fun (i : ℕ) => ↑p ^ i * WittVector.wittMul p i ^ p ^ (n - i)
Instances For
remainder p n
represents the remainder term from mul_polyOfInterest_aux3
.
wittPolyProd p (n+1)
will have variables up to n+1
,
but remainder
will only have variables up to n
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The characteristic p
version of peval_polyOfInterest
Produces the "remainder function" of the n+1
st coefficient, which does not depend on the n+1
st
coefficients of the inputs.
Equations
- One or more equations did not get rendered due to their size.