awhecmu/canonical-drafter-extract-mathlib huggingface dataset:
-- Module: Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
x : M
S : TopCat.Presheaf CommRingCat (TopCat.of M) := TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)
U : Opens M
hxU : x ∈ U
f : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯
hf :
  Ne (α := 𝕜)
    ((eval IM 𝓘(𝕜, 𝕜) M 𝕜 x : (a : (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u)) → 𝕜)
        ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u))
                (CC := CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
              (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
            f :
          (↑(S.stalk x) : Type u)) :
      𝕜)
    (0 : 𝕜)
hf' : Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU) : 𝕜) (0 : 𝕜)
V : Opens M
hUV : V ≤ U
hV₀f :
  ∀ y ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV),
    Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) y : 𝕜) (0 : 𝕜)
hV₀ : IsOpen[instTopologicalSpaceSubtype] (Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV))
hxV₀ :
  Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)
obtain :
  ∀ (x₀ : (↑(↑V : Set M) : Type u))
    (hxx₀ : Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV x₀ = Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU),
    x ∈ (↑V : Set M)
⊢ x ∈ (↑V : Set M)

Tactic:
obtain ⟨x₀, hxx₀⟩ := hxV₀
-- Module: Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
x : M
S : TopCat.Presheaf CommRingCat (TopCat.of M) := TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)
U : Opens M
hxU : x ∈ U
f : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯
hf :
  Ne (α := 𝕜)
    ((eval IM 𝓘(𝕜, 𝕜) M 𝕜 x : (a : (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u)) → 𝕜)
        ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u))
                (CC := CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
              (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
            f :
          (↑(S.stalk x) : Type u)) :
      𝕜)
    (0 : 𝕜)
hf' : Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU) : 𝕜) (0 : 𝕜)
V : Opens M
hUV : V ≤ U
hV₀f :
  ∀ y ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV),
    Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) y : 𝕜) (0 : 𝕜)
hV₀ : IsOpen[instTopologicalSpaceSubtype] (Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV))
x₀ : (↑(↑V : Set M) : Type u)
hxx₀ : Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV x₀ = Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU
⊢ (↑x₀ : M) ∈ (↑V : Set M)

Tactic:
x₀.2

Premises used: Subtype.property
-- Module: Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
x : M
S : TopCat.Presheaf CommRingCat (TopCat.of M) := TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)
U : Opens M
hxU : x ∈ U
f : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯
hf :
  Ne (α := 𝕜)
    ((eval IM 𝓘(𝕜, 𝕜) M 𝕜 x : (a : (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u)) → 𝕜)
        ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u))
                (CC := CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
              (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
            f :
          (↑(S.stalk x) : Type u)) :
      𝕜)
    (0 : 𝕜)
hf' : Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU) : 𝕜) (0 : 𝕜)
V : Opens M
hUV : V ≤ U
hV₀f :
  ∀ y ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV),
    Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) y : 𝕜) (0 : 𝕜)
hV₀ : IsOpen[instTopologicalSpaceSubtype] (Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV))
x₀ : (↑(↑V : Set M) : Type u)
hxx₀ : Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV x₀ = Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU
h : x = (↑x₀ : M)
⊢ x ∈ (↑V : Set M)

Tactic:
convert! x₀.2

Premises used: Subtype.property
-- Module: Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
x : M
S : TopCat.Presheaf CommRingCat (TopCat.of M) := TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)
U : Opens M
hxU : x ∈ U
f : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯
hf :
  Ne (α := 𝕜)
    ((eval IM 𝓘(𝕜, 𝕜) M 𝕜 x : (a : (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u)) → 𝕜)
        ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u))
                (CC := CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
              (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
            f :
          (↑(S.stalk x) : Type u)) :
      𝕜)
    (0 : 𝕜)
hf' : Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU) : 𝕜) (0 : 𝕜)
V : Opens M
hUV : V ≤ U
hV₀f :
  ∀ y ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV),
    Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) y : 𝕜) (0 : 𝕜)
