Macaulay2 » Documentation
Packages » WittVectors :: WittVectors
next | previous | forward | backward | up | index | toc

WittVectors -- computations with finite-length Witt vectors

Description

This package implements finite-length Witt vectors over rings of positive characteristic. The main method is witt, which can be used to build Witt rings, Witt ring maps, and Witt ring elements; Witt ring elements can be added, multiplied, etc. The Frobenius and Verschiebung maps on Witt rings and Witt ring elements are also implemented. The package also includes methods for working with ideals in Witt rings, as well as a method giving an explicit presentation of a Witt ring as a finitely generated algebra over the integers. Finally, there are methods for finding the equations satisfied by the parameters of a Frobenius lift on a quotient of a polynomial ring, as well as computing quasi-F-splitting heights of complete intersections.

Authors

Version

This documentation describes version 0.01 of WittVectors, released April 29, 2026.

Citation

If you have used this package in your research, please cite it as follows:

@misc{WittVectorsSource,
  title = {{WittVectors: computations with Witt vectors, Frobenius lifts, and quasi-F-splittings. Version~0.01}},
  author = {Anne Fayolle and Abhay Goel and Devlin Mallory and Eamon Quinlan-Gallego and Teppei Takamatsu},
  howpublished = {A \emph{Macaulay2} package available at
    \url{https://github.com/Macaulay2/M2/tree/stable/M2/Macaulay2/packages}}
}

Exports

  • Types
  • Functions and commands
    • baseMap (missing documentation)
    • createEquations -- Finds explicit equations satisfied by the parameters of a Frobenius lift up to a given degree
    • explicit (missing documentation)
    • findFrobeniusLift -- Finds a random lift of the Frobenius
    • findFrobeniusLiftConstraints -- Finds the equations satisfied by a delta structure on a ring R
    • fSplittingHeight -- Finds the quasi-F-split height ht(S/I) of the quotient of the polynomial ring S=(ZZ/p)[x1,...,xn] by an ideal I generated by a regular sequence (f1,...,fm).
    • makeCoefficientFieldPrime (missing documentation)
    • unWitt -- Returns the underlying ring R of a Witt ring W_n(R)
    • verschiebung (missing documentation)
    • witt (missing documentation)
    • wittFrobenius (missing documentation)
    • wittIdeal -- Make an ideal in a Witt ring.
    • wittLength -- Returns the length of the Witt vectors in a given Witt ring
    • wittOverring -- Returns the n-th WittOverring of a ring R, or the overring of a witt ring.
    • wittOverringIdeal -- The expansion of the witt ideal to the witt overring.
    • wittOverringToTuple -- Converts an element of the explicit overring of a Witt ring into a tuple.
    • wittRingIdeal -- Returns the n-th witt ideal in explicit form.
    • wittRingToTuple -- Converts an element of the explicit presentation of a Witt ring into a tuple.
    • wittTupleToOverring -- Converts an element of a Witt ring to an element of the overring of its explicit presentation.
    • wittTupleToRing -- Converts an element of a Witt ring to an element of its explicit presentation.
  • Methods
    • - WittRingElement (missing documentation)
    • baseMap(WittRingMap) -- Returns the underlying RingMap of a WittRingMap
    • createEquations(ZZ,Ideal) (missing documentation)
    • createEquations(ZZ,Ring) (missing documentation)
    • createEquations(ZZ,RingElement) (missing documentation)
    • explicit(WittIdeal) -- Obtains the explicit version of a WittIdeal.
    • explicit(WittPolynomialRing) -- Expresses a WittPolynomialRing as a finitely generated algebra over the integers.
    • explicit(WittQuotientRing) -- Expresses a WittQuotientRing as a finitely generated algebra over the integers.
    • explicit(WittRingMap) (missing documentation)
    • findFrobeniusLift(ZZ,Ideal) (missing documentation)
    • findFrobeniusLift(ZZ,Ring) (missing documentation)
    • findFrobeniusLift(ZZ,RingElement) (missing documentation)
    • findFrobeniusLiftConstraints(Ideal) (missing documentation)
    • findFrobeniusLiftConstraints(Ring) (missing documentation)
    • findFrobeniusLiftConstraints(RingElement) (missing documentation)
    • fSplittingHeight(Ideal) (missing documentation)
    • generators(WittIdeal) -- Extract the generators of a WittIdeal.
    • length(WittRingElement) (missing documentation)
    • makeCoefficientFieldPrime(GaloisField) (missing documentation)
    • makeCoefficientFieldPrime(PolynomialRing) (missing documentation)
    • makeCoefficientFieldPrime(QuotientRing) (missing documentation)
    • net(WittIdeal) (missing documentation)
    • net(WittPolynomialRing) (missing documentation)
    • net(WittQuotientRing) (missing documentation)
    • net(WittRingElement) (missing documentation)
    • net(WittRingMap) (missing documentation)
    • random(ZZ,WittPolynomialRing) (missing documentation)
    • random(ZZ,WittQuotientRing) (missing documentation)
    • ring(WittRingElement) -- Returns the Witt ring that a WittRingElement belongs to
    • source(WittRingMap) (missing documentation)
    • substitute(ZZ,WittPolynomialRing) (missing documentation)
    • substitute(ZZ,WittQuotientRing) (missing documentation)
    • target(WittRingMap) (missing documentation)
    • toList(WittRingElement) -- Converts a WittRingElement into a List
    • trim(WittIdeal) (missing documentation)
    • truncate(ZZ,WittPolynomialRing) -- Crop Witt ring to the ring of Witt vectors of a given length
    • truncate(ZZ,WittQuotientRing) -- Crop Witt Quotient ring to the ring of Witt vectors of a given length
    • truncate(ZZ,WittRingElement) -- Crop Witt Vector to have a given length.
    • unWitt(WittPolynomialRing) -- see unWitt -- Returns the underlying ring R of a Witt ring W_n(R)
    • unWitt(WittQuotientRing) -- see unWitt -- Returns the underlying ring R of a Witt ring W_n(R)
    • verschiebung(WittRingElement) -- The Verschiebung map on an element
    • witt(List) -- Forms a WittRingElement from a list of ring elements
    • witt(ZZ,GaloisField) (missing documentation)
    • witt(ZZ,PolynomialRing) -- Builds a Witt ring.
    • witt(ZZ,QuotientRing) -- Forms the n-th Witt ring of a quotient ring
    • witt(ZZ,RingMap) -- The map induced on Witt rings by a RingMap.
    • witt(ZZ,ZZ,RingMap) -- The map induced on Witt rings by a RingMap.
    • wittFrobenius(WittPolynomialRing) -- The (Witt) Frobenius map of a Witt ring
    • wittFrobenius(WittQuotientRing) -- see wittFrobenius(WittPolynomialRing) -- The (Witt) Frobenius map of a Witt ring
    • wittFrobenius(WittRingElement) -- The (Witt) Frobenius map on an element
    • wittFrobenius(ZZ,Ring) -- The (Witt) Frobenius map on the Witt vectors of a ring
    • wittIdeal(List) -- see wittIdeal -- Make an ideal in a Witt ring.
    • wittIdeal(Sequence) -- see wittIdeal -- Make an ideal in a Witt ring.
    • wittIdeal(WittRingElement) -- see wittIdeal -- Make an ideal in a Witt ring.
    • WittIdeal * WittIdeal (missing documentation)
    • WittIdeal + WittIdeal (missing documentation)
    • WittIdeal == WittIdeal (missing documentation)
    • WittIdeal ^ ZZ (missing documentation)
    • wittLength(WittPolynomialRing) -- see wittLength -- Returns the length of the Witt vectors in a given Witt ring
    • wittLength(WittQuotientRing) -- see wittLength -- Returns the length of the Witt vectors in a given Witt ring
    • wittOverring(WittPolynomialRing) -- see wittOverring -- Returns the n-th WittOverring of a ring R, or the overring of a witt ring.
    • wittOverring(WittQuotientRing) -- see wittOverring -- Returns the n-th WittOverring of a ring R, or the overring of a witt ring.
    • wittOverring(ZZ,Ring) -- see wittOverring -- Returns the n-th WittOverring of a ring R, or the overring of a witt ring.
    • wittOverringIdeal(ZZ,Ideal) -- see wittOverringIdeal -- The expansion of the witt ideal to the witt overring.
    • wittOverringToTuple(RingElement) (missing documentation)
    • WittRingElement * WittRingElement -- Multiplication of WittRingElements.
    • WittRingElement * ZZ (missing documentation)
    • WittRingElement + WittRingElement -- Addition of WittRingElements.
    • WittRingElement - WittRingElement (missing documentation)
    • WittRingElement == WittRingElement (missing documentation)
    • WittRingElement == ZZ (missing documentation)
    • WittRingElement ^ ZZ (missing documentation)
    • WittRingElement | WittRingElement (missing documentation)
    • wittRingIdeal(ZZ,Ideal) -- see wittRingIdeal -- Returns the n-th witt ideal in explicit form.
    • WittRingMap * WittRingMap (missing documentation)
    • WittRingMap ^ ZZ (missing documentation)
    • WittRingMap WittRingElement (missing documentation)
    • wittRingToTuple(Ideal) (missing documentation)
    • wittRingToTuple(RingElement) (missing documentation)
    • wittTupleToOverring(WittRingElement) (missing documentation)
    • wittTupleToRing(WittRingElement) (missing documentation)
    • ZZ * WittRingElement (missing documentation)
    • ZZ _ WittPolynomialRing (missing documentation)
    • ZZ _ WittQuotientRing (missing documentation)
  • Symbols
    • MaxHeight (missing documentation)
    • Nontrivial (missing documentation)
    • overring (missing documentation)
    • overringMap (missing documentation)
    • PerturbationTerm (missing documentation)
    • truncation (missing documentation)
    • wittGenerators (missing documentation)
    • WittOverring (missing documentation)
    • WittRing (missing documentation)
    • wittSub (missing documentation)

For the programmer

The object WittVectors is a package, defined in WittVectors.m2, with auxiliary files in WittVectors/.


The source of this document is in /build/reproducible-path/macaulay2-1.26.05+ds/M2/Macaulay2/packages/WittVectors/Documentation.m2:12:0.