ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- hasGroupoid_of_le
theorem hasGroupoid_of_le {G₁ G₂ : StructureGroupoid H} (h : HasGroupoid M G₁) (hle : G₁ ≤ G₂) :
    HasGroupoid M G₂ 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] {G₁ G₂ : StructureGroupoid H} (h : HasGroupoid M G₁) (hle : G₁ ≤ G₂)
Goal: HasGroupoid M G₂
-- hasGroupoid_inf_iff
theorem hasGroupoid_inf_iff {G₁ G₂ : StructureGroupoid H} : HasGroupoid M (G₁ ⊓ G₂) ↔
    HasGroupoid M G₁ ∧ HasGroupoid M G₂ 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] {G₁ G₂ : StructureGroupoid H}
Goal: HasGroupoid M (G₁ ⊓ G₂) ↔ HasGroupoid M G₁ ∧ HasGroupoid M G₂
-- hasGroupoid_of_pregroupoid
theorem hasGroupoid_of_pregroupoid (PG : Pregroupoid H) (h : ∀ {e e' : PartialHomeomorph M H},
    e ∈ atlas H M → e' ∈ atlas H M → PG.property (e.symm ≫ₕ e') (e.symm ≫ₕ e').source) :
    HasGroupoid M PG.groupoid 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] (PG : Pregroupoid H) (h :
  ∀ {e e' : PartialHomeomorph M H},
    e ∈ atlas H M → e' ∈ atlas H M → PG.property (↑(e.symm ≫ₕ e')) (e.symm ≫ₕ e').source)
Goal: HasGroupoid M PG.groupoid
-- StructureGroupoid.trans_restricted
theorem StructureGroupoid.trans_restricted {e e' : PartialHomeomorph M H} {G : StructureGroupoid H}
    (he : e ∈ atlas H M) (he' : e' ∈ atlas H M)
    [HasGroupoid M G] [ClosedUnderRestriction G] {s : Opens M} (hs : Nonempty s) :
    (e.subtypeRestr hs).symm ≫ₕ e'.subtypeRestr hs ∈ G 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] {e e' : PartialHomeomorph M H} {G : StructureGroupoid H} (he : e ∈ atlas H M) (he' : e' ∈ atlas H M) [HasGroupoid M G] [ClosedUnderRestriction G] {s : TopologicalSpace.Opens M} (hs : Nonempty ↥s)
Goal: (e.subtypeRestr hs).symm ≫ₕ e'.subtypeRestr hs ∈ G
-- StructureGroupoid.subset_maximalAtlas
theorem StructureGroupoid.subset_maximalAtlas [HasGroupoid M G] : atlas H M ⊆ G.maximalAtlas M 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] (G : StructureGroupoid H) [HasGroupoid M G]
Goal: atlas H M ⊆ StructureGroupoid.maximalAtlas M G
-- StructureGroupoid.chart_mem_maximalAtlas
theorem StructureGroupoid.chart_mem_maximalAtlas [HasGroupoid M G] (x : M) :
    chartAt H x ∈ G.maximalAtlas M 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] (G : StructureGroupoid H) [HasGroupoid M G] (x : M)
Goal: chartAt H x ∈ StructureGroupoid.maximalAtlas M G
-- mem_maximalAtlas_iff
theorem mem_maximalAtlas_iff {e : PartialHomeomorph M H} :
    e ∈ G.maximalAtlas M ↔ ∀ e' ∈ atlas H M, e.symm ≫ₕ e' ∈ G ∧ e'.symm ≫ₕ e ∈ G 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] {G : StructureGroupoid H} {e : PartialHomeomorph M H}
Goal: e ∈ StructureGroupoid.maximalAtlas M G ↔ ∀ e' ∈ atlas H M, e.symm ≫ₕ e' ∈ G ∧ e'.symm ≫ₕ e ∈ G
-- StructureGroupoid.compatible_of_mem_maximalAtlas
theorem StructureGroupoid.compatible_of_mem_maximalAtlas {e e' : PartialHomeomorph M H}
    (he : e ∈ G.maximalAtlas M) (he' : e' ∈ G.maximalAtlas M) : e.symm ≫ₕ e' ∈ G 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] {G : StructureGroupoid H} {e e' : PartialHomeomorph M H} (he : e ∈ StructureGroupoid.maximalAtlas M G) (he' : e' ∈ StructureGroupoid.maximalAtlas M G)