hV₀ : IsOpen[instTopologicalSpaceSubtype] (Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV))
x₀ : (↑(↑V : Set M) : Type u)
hxx₀ : Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV x₀ = Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU
⊢ x = (↑x₀ : M)

Tactic:
congr_arg Subtype.val hxx₀.symm

Premises used: congr_arg, Eq.symm, Subtype.val
-- Module: Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
x : M
S : TopCat.Presheaf CommRingCat (TopCat.of M) := TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)
U : Opens M
hxU : x ∈ U
f : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯
hf :
  Ne (α := 𝕜)
    ((eval IM 𝓘(𝕜, 𝕜) M 𝕜 x : (a : (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u)) → 𝕜)
        ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u))
                (CC := CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
              (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
            f :
          (↑(S.stalk x) : Type u)) :
      𝕜)
    (0 : 𝕜)
hf' : Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU) : 𝕜) (0 : 𝕜)
V : Opens M
hUV : V ≤ U
hV₀f :
  ∀ y ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV),
    Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) y : 𝕜) (0 : 𝕜)
hV₀ : IsOpen[instTopologicalSpaceSubtype] (Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV))
x₀ : (↑(↑V : Set M) : Type u)
hxx₀ : Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV x₀ = Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU
⊢ x = (↑x₀ : M)

Tactic:
exact congr_arg Subtype.val hxx₀.symm

Premises used: congr_arg, Eq.symm, Subtype.val
-- Module: Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
x : M
S : TopCat.Presheaf CommRingCat (TopCat.of M) := TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)
U : Opens M
hxU : x ∈ U
f : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯
hf :
  Ne (α := 𝕜)
    ((eval IM 𝓘(𝕜, 𝕜) M 𝕜 x : (a : (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u)) → 𝕜)
        ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u))
                (CC := CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
              (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
            f :
          (↑(S.stalk x) : Type u)) :
      𝕜)
    (0 : 𝕜)
hf' : Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU) : 𝕜) (0 : 𝕜)
V : Opens M
hUV : V ≤ U
hV₀f :
  ∀ y ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV),
    Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) y : 𝕜) (0 : 𝕜)
hV₀ : IsOpen[instTopologicalSpaceSubtype] (Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV))
hxV₀ :
  Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)
⊢ x ∈ (↑V : Set M)

Tactic:
have hxV : x ∈ (V : Set M) := by
      obtain ⟨x₀, hxx₀⟩ := hxV₀
      convert! x₀.2
      exact congr_arg Subtype.val hxx₀.symm
-- Module: Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
x : M
S : TopCat.Presheaf CommRingCat (TopCat.of M) := TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)
U : Opens M
hxU : x ∈ U
f : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯
hf :
  Ne (α := 𝕜)
    ((eval IM 𝓘(𝕜, 𝕜) M 𝕜 x : (a : (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u)) → 𝕜)
        ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u))
                (CC := CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
              (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
            f :
          (↑(S.stalk x) : Type u)) :
      𝕜)
    (0 : 𝕜)
hf' : Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU) : 𝕜) (0 : 𝕜)
V : Opens M
hUV : V ≤ U
hV₀f :
  ∀ y ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV),
    Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) y : 𝕜) (0 : 𝕜)
hV₀ : IsOpen[instTopologicalSpaceSubtype] (Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV))
hxV₀ :
  Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)
hxV : x ∈ (↑V : Set M)
⊢ ∀ (y : ↥V), Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV y) : 𝕜) (0 : 𝕜)

Tactic:
have hVf : ∀ y : V, f (Set.inclusion hUV y) ≠ 0 :=
      fun y ↦ hV₀f (Set.inclusion hUV y) (Set.mem_range_self y)
-- Module: Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
x : M
S : TopCat.Presheaf CommRingCat (TopCat.of M) := TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)
U : Opens M
hxU : x ∈ U
f : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯
hf :
  Ne (α := 𝕜)
    ((eval IM 𝓘(𝕜, 𝕜) M 𝕜 x : (a : (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u)) → 𝕜)
        ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u))
                (CC := CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
              (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
            f :
          (↑(S.stalk x) : Type u)) :
      𝕜)
    (0 : 𝕜)
