Existence of W(k) and a ramified quadratic extension W(k)[√ p]
ProvedWittVector.exists_isDiscreteValuationRing_charZero_residueField_ringEquiv_and_sq_eq_of_isAlgClosedLet be a prime and let be an algebraically closed field of characteristic (lying in the lowest universe). The assertion is that one can find: a commutative ring which is a domain, a discrete valuation ring of characteristic zero, equipped with a -algebra structure such that the ideal generated by the image of in is maximal and is complete (and separated) for the adic topology of that ideal, together with a ring isomorphism from the residue field of onto ; and, over it, a second commutative ring which is again a domain, a discrete valuation ring of characteristic zero, carries an -algebra structure, is complete for the adic topology of its maximal ideal, and contains an element of the maximal ideal with equal to the image of the natural number under ; finally a surjective ring homomorphism whose composite with the structure map equals the reduction map followed by .
This packages the ring of -typical Witt vectors of an algebraically closed field of characteristic , which is an absolutely unramified complete discrete valuation ring of characteristic zero with residue field , together with the totally ramified quadratic extension and its reduction map to . It supplies the coefficient rings used by IsArtinianRing.exists_faithfullyFlat_isLocalHom_isAlgClosed_residueField_of_finite_residueField.
import Mathlib set_option maxHeartbeats 4000000 set_option synthInstance.maxHeartbeats 400000 set_option backward.isDefEq.respectTransparency.types false set_option autoImplicit false
theorem WittVector.exists_isDiscreteValuationRing_charZero_residueField_ringEquiv_and_sq_eq_of_isAlgClosed
(p : ℕ) [Fact p.Prime] (k : Type) [Field k] [IsAlgClosed k] [CharP k p] :
∃ (Onr : Type) (_ : CommRing Onr) (_ : IsDomain Onr) (_ : IsDiscreteValuationRing Onr) (_ : CharZero Onr)
(_ : Algebra ℤ_[p] Onr)
(_ : IsAdicComplete (Ideal.span {algebraMap ℤ_[p] Onr (p : ℤ_[p])}) Onr)
(_ : (Ideal.span {algebraMap ℤ_[p] Onr (p : ℤ_[p])}).IsMaximal)
(e : IsLocalRing.ResidueField Onr ≃+* k)
(O' : Type) (_ : CommRing O') (_ : IsDomain O') (_ : IsDiscreteValuationRing O') (_ : CharZero O')
(_ : Algebra Onr O') (_ : IsAdicComplete (IsLocalRing.maximalIdeal O') O')
(ϖ' : O') (_ : ϖ' ∈ IsLocalRing.maximalIdeal O') (_ : ϖ' * ϖ' = algebraMap Onr O' ((p : ℕ) : Onr))
(φ' : O' →+* k),
Function.Surjective φ' ∧ φ'.comp (algebraMap Onr O') = (e : IsLocalRing.ResidueField Onr →+* k).comp (IsLocalRing.residue Onr) := by sorry