Goal: e.symm ≫ₕ e' ∈ G
-- StructureGroupoid.mem_maximalAtlas_of_eqOnSource
lemma StructureGroupoid.mem_maximalAtlas_of_eqOnSource {e e' : PartialHomeomorph M H} (h : e' ≈ e)
    (he : e ∈ G.maximalAtlas M) : e' ∈ G.maximalAtlas M 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] {G : StructureGroupoid H} {e e' : PartialHomeomorph M H} (h : e' ≈ e) (he : e ∈ StructureGroupoid.maximalAtlas M G)
Goal: e' ∈ StructureGroupoid.maximalAtlas M G
-- StructureGroupoid.id_mem_maximalAtlas
theorem StructureGroupoid.id_mem_maximalAtlas : PartialHomeomorph.refl H ∈ G.maximalAtlas H 
Arguments: {H : Type u} [TopologicalSpace H] (G : StructureGroupoid H)
Goal: PartialHomeomorph.refl H ∈ StructureGroupoid.maximalAtlas H G
-- StructureGroupoid.mem_maximalAtlas_of_mem_groupoid
theorem StructureGroupoid.mem_maximalAtlas_of_mem_groupoid {f : PartialHomeomorph H H}
    (hf : f ∈ G) : f ∈ G.maximalAtlas H 
Arguments: {H : Type u} [TopologicalSpace H] (G : StructureGroupoid H) {f : PartialHomeomorph H H} (hf : f ∈ G)
Goal: f ∈ StructureGroupoid.maximalAtlas H G
-- PartialHomeomorph.singletonChartedSpace_chartAt_eq
@[simp, mfld_simps]
theorem singletonChartedSpace_chartAt_eq (h : e.source = Set.univ) {x : α} :
    @chartAt H _ α _ (e.singletonChartedSpace h) x = e 
Arguments: {H : Type u} [TopologicalSpace H] {α : Type u_5} [TopologicalSpace α] (e : PartialHomeomorph α H) (h : e.source = Set.univ) {x : α}
Goal: chartAt H x = e
-- PartialHomeomorph.singletonChartedSpace_chartAt_source
theorem singletonChartedSpace_chartAt_source (h : e.source = Set.univ) {x : α} :
    (@chartAt H _ α _ (e.singletonChartedSpace h) x).source = Set.univ 
Arguments: {H : Type u} [TopologicalSpace H] {α : Type u_5} [TopologicalSpace α] (e : PartialHomeomorph α H) (h : e.source = Set.univ) {x : α}
Goal: (chartAt H x).source = Set.univ
-- PartialHomeomorph.singletonChartedSpace_mem_atlas_eq
theorem singletonChartedSpace_mem_atlas_eq (h : e.source = Set.univ) (e' : PartialHomeomorph α H)
    (h' : e' ∈ (e.singletonChartedSpace h).atlas) : e' = e 
Arguments: {H : Type u} [TopologicalSpace H] {α : Type u_5} [TopologicalSpace α] (e : PartialHomeomorph α H) (h : e.source = Set.univ) (e' : PartialHomeomorph α H) (h' : e' ∈ ChartedSpace.atlas)
Goal: e' = e
-- PartialHomeomorph.singleton_hasGroupoid
theorem singleton_hasGroupoid (h : e.source = Set.univ) (G : StructureGroupoid H)
    [ClosedUnderRestriction G] : @HasGroupoid _ _ _ _ (e.singletonChartedSpace h) G 
Arguments: {H : Type u} [TopologicalSpace H] {α : Type u_5} [TopologicalSpace α] (e : PartialHomeomorph α H) (h : e.source = Set.univ) (G : StructureGroupoid H) [ClosedUnderRestriction G]
Goal: HasGroupoid α G
-- OpenEmbedding.singletonChartedSpace_chartAt_eq
theorem singletonChartedSpace_chartAt_eq {f : α → H} (h : OpenEmbedding f) {x : α} :
    ⇑(@chartAt H _ α _ h.singletonChartedSpace x) = f 
Arguments: {H : Type u} [TopologicalSpace H] {α : Type u_5} [TopologicalSpace α] [Nonempty α] {f : α → H} (h : OpenEmbedding f) {x : α}
Goal: ↑(chartAt H x) = f
-- OpenEmbedding.singleton_hasGroupoid
theorem singleton_hasGroupoid {f : α → H} (h : OpenEmbedding f) (G : StructureGroupoid H)
    [ClosedUnderRestriction G] : @HasGroupoid _ _ _ _ h.singletonChartedSpace G 
Arguments: {H : Type u} [TopologicalSpace H] {α : Type u_5} [TopologicalSpace α] [Nonempty α] {f : α → H} (h : OpenEmbedding f) (G : StructureGroupoid H) [ClosedUnderRestriction G]
Goal: HasGroupoid α G
-- TopologicalSpace.Opens.chart_eq
lemma chart_eq {s : Opens M} (hs : Nonempty s) {e : PartialHomeomorph s H} (he : e ∈ atlas H s) :
    ∃ x : s, e = (chartAt H (x : M)).subtypeRestr hs 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] {s : TopologicalSpace.Opens M} (hs : Nonempty ↥s) {e : PartialHomeomorph (↥s) H} (he : e ∈ atlas H ↥s)
Goal: ∃ x, e = (chartAt H ↑x).subtypeRestr hs
-- TopologicalSpace.Opens.chart_eq'
-- XXX: can I unify this with `chart_eq`?
lemma chart_eq' {t : Opens H} (ht : Nonempty t) {e' : PartialHomeomorph t H}
    (he' : e' ∈ atlas H t) : ∃ x : t, e' = (chartAt H ↑x).subtypeRestr ht 
Arguments: {H : Type u} [TopologicalSpace H] {t : TopologicalSpace.Opens H} (ht : Nonempty ↥t) {e' : PartialHomeomorph (↥t) H} (he' : e' ∈ atlas H ↥t)
Goal: ∃ x, e' = (chartAt H ↑x).subtypeRestr ht
-- TopologicalSpace.Opens.chartAt_subtype_val_symm_eventuallyEq
theorem chartAt_subtype_val_symm_eventuallyEq (U : Opens M) {x : U} :
    (chartAt H x.val).symm =ᶠ[𝓝 (chartAt H x.val x.val)] Subtype.val ∘ (chartAt H x).symm 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] (U : TopologicalSpace.Opens M) {x : ↥U}
Goal: ↑(chartAt H ↑x).symm =ᶠ[𝓝 (↑(chartAt H ↑x) ↑x)] Subtype.val ∘ ↑(chartAt H x).symm
-- TopologicalSpace.Opens.chartAt_inclusion_symm_eventuallyEq
theorem chartAt_inclusion_symm_eventuallyEq {U V : Opens M} (hUV : U ≤ V) {x : U} :
    (chartAt H (Set.inclusion hUV x)).symm
    =ᶠ[𝓝 (chartAt H (Set.inclusion hUV x) (Set.inclusion hUV x))]
    Set.inclusion hUV ∘ (chartAt H x).symm 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] {U V : TopologicalSpace.Opens M} (hUV : U ≤ V) {x : ↥U}