hf' : Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU) : 𝕜) (0 : 𝕜)
V : Opens M
hUV : V ≤ U
hV₀f :
  ∀ y ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV),
    Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) y : 𝕜) (0 : 𝕜)
hV₀ : IsOpen[instTopologicalSpaceSubtype] (Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV))
hxV₀ :
  Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)
hxV : x ∈ (↑V : Set M)
hVf :
  ∀ (y : ↥V), Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV y) : 𝕜) (0 : 𝕜)
mpr :
  IsUnit (M :=
    (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
      Type u))
    ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u)) (CC :=
            CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
          (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
        f :
      (↑(S.stalk x) : Type u))
mpr₁ :
  ContMDiff IM 𝓘(𝕜, 𝕜) (M' := 𝕜) ∞ ((⇑f : (a : ↥U) → 𝕜) ∘ Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)⁻¹
⊢ IsUnit (M :=
    (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
      Type u))
    ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u)) (CC :=
            CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
          (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
        f :
      (↑(S.stalk x) : Type u))

Tactic:
let g : C^∞⟮IM, V; 𝓘(𝕜), 𝕜⟯ := ⟨(f ∘ Set.inclusion hUV)⁻¹, ?_⟩
-- Module: Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
x : M
S : TopCat.Presheaf CommRingCat (TopCat.of M) := TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)
U : Opens M
hxU : x ∈ U
f : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯
hf :
  Ne (α := 𝕜)
    ((eval IM 𝓘(𝕜, 𝕜) M 𝕜 x : (a : (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u)) → 𝕜)
        ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u))
                (CC := CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
              (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
            f :
          (↑(S.stalk x) : Type u)) :
      𝕜)
    (0 : 𝕜)
hf' : Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU) : 𝕜) (0 : 𝕜)
V : Opens M
hUV : V ≤ U
hV₀f :
  ∀ y ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV),
    Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) y : 𝕜) (0 : 𝕜)
hV₀ : IsOpen[instTopologicalSpaceSubtype] (Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV))
hxV₀ :
  Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)
hxV : x ∈ (↑V : Set M)
hVf :
  ∀ (y : ↥V), Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV y) : 𝕜) (0 : 𝕜)
g : C^∞⟮IM, ↥V; 𝓘(𝕜, 𝕜), 𝕜⟯ :=
  Subtype.mk (p := fun (f : ↥V → 𝕜) ↦ ContMDiff IM 𝓘(𝕜, 𝕜) ∞ f)
    ((⇑f : (a : ↥U) → 𝕜) ∘ Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)⁻¹ ⋯
⊢ IsUnit (M :=
    (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
      Type u))
    ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u)) (CC :=
            CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
          (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
        f :
      (↑(S.stalk x) : Type u))

Tactic:
⟨⟨S.germ _ x (hxV) (ContMDiffMap.restrictRingHom IM 𝓘(𝕜) 𝕜 hUV f), S.germ _ x hxV g,
        ?_, ?_⟩, S.germ_res_apply hUV.hom x hxV f⟩

Premises used: CategoryTheory.ConcreteCategory.hom, ContMDiffMap.restrictRingHom, IsUnit, TopCat.Presheaf.germ, Units.mk, Exists.intro, modelWithCornersSelf, DFunLike.coe
-- Module: Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
x : M
S : TopCat.Presheaf CommRingCat (TopCat.of M) := TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)
U : Opens M
hxU : x ∈ U
f : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯
hf :
  Ne (α := 𝕜)
    ((eval IM 𝓘(𝕜, 𝕜) M 𝕜 x : (a : (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u)) → 𝕜)
        ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u))
                (CC := CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
              (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
            f :
          (↑(S.stalk x) : Type u)) :
      𝕜)
    (0 : 𝕜)
