Documentation

Atlas.ArithmeticGeometry.code.Divisors

structure ClosedPointRes (k : Type u_1) [Field k] :
Type (max u_1 (u_2 + 1))
Instances For
    noncomputable def ClosedPointRes.degreePoint {k : Type u_1} [Field k] (P : ClosedPointRes k) :
    Instances For
      @[reducible, inline]
      abbrev CurveDivisor (C : Type u_1) :
      Type u_1
      Instances For
        noncomputable def CurveDivisor.coeff {C : Type u_1} (D : CurveDivisor C) (P : C) :
        Instances For
          noncomputable def CurveDivisor.divisorSupport {C : Type u_1} (D : CurveDivisor C) :
          Instances For
            noncomputable def CurveDivisor.degree (C : Type u_1) :
            Instances For
              @[simp]
              theorem CurveDivisor.degree_single {C : Type u_1} (P : C) (n : ) :
              ((degree C) fun₀ | P => n) = n
              @[simp]
              theorem CurveDivisor.degree_zero {C : Type u_1} :
              (degree C) 0 = 0
              @[simp]
              theorem CurveDivisor.degree_add {C : Type u_1} (D₁ D₂ : CurveDivisor C) :
              (degree C) (D₁ + D₂) = (degree C) D₁ + (degree C) D₂
              @[simp]
              theorem CurveDivisor.degree_neg {C : Type u_1} (D : CurveDivisor C) :
              (degree C) (-D) = -(degree C) D
              theorem CurveDivisor.degree_sub {C : Type u_1} (D₁ D₂ : CurveDivisor C) :
              (degree C) (D₁ - D₂) = (degree C) D₁ - (degree C) D₂
              theorem CurveDivisor.degree_eq_sum {C : Type u_1} (D : CurveDivisor C) :
              (degree C) D = Finsupp.sum D fun (x : C) (n : ) => n
              noncomputable def CurveDivisor.degreeWeighted {C : Type u_1} (deg : C) :
              Instances For
                theorem CurveDivisor.degreeWeighted_sub {C : Type u_1} (deg : C) (D₁ D₂ : CurveDivisor C) :
                (degreeWeighted deg) (D₁ - D₂) = (degreeWeighted deg) D₁ - (degreeWeighted deg) D₂
                theorem CurveDivisor.degreeWeighted_eq_sum {C : Type u_1} (deg : C) (D : CurveDivisor C) :
                (degreeWeighted deg) D = Finsupp.sum D fun (p : C) (n : ) => n * (deg p)
                @[implicit_reducible]
                noncomputable instance CurveDivisor.galoisSMul {C : Type u_1} {G : Type u_2} [Group G] [MulAction G C] :
                @[implicit_reducible]
                noncomputable instance CurveDivisor.galoisMulAction {C : Type u_1} {G : Type u_2} [Group G] [MulAction G C] :
                def CurveDivisor.IsDefinedOverK {C : Type u_1} (G : Type u_3) [Group G] [MulAction G C] (D : CurveDivisor C) :
                Instances For
                  noncomputable def CurveDivisor.divZeros {C : Type u_1} (D : CurveDivisor C) :
                  Instances For
                    noncomputable def CurveDivisor.divPoles {C : Type u_1} (D : CurveDivisor C) :
                    Instances For
                      @[simp]
                      theorem CurveDivisor.divZeros_apply {C : Type u_1} (D : CurveDivisor C) (P : C) :
                      D.divZeros P = max (D P) 0
                      @[simp]
                      theorem CurveDivisor.divPoles_apply {C : Type u_1} (D : CurveDivisor C) (P : C) :
                      D.divPoles P = max (-D P) 0
                      theorem CurveDivisor.divZeros_nonneg {C : Type u_1} (D : CurveDivisor C) (P : C) :
                      theorem CurveDivisor.divPoles_nonneg {C : Type u_1} (D : CurveDivisor C) (P : C) :
                      @[reducible, inline]
                      abbrev ClosedPoint (G : Type u_1) (C : Type u_2) [Group G] [MulAction G C] :
                      Type u_2
                      Instances For
                        def ClosedPoint.mk {G : Type u_1} {C : Type u_2} [Group G] [MulAction G C] (P : C) :
                        Instances For
                          def ClosedPoint.toOrbit {G : Type u_1} {C : Type u_2} [Group G] [MulAction G C] (P : ClosedPoint G C) :
                          Set C
                          Instances For
                            theorem ClosedPoint.mk_eq_mk_iff {G : Type u_1} {C : Type u_2} [Group G] [MulAction G C] (P Q : C) :
                            noncomputable def degreeClosedPoint (k : Type u_1) (K : Type u_2) [Field k] [Field K] [Algebra k K] :
                            Instances For
                              @[reducible, inline]
                              abbrev RationalDivisor (G : Type u_1) (C : Type u_2) [Group G] [MulAction G C] :
                              Type u_2
                              Instances For
                                noncomputable def RationalDivisor.coeff {G : Type u_1} {C : Type u_2} [Group G] [MulAction G C] (D : RationalDivisor G C) (P : ClosedPoint G C) :
                                Instances For
                                  noncomputable def RationalDivisor.rationalDivisorSupport {G : Type u_1} {C : Type u_2} [Group G] [MulAction G C] (D : RationalDivisor G C) :
                                  Instances For
                                    class CurveWithOrd (C : Type u_1) (F : Type u_2) [Field F] :
                                    Type (max u_1 u_2)
                                    Instances
                                      class FunctionFieldCurve (C : Type u_1) (F : Type u_2) [Field F] extends CurveWithOrd C F :
                                      Type (max u_1 u_2)
                                      Instances
                                        theorem FunctionFieldCurve.coordRing_finite_support {C : Type u_1} {F : Type u_2} [Field F] [inst : FunctionFieldCurve C F] (f : Fˣ) (hf : isCoordRingElem C f) :
                                        theorem CurveWithOrd.ord_one {C : Type u_1} {F : Type u_2} [Field F] [CurveWithOrd C F] (P : C) :
                                        ord P 1 = 0
                                        theorem CurveWithOrd.ord_inv {C : Type u_1} {F : Type u_2} [Field F] [CurveWithOrd C F] (P : C) (f : Fˣ) :
                                        ord P f⁻¹ = -ord P f
                                        theorem ord_finite_support {C : Type u_1} {F : Type u_2} [Field F] [FunctionFieldCurve C F] (f : Fˣ) :
                                        noncomputable def CurveWithOrd.principalDivisor {C : Type u_1} {F : Type u_2} [Field F] [FunctionFieldCurve C F] (f : Fˣ) :
                                        Instances For
                                          @[simp]
                                          theorem CurveWithOrd.principalDivisor_apply {C : Type u_1} {F : Type u_2} [Field F] [FunctionFieldCurve C F] (f : Fˣ) (P : C) :
                                          Instances For
                                            noncomputable def CurveWithOrd.principalDivisors {C : Type u_1} {F : Type u_2} [Field F] [FunctionFieldCurve C F] :
                                            Instances For
                                              def CurveWithOrd.IsPrincipal {C : Type u_1} {F : Type u_2} [Field F] [FunctionFieldCurve C F] (D : CurveDivisor C) :
                                              Instances For
                                                theorem CurveWithOrd.isPrincipal_iff {C : Type u_1} {F : Type u_2} [Field F] [FunctionFieldCurve C F] (D : CurveDivisor C) :
                                                IsPrincipal D ∃ (f : Fˣ), principalDivisor f = D
                                                noncomputable def CurveWithOrd.divAddHom {C : Type u_1} {F : Type u_2} [Field F] [FunctionFieldCurve C F] :
                                                Instances For
                                                  @[reducible, inline]
                                                  abbrev CurveWithOrd.PicardGroup (C : Type u_3) (F : Type u_4) [Field F] [FunctionFieldCurve C F] :
                                                  Type u_3
                                                  Instances For
                                                    noncomputable def CurveWithOrd.toPicardGroup {C : Type u_1} {F : Type u_2} [Field F] [FunctionFieldCurve C F] :
                                                    Instances For
                                                      class CurveWithConstants (C : Type u_1) (k : Type u_2) (F : Type u_3) [Field k] [Field F] [Algebra k F] extends FunctionFieldCurve C F :
                                                      Type (max u_1 u_3)
                                                      Instances
                                                        theorem CurveWithConstants.ord_constant {C : Type u_1} {k : Type u_2} {F : Type u_3} [Field k] [Field F] [Algebra k F] [inst : CurveWithConstants C k F] (P : C) (a : kˣ) :
                                                        theorem CurveWithConstants.ker_div_eq_constants {C : Type u_1} {k : Type u_2} {F : Type u_3} [Field k] [Field F] [Algebra k F] [inst : CurveWithConstants C k F] (f : Fˣ) (hf : ∀ (P : C), CurveWithOrd.ord P f = 0) :
                                                        ∃ (a : kˣ), (Units.map (algebraMap k F)) a = f
                                                        noncomputable def CurveWithConstants.constantsEmb {k : Type u_2} {F : Type u_3} [Field k] [Field F] [Algebra k F] :
                                                        Instances For
                                                          @[simp]
                                                          theorem CurveWithConstants.constantsEmb_def {k : Type u_2} {F : Type u_3} [Field k] [Field F] [Algebra k F] (a : kˣ) :
                                                          theorem CurveWithConstants.exact_at_functionField {C : Type u_1} {k : Type u_2} {F : Type u_3} [Field k] [Field F] [Algebra k F] [CurveWithConstants C k F] (f : Fˣ) :
                                                          theorem triangle_equality_valuation {F : Type u_1} [Field F] {Γ₀ : Type u_2} [LinearOrderedAddCommMonoidWithTop Γ₀] (v : AddValuation F Γ₀) {x y : F} (h : v x v y) :
                                                          v (x + y) = min (v x) (v y)
                                                          structure FunctionFieldPlace (F : Type u_1) [Field F] (k : Type u_2) [Field k] :
                                                          Type (max u_1 u_2)
                                                          Instances For
                                                            @[reducible, inline]
                                                            abbrev FunctionFieldDivisor (F : Type u_1) [Field F] (k : Type u_2) [Field k] :
                                                            Type (max u_2 u_1)
                                                            Instances For
                                                              noncomputable def FunctionFieldDivisor.coeff {F : Type u_1} [Field F] {k : Type u_2} [Field k] (D : FunctionFieldDivisor F k) (P : FunctionFieldPlace F k) :
                                                              Instances For
                                                                noncomputable def FunctionFieldDivisor.divisorSupport {F : Type u_1} [Field F] {k : Type u_2} [Field k] (D : FunctionFieldDivisor F k) :
                                                                Instances For
                                                                  def ArithmeticGeometry.FunctionField_k.Morphism.ramificationIndex {F₁ : Type u_2} {F₂ : Type u_3} [Field F₁] [Field F₂] (φ : F₂ →+* F₁) (ordP : F₁ˣ) (tQ : F₂ˣ) :
                                                                  Instances For
                                                                    def ArithmeticGeometry.FunctionField_k.Morphism.IsUnramifiedAt {F₁ : Type u_2} {F₂ : Type u_3} [Field F₁] [Field F₂] (φ : F₂ →+* F₁) (ordP : F₁ˣ) (tQ : F₂ˣ) :
                                                                    Instances For
                                                                      def ArithmeticGeometry.FunctionField_k.Morphism.IsUnramified {F₁ : Type u_2} {F₂ : Type u_3} [Field F₁] [Field F₂] (φ : F₂ →+* F₁) (places : Type u_4) (ordAt : placesF₁ˣ) (uniformizerAt : placesF₂ˣ) :
                                                                      Instances For
                                                                        theorem CurveWithConstants.nonconstant_transcendental {C : Type u_4} {k : Type u_5} {F : Type u_6} [Field k] [Field F] [Algebra k F] [CurveWithConstants C k F] (f : Fˣ) (hf : ¬∃ (a : kˣ), constantsEmb a = f) :
                                                                        theorem CurveWithConstants.dedekind_realization_bridge_ax {C : Type u_4} {k : Type u_5} {F : Type u_6} [Field k] [Field F] [Algebra k F] [CurveWithConstants C k F] (f : Fˣ) (hf_trans : Transcendental k f) :
                                                                        theorem CurveWithConstants.sum_pos_ord_eq_degree_morphism {C : Type u_1} {k : Type u_2} {F : Type u_3} [Field k] [Field F] [Algebra k F] [CurveWithConstants C k F] (f : Fˣ) (hf_trans : Transcendental k f) :
                                                                        theorem CurveWithConstants.sum_pos_ord_eq_finrank {C : Type u_4} {k : Type u_5} {F : Type u_6} [Field k] [Field F] [Algebra k F] [CurveWithConstants C k F] (f : Fˣ) (hf : ¬∃ (a : kˣ), constantsEmb a = f) :
                                                                        theorem CurveWithConstants.theorem_19_22_divZeros {C : Type u_4} {k : Type u_5} {F : Type u_6} [Field k] [Field F] [Algebra k F] [CurveWithConstants C k F] (f : Fˣ) (hf : ¬∃ (a : kˣ), constantsEmb a = f) :
                                                                        theorem CurveWithConstants.not_constant_inv {k : Type u_2} {F : Type u_3} [Field k] [Field F] [Algebra k F] (f : Fˣ) (hf : ¬∃ (a : kˣ), constantsEmb a = f) :
                                                                        ¬∃ (a : kˣ), constantsEmb a = f⁻¹
                                                                        theorem CurveWithConstants.adjoin_inv_eq {k : Type u_2} {F : Type u_3} [Field k] [Field F] [Algebra k F] (f : Fˣ) :
                                                                        kf⁻¹ = kf
                                                                        structure CurveMorphismData (C₁ : Type u_1) (C₂ : Type u_2) :
                                                                        Type (max u_1 u_2)
                                                                        • toFun : C₁C₂
                                                                        • ramificationIndex : C₁

                                                                          The local ramification index e_P = d_P at a height-one prime P of the target ring, the multiplicity with which f^*(f(P)) contains P.

                                                                        • ramificationIndex : C₁
                                                                        • fiber : C₂Finset C₁
                                                                        • fiber_maps_to (Q : C₂) (P : C₁) : P self.fiber Qself.toFun P = Q
                                                                        • fiber_complete (Q : C₂) (P : C₁) : self.toFun P = QP self.fiber Q
                                                                        • residueFieldDegreeRatio : C₁
                                                                        Instances For
                                                                          noncomputable def CurveMorphismData.pullbackPoint {C₁ : Type u_1} {C₂ : Type u_2} (φ : CurveMorphismData C₁ C₂) (Q : C₂) :
                                                                          Instances For
                                                                            noncomputable def CurveMorphismData.pullback {C₁ : Type u_1} {C₂ : Type u_2} (φ : CurveMorphismData C₁ C₂) :
                                                                            Instances For
                                                                              noncomputable def CurveMorphismData.pushforward {C₁ : Type u_1} {C₂ : Type u_2} (φ : CurveMorphismData C₁ C₂) :
                                                                              Instances For
                                                                                @[simp]
                                                                                theorem CurveMorphismData.pushforward_single {C₁ : Type u_1} {C₂ : Type u_2} (φ : CurveMorphismData C₁ C₂) (P : C₁) (n : ) :
                                                                                (φ.pushforward fun₀ | P => n) = fun₀ | φ.toFun P => n
                                                                                noncomputable def CurveMorphismData.pushforwardGeneral {C₁ : Type u_1} {C₂ : Type u_2} (φ : CurveMorphismData C₁ C₂) :
                                                                                Instances For