Goal: ↑(chartAt H (Set.inclusion hUV x)).symm =ᶠ[𝓝 (↑(chartAt H (Set.inclusion hUV x)) (Set.inclusion hUV x))]
  Set.inclusion hUV ∘ ↑(chartAt H x).symm
-- StructureGroupoid.restriction_in_maximalAtlas
lemma StructureGroupoid.restriction_in_maximalAtlas {e : PartialHomeomorph M H}
    (he : e ∈ atlas H M) {s : Opens M} (hs : Nonempty s) {G : StructureGroupoid H} [HasGroupoid M G]
    [ClosedUnderRestriction G] : e.subtypeRestr hs ∈ G.maximalAtlas s 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] {e : PartialHomeomorph M H} (he : e ∈ atlas H M) {s : TopologicalSpace.Opens M} (hs : Nonempty ↥s) {G : StructureGroupoid H} [HasGroupoid M G] [ClosedUnderRestriction G]
Goal: e.subtypeRestr hs ∈ StructureGroupoid.maximalAtlas (↥s) G
-- Structomorph.mem_groupoid
-- Porting note(#5171): this linter isn't ported yet.
-- @[nolint has_nonempty_instance]
structure Structomorph (G : StructureGroupoid H) (M : Type*) (M' : Type*) [TopologicalSpace M]
  [TopologicalSpace M'] [ChartedSpace H M] [ChartedSpace H M'] extends Homeomorph M M' where
  mem_groupoid : ∀ c : PartialHomeomorph M H, ∀ c' : PartialHomeomorph M' H, c ∈ atlas H M →
    c' ∈ atlas H M' → c.symm ≫ₕ toHomeomorph.toPartialHomeomorph ≫ₕ c' ∈ G
Arguments: {H : Type u} [TopologicalSpace H] {G : StructureGroupoid H} {M : Type u_5} {M' : Type u_6} [TopologicalSpace M] [TopologicalSpace M'] [ChartedSpace H M] [ChartedSpace H M'] (self : Structomorph G M M') (c : PartialHomeomorph M H) (c' : PartialHomeomorph M' H)
Goal: c ∈ atlas H M → c' ∈ atlas H M' → c.symm ≫ₕ self.toPartialHomeomorph ≫ₕ c' ∈ G
-- StructureGroupoid.restriction_mem_maximalAtlas_subtype
theorem StructureGroupoid.restriction_mem_maximalAtlas_subtype
    {e : PartialHomeomorph M H} (he : e ∈ atlas H M)
    (hs : Nonempty e.source) [HasGroupoid M G] [ClosedUnderRestriction G] :
    let s := { carrier := e.source, is_open' := e.open_source : Opens M }
    let t := { carrier := e.target, is_open' := e.open_target : Opens H }
    ∀ c' ∈ atlas H t, e.toHomeomorphSourceTarget.toPartialHomeomorph ≫ₕ c' ∈ G.maximalAtlas s 
Arguments: {H : Type u} {M : Type u_2} [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] {G : StructureGroupoid H} {e : PartialHomeomorph M H} (he : e ∈ atlas H M) (hs : Nonempty ↑e.source) [HasGroupoid M G] [ClosedUnderRestriction G]
Goal: let s := { carrier := e.source, is_open' := ⋯ };
let t := { carrier := e.target, is_open' := ⋯ };
∀ c' ∈ atlas H ↥t, e.toHomeomorphSourceTarget.toPartialHomeomorph ≫ₕ c' ∈ StructureGroupoid.maximalAtlas (↥s) G
-- smoothOn_continuousLinearMapCoordChange
theorem smoothOn_continuousLinearMapCoordChange
    [SmoothVectorBundle F₁ E₁ IB] [SmoothVectorBundle F₂ E₂ IB] [MemTrivializationAtlas e₁]
    [MemTrivializationAtlas e₁'] [MemTrivializationAtlas e₂] [MemTrivializationAtlas e₂'] :
    SmoothOn IB 𝓘(𝕜, (F₁ →L[𝕜] F₂) →L[𝕜] F₁ →L[𝕜] F₂)
      (continuousLinearMapCoordChange (RingHom.id 𝕜) e₁ e₁' e₂ e₂')
      (e₁.baseSet ∩ e₂.baseSet ∩ (e₁'.baseSet ∩ e₂'.baseSet)) 
Arguments: {𝕜 : Type u_1} {B : Type u_2} {F₁ : Type u_3} {F₂ : Type u_4} {E₁ : B → Type u_6} {E₂ : B → Type u_7} [NontriviallyNormedField 𝕜] [(x : B) → AddCommGroup (E₁ x)] [(x : B) → Module 𝕜 (E₁ x)] [NormedAddCommGroup F₁] [NormedSpace 𝕜 F₁] [TopologicalSpace (Bundle.TotalSpace F₁ E₁)] [(x : B) → TopologicalSpace (E₁ x)] [(x : B) → AddCommGroup (E₂ x)] [(x : B) → Module 𝕜 (E₂ x)] [NormedAddCommGroup F₂] [NormedSpace 𝕜 F₂] [TopologicalSpace (Bundle.TotalSpace F₂ E₂)] [(x : B) → TopologicalSpace (E₂ x)] {EB : Type u_8} [NormedAddCommGroup EB] [NormedSpace 𝕜 EB] {HB : Type u_9} [TopologicalSpace HB] (IB : ModelWithCorners 𝕜 EB HB) [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F₁ E₁] [VectorBundle 𝕜 F₁ E₁] [FiberBundle F₂ E₂] [VectorBundle 𝕜 F₂ E₂] {e₁ e₁' : Trivialization F₁ Bundle.TotalSpace.proj} {e₂ e₂' : Trivialization F₂ Bundle.TotalSpace.proj} [SmoothVectorBundle F₁ E₁ IB] [SmoothVectorBundle F₂ E₂ IB] [MemTrivializationAtlas e₁] [MemTrivializationAtlas e₁'] [MemTrivializationAtlas e₂] [MemTrivializationAtlas e₂']
Goal: SmoothOn IB 𝓘(𝕜, (F₁ →L[𝕜] F₂) →L[𝕜] F₁ →L[𝕜] F₂)
  (Pretrivialization.continuousLinearMapCoordChange (RingHom.id 𝕜) e₁ e₁' e₂ e₂')
  (e₁.baseSet ∩ e₂.baseSet ∩ (e₁'.baseSet ∩ e₂'.baseSet))
-- hom_chart
theorem hom_chart (y₀ y : LE₁E₂) :
    chartAt (ModelProd HB (F₁ →L[𝕜] F₂)) y₀ y =
      (chartAt HB y₀.1 y.1, inCoordinates F₁ E₁ F₂ E₂ y₀.1 y.1 y₀.1 y.1 y.2) 
Arguments: {𝕜 : Type u_1} {B : Type u_2} {F₁ : Type u_3} {F₂ : Type u_4} {E₁ : B → Type u_6} {E₂ : B → Type u_7} [NontriviallyNormedField 𝕜] [(x : B) → AddCommGroup (E₁ x)] [(x : B) → Module 𝕜 (E₁ x)] [NormedAddCommGroup F₁] [NormedSpace 𝕜 F₁] [TopologicalSpace (Bundle.TotalSpace F₁ E₁)] [(x : B) → TopologicalSpace (E₁ x)] [(x : B) → AddCommGroup (E₂ x)] [(x : B) → Module 𝕜 (E₂ x)] [NormedAddCommGroup F₂] [NormedSpace 𝕜 F₂] [TopologicalSpace (Bundle.TotalSpace F₂ E₂)] [(x : B) → TopologicalSpace (E₂ x)] [∀ (x : B), TopologicalAddGroup (E₂ x)] [∀ (x : B), ContinuousSMul 𝕜 (E₂ x)] {HB : Type u_9} [TopologicalSpace HB] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F₁ E₁] [VectorBundle 𝕜 F₁ E₁] [FiberBundle F₂ E₂] [VectorBundle 𝕜 F₂ E₂] (y₀ y : LE₁E₂)
Goal: ↑(chartAt (ModelProd HB (F₁ →L[𝕜] F₂)) y₀) y =
  (↑(chartAt HB y₀.proj) y.proj, ContinuousLinearMap.inCoordinates F₁ E₁ F₂ E₂ y₀.proj y.proj y₀.proj y.proj y.snd)
-- contMDiffAt_hom_bundle
theorem contMDiffAt_hom_bundle (f : M → LE₁E₂) {x₀ : M} {n : ℕ∞} :
    ContMDiffAt IM (IB.prod 𝓘(𝕜, F₁ →L[𝕜] F₂)) n f x₀ ↔
      ContMDiffAt IM IB n (fun x => (f x).1) x₀ ∧
        ContMDiffAt IM 𝓘(𝕜, F₁ →L[𝕜] F₂) n
          (fun x => inCoordinates F₁ E₁ F₂ E₂ (f x₀).1 (f x).1 (f x₀).1 (f x).1 (f x).2) x₀ 
Arguments: {𝕜 : Type u_1} {B : Type u_2} {F₁ : Type u_3} {F₂ : Type u_4} {M : Type u_5} {E₁ : B → Type u_6} {E₂ : B → Type u_7} [NontriviallyNormedField 𝕜] [(x : B) → AddCommGroup (E₁ x)] [(x : B) → Module 𝕜 (E₁ x)] [NormedAddCommGroup F₁] [NormedSpace 𝕜 F₁] [TopologicalSpace (Bundle.TotalSpace F₁ E₁)] [(x : B) → TopologicalSpace (E₁ x)] [(x : B) → AddCommGroup (E₂ x)] [(x : B) → Module 𝕜 (E₂ x)] [NormedAddCommGroup F₂] [NormedSpace 𝕜 F₂] [TopologicalSpace (Bundle.TotalSpace F₂ E₂)] [(x : B) → TopologicalSpace (E₂ x)] [∀ (x : B), TopologicalAddGroup (E₂ x)] [∀ (x : B), ContinuousSMul 𝕜 (E₂ x)] {EB : Type u_8} [NormedAddCommGroup EB] [NormedSpace 𝕜 EB] {HB : Type u_9} [TopologicalSpace HB] {IB : ModelWithCorners 𝕜 EB HB} [TopologicalSpace B] [ChartedSpace HB B] {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace 𝕜 EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners 𝕜 EM HM} [TopologicalSpace M] [ChartedSpace HM M] [FiberBundle F₁ E₁] [VectorBundle 𝕜 F₁ E₁] [FiberBundle F₂ E₂] [VectorBundle 𝕜 F₂ E₂] (f : M → LE₁E₂) {x₀ : M} {n : ℕ∞}
Goal: ContMDiffAt IM (IB.prod 𝓘(𝕜, F₁ →L[𝕜] F₂)) n f x₀ ↔
  ContMDiffAt IM IB n (fun x => (f x).proj) x₀ ∧
    ContMDiffAt IM 𝓘(𝕜, F₁ →L[𝕜] F₂) n
      (fun x => ContinuousLinearMap.inCoordinates F₁ E₁ F₂ E₂ (f x₀).proj (f x).proj (f x₀).proj (f x).proj (f x).snd)
      x₀
-- smoothAt_hom_bundle
theorem smoothAt_hom_bundle (f : M → LE₁E₂) {x₀ : M} :
    SmoothAt IM (IB.prod 𝓘(𝕜, F₁ →L[𝕜] F₂)) f x₀ ↔
      SmoothAt IM IB (fun x => (f x).1) x₀ ∧
        SmoothAt IM 𝓘(𝕜, F₁ →L[𝕜] F₂)
          (fun x => inCoordinates F₁ E₁ F₂ E₂ (f x₀).1 (f x).1 (f x₀).1 (f x).1 (f x).2) x₀ 
Arguments: {𝕜 : Type u_1} {B : Type u_2} {F₁ : Type u_3} {F₂ : Type u_4} {M : Type u_5} {E₁ : B → Type u_6} {E₂ : B → Type u_7} [NontriviallyNormedField 𝕜] [(x : B) → AddCommGroup (E₁ x)] [(x : B) → Module 𝕜 (E₁ x)] [NormedAddCommGroup F₁] [NormedSpace 𝕜 F₁] [TopologicalSpace (Bundle.TotalSpace F₁ E₁)] [(x : B) → TopologicalSpace (E₁ x)] [(x : B) → AddCommGroup (E₂ x)] [(x : B) → Module 𝕜 (E₂ x)] [NormedAddCommGroup F₂] [NormedSpace 𝕜 F₂] [TopologicalSpace (Bundle.TotalSpace F₂ E₂)] [(x : B) → TopologicalSpace (E₂ x)] [∀ (x : B), TopologicalAddGroup (E₂ x)] [∀ (x : B), ContinuousSMul 𝕜 (E₂ x)] {EB : Type u_8} [NormedAddCommGroup EB] [NormedSpace 𝕜 EB] {HB : Type u_9} [TopologicalSpace HB] {IB : ModelWithCorners 𝕜 EB HB} [TopologicalSpace B] [ChartedSpace HB B] {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace 𝕜 EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners 𝕜 EM HM} [TopologicalSpace M] [ChartedSpace HM M] [FiberBundle F₁ E₁] [VectorBundle 𝕜 F₁ E₁] [FiberBundle F₂ E₂] [VectorBundle 𝕜 F₂ E₂] (f : M → LE₁E₂) {x₀ : M}
Goal: SmoothAt IM (IB.prod 𝓘(𝕜, F₁ →L[𝕜] F₂)) f x₀ ↔
  SmoothAt IM IB (fun x => (f x).proj) x₀ ∧
    SmoothAt IM 𝓘(𝕜, F₁ →L[𝕜] F₂)
      (fun x => ContinuousLinearMap.inCoordinates F₁ E₁ F₂ E₂ (f x₀).proj (f x).proj (f x₀).proj (f x).proj (f x).snd)
      x₀
-- LieAddGroup.smooth_neg
class LieAddGroup {𝕜 : Type*} [NontriviallyNormedField 𝕜] {H : Type*} [TopologicalSpace H]
    {E : Type*} [NormedAddCommGroup E] [NormedSpace 𝕜 E] (I : ModelWithCorners 𝕜 E H) (G : Type*)
    [AddGroup G] [TopologicalSpace G] [ChartedSpace H G] extends SmoothAdd I G : Prop where
    smooth_neg : Smooth I I fun a : G => -a
Arguments: {𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {H : Type u_2} [TopologicalSpace H] {E : Type u_3} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {I : ModelWithCorners 𝕜 E H} {G : Type u_4} [AddGroup G] [TopologicalSpace G] [ChartedSpace H G] [self : LieAddGroup I G]
Goal: Smooth I I fun a => -a
-- LieGroup.smooth_inv
@[to_additive]
class LieGroup {𝕜 : Type*} [NontriviallyNormedField 𝕜] {H : Type*} [TopologicalSpace H]
    {E : Type*} [NormedAddCommGroup E] [NormedSpace 𝕜 E] (I : ModelWithCorners 𝕜 E H) (G : Type*)
    [Group G] [TopologicalSpace G] [ChartedSpace H G] extends SmoothMul I G : Prop where
    smooth_inv : Smooth I I fun a : G => a⁻¹
Arguments: {𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {H : Type u_2} [TopologicalSpace H] {E : Type u_3} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {I : ModelWithCorners 𝕜 E H} {G : Type u_4} [Group G] [TopologicalSpace G] [ChartedSpace H G] [self : LieGroup I G]
Goal: Smooth I I fun a => a⁻¹
-- smooth_inv
@[to_additive "In an additive Lie group, inversion is a smooth map."]
theorem smooth_inv : Smooth I I fun x : G => x⁻¹ 
Arguments: {𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {H : Type u_2} [TopologicalSpace H] {E : Type u_3} [NormedAddCommGroup E] [NormedSpace 𝕜 E] (I : ModelWithCorners 𝕜 E H) {G : Type u_5} [TopologicalSpace G] [ChartedSpace H G] [Group G] [LieGroup I G]
Goal: Smooth I I fun x => x⁻¹
-- smooth_neg
@[to_additive "In an additive Lie group, inversion is a smooth map."]
theorem smooth_inv : Smooth I I fun x : G => x⁻¹ 
Arguments: {𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {H : Type u_2} [TopologicalSpace H] {E : Type u_3} [NormedAddCommGroup E] [NormedSpace 𝕜 E] (I : ModelWithCorners 𝕜 E H) {G : Type u_5} [TopologicalSpace G] [ChartedSpace H G] [AddGroup G] [LieAddGroup I G]
Goal: Smooth I I fun x => -x
-- topologicalAddGroup_of_lieAddGroup
@[to_additive "An additive Lie group is an additive topological group. This is not an instance for
technical reasons, see note [Design choices about smooth algebraic structures]."]
theorem topologicalGroup_of_lieGroup : TopologicalGroup G 
Arguments: {𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {H : Type u_2} [TopologicalSpace H] {E : Type u_3} [NormedAddCommGroup E] [NormedSpace 𝕜 E] (I : ModelWithCorners 𝕜 E H) {G : Type u_5} [TopologicalSpace G] [ChartedSpace H G] [AddGroup G] [LieAddGroup I G]
Goal: TopologicalAddGroup G
-- topologicalGroup_of_lieGroup
@[to_additive "An additive Lie group is an additive topological group. This is not an instance for
technical reasons, see note [Design choices about smooth algebraic structures]."]
theorem topologicalGroup_of_lieGroup : TopologicalGroup G 
Arguments: {𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {H : Type u_2} [TopologicalSpace H] {E : Type u_3} [NormedAddCommGroup E] [NormedSpace 𝕜 E] (I : ModelWithCorners 𝕜 E H) {G : Type u_5} [TopologicalSpace G] [ChartedSpace H G] [Group G] [LieGroup I G]
Goal: TopologicalGroup G
-- ContMDiffWithinAt.inv
@[to_additive]
theorem ContMDiffWithinAt.inv {f : M → G} {s : Set M} {x₀ : M}
    (hf : ContMDiffWithinAt I' I n f s x₀) : ContMDiffWithinAt I' I n (fun x => (f x)⁻¹) s x₀ 
Arguments: {𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {H : Type u_2} [TopologicalSpace H] {E : Type u_3} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {I : ModelWithCorners 𝕜 E H} {G : Type u_5} [TopologicalSpace G] [ChartedSpace H G] [Group G] [LieGroup I G] {E' : Type u_6} [NormedAddCommGroup E'] [NormedSpace 𝕜 E'] {H' : Type u_7} [TopologicalSpace H'] {I' : ModelWithCorners 𝕜 E' H'} {M : Type u_8} [TopologicalSpace M] [ChartedSpace H' M] {n : ℕ∞} {f : M → G} {s : Set M} {x₀ : M} (hf : ContMDiffWithinAt I' I n f s x₀)
Goal: ContMDiffWithinAt I' I n (fun x => (f x)⁻¹) s x₀
-- ContMDiffWithinAt.neg
@[to_additive]
theorem ContMDiffWithinAt.inv {f : M → G} {s : Set M} {x₀ : M}
    (hf : ContMDiffWithinAt I' I n f s x₀) : ContMDiffWithinAt I' I n (fun x => (f x)⁻¹) s x₀ 
Arguments: {𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {H : Type u_2} [TopologicalSpace H] {E : Type u_3} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {I : ModelWithCorners 𝕜 E H} {G : Type u_5} [TopologicalSpace G] [ChartedSpace H G] [AddGroup G] [LieAddGroup I G] {E' : Type u_6} [NormedAddCommGroup E'] [NormedSpace 𝕜 E'] {H' : Type u_7} [TopologicalSpace H'] {I' : ModelWithCorners 𝕜 E' H'} {M : Type u_8} [TopologicalSpace M] [ChartedSpace H' M] {n : ℕ∞} {f : M → G} {s : Set M} {x₀ : M} (hf : ContMDiffWithinAt I' I n f s x₀)
Goal: ContMDiffWithinAt I' I n (fun x => -f x) s x₀
-- ContMDiffAt.neg
@[to_additive]
theorem ContMDiffAt.inv {f : M → G} {x₀ : M} (hf : ContMDiffAt I' I n f x₀) :
    ContMDiffAt I' I n (fun x => (f x)⁻¹) x₀ 
Arguments: {𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {H : Type u_2} [TopologicalSpace H] {E : Type u_3} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {I : ModelWithCorners 𝕜 E H} {G : Type u_5} [TopologicalSpace G] [ChartedSpace H G] [AddGroup G] [LieAddGroup I G] {E' : Type u_6} [NormedAddCommGroup E'] [NormedSpace 𝕜 E'] {H' : Type u_7} [TopologicalSpace H'] {I' : ModelWithCorners 𝕜 E' H'} {M : Type u_8} [TopologicalSpace M] [ChartedSpace H' M] {n : ℕ∞} {f : M → G} {x₀ : M} (hf : ContMDiffAt I' I n f x₀)
Goal: ContMDiffAt I' I n (fun x => -f x) x₀
-- ContMDiffAt.inv
@[to_additive]
theorem ContMDiffAt.inv {f : M → G} {x₀ : M} (hf : ContMDiffAt I' I n f x₀) :
    ContMDiffAt I' I n (fun x => (f x)⁻¹) x₀ 
Arguments: {𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {H : Type u_2} [TopologicalSpace H] {E : Type u_3} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {I : ModelWithCorners 𝕜 E H} {G : Type u_5} [TopologicalSpace G] [ChartedSpace H G] [Group G] [LieGroup I G] {E' : Type u_6} [NormedAddCommGroup E'] [NormedSpace 𝕜 E'] {H' : Type u_7} [TopologicalSpace H'] {I' : ModelWithCorners 𝕜 E' H'} {M : Type u_8} [TopologicalSpace M] [ChartedSpace H' M] {n : ℕ∞} {f : M → G} {x₀ : M} (hf : ContMDiffAt I' I n f x₀)
Goal: ContMDiffAt I' I n (fun x => (f x)⁻¹) x₀
-- ContMDiffOn.inv
@[to_additive]
theorem ContMDiffOn.inv {f : M → G} {s : Set M} (hf : ContMDiffOn I' I n f s) :
    ContMDiffOn I' I n (fun x => (f x)⁻¹) s 
Arguments: {𝕜 : Type u_1} [NontriviallyNormedField 𝕜] {H : Type u_2} [TopologicalSpace H] {E : Type u_3} [NormedAddCommGroup E] [NormedSpace 𝕜 E] {I : ModelWithCorners 𝕜 E H} {G : Type u_5} [TopologicalSpace G] [ChartedSpace H G] [Group G] [LieGroup I G] {E' : Type u_6} [NormedAddCommGroup E'] [NormedSpace 𝕜 E'] {H' : Type u_7} [TopologicalSpace H'] {I' : ModelWithCorners 𝕜 E' H'} {M : Type u_8} [TopologicalSpace M] [ChartedSpace H' M] {n : ℕ∞} {f : M → G} {s : Set M} (hf : ContMDiffOn I' I n f s)
Goal: ContMDiffOn I' I n (fun x => (f x)⁻¹) s