hf' : Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU) : 𝕜) (0 : 𝕜)
V : Opens M
hUV : V ≤ U
hV₀f :
  ∀ y ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV),
    Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) y : 𝕜) (0 : 𝕜)
hV₀ : IsOpen[instTopologicalSpaceSubtype] (Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV))
hxV₀ :
  Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)
hxV : x ∈ (↑V : Set M)
hVf :
  ∀ (y : ↥V), Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV y) : 𝕜) (0 : 𝕜)
g : C^∞⟮IM, ↥V; 𝓘(𝕜, 𝕜), 𝕜⟯ :=
  Subtype.mk (p := fun (f : ↥V → 𝕜) ↦ ContMDiff IM 𝓘(𝕜, 𝕜) ∞ f)
    ((⇑f : (a : ↥U) → 𝕜) ∘ Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)⁻¹ ⋯
⊢ Eq (α :=
    (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
      Type u))
    ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u)) (CC :=
            CommRingCat.carrier) (Y := S.stalk x) (S.germ V x hxV) :
          (a : (↑(S.obj (Opposite.op V)) : Type u)) →
            (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u))
        1 :
      (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
        Type u))
    (1 :
      (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
        Type u))

Tactic:
RingHom.map_one _

Premises used: RingHom.map_one
-- Module: Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
x : M
S : TopCat.Presheaf CommRingCat (TopCat.of M) := TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)
U : Opens M
hxU : x ∈ U
f : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯
hf :
  Ne (α := 𝕜)
    ((eval IM 𝓘(𝕜, 𝕜) M 𝕜 x : (a : (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u)) → 𝕜)
        ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u))
                (CC := CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
              (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
            f :
          (↑(S.stalk x) : Type u)) :
      𝕜)
    (0 : 𝕜)
hf' : Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU) : 𝕜) (0 : 𝕜)
V : Opens M
hUV : V ≤ U
hV₀f :
  ∀ y ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV),
    Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) y : 𝕜) (0 : 𝕜)
hV₀ : IsOpen[instTopologicalSpaceSubtype] (Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV))
hxV₀ :
  Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)
hxV : x ∈ (↑V : Set M)
hVf :
  ∀ (y : ↥V), Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV y) : 𝕜) (0 : 𝕜)
g : C^∞⟮IM, ↥V; 𝓘(𝕜, 𝕜), 𝕜⟯ :=
  Subtype.mk (p := fun (f : ↥V → 𝕜) ↦ ContMDiff IM 𝓘(𝕜, 𝕜) ∞ f)
    ((⇑f : (a : ↥U) → 𝕜) ∘ Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)⁻¹ ⋯
h :
  HMul.hMul (α := (↑(S.obj (Opposite.op V)) : Type u))
      ((ContMDiffMap.restrictRingHom IM 𝓘(𝕜, 𝕜) 𝕜 hUV : (a : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯) → C^∞⟮IM, ↥V; 𝓘(𝕜, 𝕜), 𝕜⟯) f :
        C^∞⟮IM, ↥V; 𝓘(𝕜, 𝕜), 𝕜⟯)
      g =
    1
⊢ Eq (α :=
    (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
      Type u))
    ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u)) (CC :=
            CommRingCat.carrier) (Y := S.stalk x) (S.germ V x hxV) :
          (a : (↑(S.obj (Opposite.op V)) : Type u)) →
            (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u))
        (HMul.hMul (α := (↑(S.obj (Opposite.op V)) : Type u))
          ((ContMDiffMap.restrictRingHom IM 𝓘(𝕜, 𝕜) 𝕜 hUV : (a : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯) → C^∞⟮IM, ↥V; 𝓘(𝕜, 𝕜), 𝕜⟯) f :
            C^∞⟮IM, ↥V; 𝓘(𝕜, 𝕜), 𝕜⟯)
          g) :
      (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
        Type u))
    (1 :
      (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
        Type u))

Tactic:
convert! RingHom.map_one _

Premises used: RingHom.map_one