Documentation

LeanPool.JacobianDiffgeo.Meromorphic.OrderEval

Order, canonical value, and holoRepr on germ classes (CC3, D3/D5) #

Unit: meromorphic-and-divisors (docs/design/meromorphic-and-divisors.md §4.4, proof plans §6.4/6.5).

theorem RS.limUnder_congr {α : Type u_2} {l : Filter α} {g g' : α} (h : g =ᶠ[l] g') :

limUnder respects EventuallyEq (via Filter.map_congr, since limUnder l f = lim (map f l)).

ord #

noncomputable def RS.MeroGermOn.ord {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} (φ : MeroGermOn X U) (x : X) :

Order of a germ class at a point; junk 0 unless IsOpen U ∧ x ∈ U (D3).

Equations
Instances For
    theorem RS.MeroGermOn.ord_apply_mk {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} (f : X) (hf : MeromorphicOnX f U) (x : X) :
    (mk f hf).ord x = if IsOpen U x U then ordAtX f x else 0
    @[simp]
    theorem RS.MeroGermOn.ord_mk {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} (hU : IsOpen U) (hx : x U) {f : X} {hf : MeromorphicOnX f U} :
    (mk f hf).ord x = ordAtX f x
    theorem RS.MeroGermOn.ord_restrict {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U V : Set X} (h : VU) (hV : IsOpen V) (hU : IsOpen U) {x : X} (hx : x V) (φ : MeroGermOn X U) :
    ((restrict h) φ).ord x = φ.ord x
    theorem RS.MeroGermOn.ord_zero {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} :
    ord 0 x = if IsOpen U x U then else 0
    theorem RS.MeroGermOn.ord_one {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} (hU : IsOpen U) (hx : x U) :
    ord 1 x = 0
    theorem RS.MeroGermOn.ord_add {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} (hU : IsOpen U) (hx : x U) (φ ψ : MeroGermOn X U) :
    min (φ.ord x) (ψ.ord x) (φ + ψ).ord x
    theorem RS.MeroGermOn.ord_add_of_ne {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} (hU : IsOpen U) (hx : x U) {φ ψ : MeroGermOn X U} (h : φ.ord x ψ.ord x) :
    (φ + ψ).ord x = min (φ.ord x) (ψ.ord x)
    theorem RS.MeroGermOn.ord_mul {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} (hU : IsOpen U) (hx : x U) (φ ψ : MeroGermOn X U) :
    (φ * ψ).ord x = φ.ord x + ψ.ord x
    theorem RS.MeroGermOn.ord_neg {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} (φ : MeroGermOn X U) :
    (-φ).ord x = φ.ord x
    theorem RS.MeroGermOn.ord_smul {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} {c : } (hU : IsOpen U) (hx : x U) (hc : c 0) (φ : MeroGermOn X U) :
    (c φ).ord x = φ.ord x
    theorem RS.MeroGermOn.ord_algebraMap {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} {c : } (hU : IsOpen U) (hx : x U) (hc : c 0) :
    ((algebraMap (MeroGermOn X U)) c).ord x = 0

    evalAt (D5) #

    noncomputable def RS.MeroGermOn.evalAt {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} (φ : MeroGermOn X U) (x : X) :

    Canonical value (D5): the limit along 𝓝[≠] x when 0 ≤ ord, junk 0 else.

    Equations
    Instances For
      theorem RS.MeroGermOn.evalAt_apply_mk {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} (f : X) (hf : MeromorphicOnX f U) (x : X) :
      (mk f hf).evalAt x = if (IsOpen U x U) 0 ordAtX f x then (nhdsWithin x {x}).limUnder f else 0
      theorem RS.MeroGermOn.tendsto_evalAt {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} (hU : IsOpen U) (hx : x U) (φ : MeroGermOn X U) (h : 0 φ.ord x) {f : X} {hf : MeromorphicOnX f U} (hrep : mk f hf = φ) :
      @[simp]
      theorem RS.MeroGermOn.evalAt_of_not_nonneg {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {φ : MeroGermOn X U} {x : X} (h : ¬0 φ.ord x) :
      φ.evalAt x = 0

      From here on, chart invariance is needed (ContMDiffAt/AnalyticAt bridges).

      theorem RS.MeroGermOn.evalAt_add {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} (hU : IsOpen U) (hx : x U) {φ ψ : MeroGermOn X U} (h1 : 0 φ.ord x) (h2 : 0 ψ.ord x) :
      (φ + ψ).evalAt x = φ.evalAt x + ψ.evalAt x
      theorem RS.MeroGermOn.evalAt_smul {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} {c : } [IsManifold (modelWithCornersSelf ) X] (hU : IsOpen U) (hx : x U) {φ : MeroGermOn X U} (h : 0 φ.ord x) :
      (c φ).evalAt x = c * φ.evalAt x
      theorem RS.MeroGermOn.evalAt_mul {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} (hU : IsOpen U) (hx : x U) {φ ψ : MeroGermOn X U} (h1 : 0 φ.ord x) (h2 : 0 ψ.ord x) :
      (φ * ψ).evalAt x = φ.evalAt x * ψ.evalAt x
      theorem RS.MeroGermOn.evalAt_restrict {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U V : Set X} (h : VU) (hV : IsOpen V) (hU : IsOpen U) {x : X} (hx : x V) (φ : MeroGermOn X U) :
      ((restrict h) φ).evalAt x = φ.evalAt x

      holoRepr (D5) #

      noncomputable def RS.MeroGermOn.holoRepr {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} (φ : MeroGermOn X U) :
      X

      CC3's holoRepr (D5): the canonical repaired representative.

      Equations
      Instances For
        theorem RS.MeroGermOn.holoRepr_eventuallyEq_nhdsNE {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} [IsManifold (modelWithCornersSelf ) X] (hU : IsOpen U) (hx : x U) (φ : MeroGermOn X U) {f : X} {hf : MeromorphicOnX f U} (hrep : mk f hf = φ) :

        holoRepr agrees with any representative off x (unconditionally on ord: near x the representative is automatically chart-analytic, MeromorphicAt.eventually_analyticAt).

        theorem RS.MeroGermOn.holoRepr_restrict {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U V : Set X} (h : VU) (hV : IsOpen V) (hU : IsOpen U) (φ : MeroGermOn X U) :
        theorem RS.MeroGermOn.continuousAt_holoRepr {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] {U : Set X} {x : X} [IsManifold (modelWithCornersSelf ) X] (hU : IsOpen U) (hx : x U) {φ : MeroGermOn X U} (h : 0 φ.ord x) :