import Mathlib import Definitions.Def_DedekindDomain_AdicValuation_InlineSpecific import Definitions.Def_Mathlib_Topology_Algebra_Valued_WithZeroMulInt import Definitions.Def_Mathlib_LinearAlgebra_Countable set_option maxHeartbeats 1200000 set_option synthInstance.maxHeartbeats 400000 section variable (K : Type*) [Field K] [NumberField K] open NumberField example (I : Ideal (๐“ž K)) (hI : I โ‰  0) : Finite ((๐“ž K) โงธ I) := Ideal.finiteQuotientOfFreeOfNeBot I hI open IsDedekindDomain variable (v : HeightOneSpectrum (๐“ž K)) open IsLocalRing instance NumberField.instFiniteResidueFieldAdicCompletionIntegers : Finite (ResidueField (v.adicCompletionIntegers K)) := by apply (HeightOneSpectrum.ResidueFieldEquivCompletionResidueField K v).toEquiv.finite_iff.mp exact Ideal.finiteQuotientOfFreeOfNeBot v.asIdeal v.ne_bot open scoped Valued in instance : Finite (๐“€[v.adicCompletion K]) := inferInstanceAs (Finite (ResidueField (v.adicCompletionIntegers K))) instance NumberField.instCompactSpaceAdicCompletionIntegers : CompactSpace (v.adicCompletionIntegers K) := Valued.WithZeroMulInt.integer_compactSpace (v.adicCompletion K) inferInstance (v.valuedAdicCompletion_surjective K) lemma NumberField.isCompactAdicCompletionIntegers : IsCompact (v.adicCompletionIntegers K : Set (v.adicCompletion K)) := by rw [isCompact_iff_compactSpace] exact instCompactSpaceAdicCompletionIntegers K v lemma NumberField.isOpenAdicCompletionIntegers : IsOpen (v.adicCompletionIntegers K : Set (v.adicCompletion K)) := Valued.isOpen_valuationSubring _ instance Rat.adicCompletion.locallyCompactSpace (v : HeightOneSpectrum (๐“ž โ„š)) : LocallyCompactSpace (v.adicCompletion โ„š) := (Rat.HeightOneSpectrum.adicCompletion.padicEquiv v).toHomeomorph.isClosedEmbedding |>.locallyCompactSpace instance (v : HeightOneSpectrum (๐“ž K)) : WeaklyLocallyCompactSpace (v.adicCompletion K) where exists_compact_mem_nhds x := open Pointwise in โŸจx +แตฅ ((v.adicCompletionIntegers K) : Set (v.adicCompletion K)), (isCompact_iff_compactSpace.mpr <| instCompactSpaceAdicCompletionIntegers K v).vadd x, ((isOpenAdicCompletionIntegers K v).vadd x).mem_nhds (Set.mem_vadd_set.mpr โŸจ0, by simpโŸฉ)โŸฉ instance (v : HeightOneSpectrum (๐“ž K)) : LocallyCompactSpace (v.adicCompletion K) := inferInstance example (v : HeightOneSpectrum (๐“ž K)) : SecondCountableTopology (v.adicCompletion K) := inferInstance end