geometry.manifold.vector_bundle.smooth_sectionMathlib.Geometry.Manifold.VectorBundle.SmoothSection

This file has been ported!

Changes since the initial port

The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(last sync)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -3,7 +3,7 @@ Copyright © 2023 Heather Macbeth. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Heather Macbeth, Floris van Doorn
 -/
-import Geometry.Manifold.ContMdiffMfderiv
+import Geometry.Manifold.ContMDiffMFDeriv
 import Topology.ContinuousFunction.Basic
 import Geometry.Manifold.Algebra.LieGroup
 
@@ -255,7 +255,7 @@ theorem coe_nsmul (s : Cₛ^n⟮I; F, V⟯) (k : ℕ) : ⇑(k • s : Cₛ^n⟮I
   by
   induction' k with k ih
   · simp_rw [zero_smul]; rfl
-  simp_rw [succ_nsmul, ← ih]; rfl
+  simp_rw [succ_nsmul', ← ih]; rfl
 #align cont_mdiff_section.coe_nsmul ContMDiffSection.coe_nsmul
 -/
 
@@ -271,7 +271,7 @@ theorem coe_zsmul (s : Cₛ^n⟮I; F, V⟯) (z : ℤ) : ⇑(z • s : Cₛ^n⟮I
   by
   cases' z with n n
   refine' (coe_nsmul s n).trans _
-  simp only [Int.ofNat_eq_coe, coe_nat_zsmul]
+  simp only [Int.ofNat_eq_coe, natCast_zsmul]
   refine' (congr_arg Neg.neg (coe_nsmul s (n + 1))).trans _
   simp only [negSucc_zsmul, neg_inj]
 #align cont_mdiff_section.coe_zsmul ContMDiffSection.coe_zsmul
Diff
@@ -3,9 +3,9 @@ Copyright © 2023 Heather Macbeth. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Heather Macbeth, Floris van Doorn
 -/
-import Mathbin.Geometry.Manifold.ContMdiffMfderiv
-import Mathbin.Topology.ContinuousFunction.Basic
-import Mathbin.Geometry.Manifold.Algebra.LieGroup
+import Geometry.Manifold.ContMdiffMfderiv
+import Topology.ContinuousFunction.Basic
+import Geometry.Manifold.Algebra.LieGroup
 
 #align_import geometry.manifold.vector_bundle.smooth_section from "leanprover-community/mathlib"@"1a51edf13debfcbe223fa06b1cb353b9ed9751cc"
 
Diff
@@ -133,8 +133,8 @@ theorem ext (h : ∀ x, s x = t x) : s = t := by cases s <;> cases t <;> congr <
 #align cont_mdiff_section.ext ContMDiffSection.ext
 -/
 
-#print ContMDiffSection.hasAdd /-
-instance hasAdd : Add Cₛ^n⟮I; F, V⟯ :=
+#print ContMDiffSection.instAdd /-
+instance instAdd : Add Cₛ^n⟮I; F, V⟯ :=
   by
   refine' ⟨fun s t => ⟨s + t, _⟩⟩
   intro x₀
@@ -146,7 +146,7 @@ instance hasAdd : Add Cₛ^n⟮I; F, V⟯ :=
   refine' eventually_of_mem (e.open_base_set.mem_nhds <| mem_base_set_trivialization_at F V x₀) _
   intro x hx
   apply (e.linear 𝕜 hx).1
-#align cont_mdiff_section.has_add ContMDiffSection.hasAdd
+#align cont_mdiff_section.has_add ContMDiffSection.instAdd
 -/
 
 #print ContMDiffSection.coe_add /-
@@ -156,8 +156,8 @@ theorem coe_add (s t : Cₛ^n⟮I; F, V⟯) : ⇑(s + t) = s + t :=
 #align cont_mdiff_section.coe_add ContMDiffSection.coe_add
 -/
 
-#print ContMDiffSection.hasSub /-
-instance hasSub : Sub Cₛ^n⟮I; F, V⟯ :=
+#print ContMDiffSection.instSub /-
+instance instSub : Sub Cₛ^n⟮I; F, V⟯ :=
   by
   refine' ⟨fun s t => ⟨s - t, _⟩⟩
   intro x₀
@@ -169,7 +169,7 @@ instance hasSub : Sub Cₛ^n⟮I; F, V⟯ :=
   refine' eventually_of_mem (e.open_base_set.mem_nhds <| mem_base_set_trivialization_at F V x₀) _
   intro x hx
   apply (e.linear 𝕜 hx).map_sub
-#align cont_mdiff_section.has_sub ContMDiffSection.hasSub
+#align cont_mdiff_section.has_sub ContMDiffSection.instSub
 -/
 
 #print ContMDiffSection.coe_sub /-
@@ -179,10 +179,10 @@ theorem coe_sub (s t : Cₛ^n⟮I; F, V⟯) : ⇑(s - t) = s - t :=
 #align cont_mdiff_section.coe_sub ContMDiffSection.coe_sub
 -/
 
-#print ContMDiffSection.hasZero /-
-instance hasZero : Zero Cₛ^n⟮I; F, V⟯ :=
+#print ContMDiffSection.instZero /-
+instance instZero : Zero Cₛ^n⟮I; F, V⟯ :=
   ⟨⟨fun x => 0, (smooth_zeroSection 𝕜 V).of_le le_top⟩⟩
-#align cont_mdiff_section.has_zero ContMDiffSection.hasZero
+#align cont_mdiff_section.has_zero ContMDiffSection.instZero
 -/
 
 #print ContMDiffSection.inhabited /-
@@ -198,8 +198,8 @@ theorem coe_zero : ⇑(0 : Cₛ^n⟮I; F, V⟯) = 0 :=
 #align cont_mdiff_section.coe_zero ContMDiffSection.coe_zero
 -/
 
-#print ContMDiffSection.hasSmul /-
-instance hasSmul : SMul 𝕜 Cₛ^n⟮I; F, V⟯ :=
+#print ContMDiffSection.instSMul /-
+instance instSMul : SMul 𝕜 Cₛ^n⟮I; F, V⟯ :=
   by
   refine' ⟨fun c s => ⟨c • s, _⟩⟩
   intro x₀
@@ -211,7 +211,7 @@ instance hasSmul : SMul 𝕜 Cₛ^n⟮I; F, V⟯ :=
   refine' eventually_of_mem (e.open_base_set.mem_nhds <| mem_base_set_trivialization_at F V x₀) _
   intro x hx
   apply (e.linear 𝕜 hx).2
-#align cont_mdiff_section.has_smul ContMDiffSection.hasSmul
+#align cont_mdiff_section.has_smul ContMDiffSection.instSMul
 -/
 
 #print ContMDiffSection.coe_smul /-
@@ -221,8 +221,8 @@ theorem coe_smul (r : 𝕜) (s : Cₛ^n⟮I; F, V⟯) : ⇑(r • s : Cₛ^n⟮I
 #align cont_mdiff_section.coe_smul ContMDiffSection.coe_smul
 -/
 
-#print ContMDiffSection.hasNeg /-
-instance hasNeg : Neg Cₛ^n⟮I; F, V⟯ :=
+#print ContMDiffSection.instNeg /-
+instance instNeg : Neg Cₛ^n⟮I; F, V⟯ :=
   by
   refine' ⟨fun s => ⟨-s, _⟩⟩
   intro x₀
@@ -233,7 +233,7 @@ instance hasNeg : Neg Cₛ^n⟮I; F, V⟯ :=
   refine' eventually_of_mem (e.open_base_set.mem_nhds <| mem_base_set_trivialization_at F V x₀) _
   intro x hx
   apply (e.linear 𝕜 hx).map_neg
-#align cont_mdiff_section.has_neg ContMDiffSection.hasNeg
+#align cont_mdiff_section.has_neg ContMDiffSection.instNeg
 -/
 
 #print ContMDiffSection.coe_neg /-
@@ -243,10 +243,10 @@ theorem coe_neg (s : Cₛ^n⟮I; F, V⟯) : ⇑(-s : Cₛ^n⟮I; F, V⟯) = -s :
 #align cont_mdiff_section.coe_neg ContMDiffSection.coe_neg
 -/
 
-#print ContMDiffSection.hasNsmul /-
-instance hasNsmul : SMul ℕ Cₛ^n⟮I; F, V⟯ :=
+#print ContMDiffSection.instNSMul /-
+instance instNSMul : SMul ℕ Cₛ^n⟮I; F, V⟯ :=
   ⟨nsmulRec⟩
-#align cont_mdiff_section.has_nsmul ContMDiffSection.hasNsmul
+#align cont_mdiff_section.has_nsmul ContMDiffSection.instNSMul
 -/
 
 #print ContMDiffSection.coe_nsmul /-
@@ -259,10 +259,10 @@ theorem coe_nsmul (s : Cₛ^n⟮I; F, V⟯) (k : ℕ) : ⇑(k • s : Cₛ^n⟮I
 #align cont_mdiff_section.coe_nsmul ContMDiffSection.coe_nsmul
 -/
 
-#print ContMDiffSection.hasZsmul /-
-instance hasZsmul : SMul ℤ Cₛ^n⟮I; F, V⟯ :=
+#print ContMDiffSection.instZSMul /-
+instance instZSMul : SMul ℤ Cₛ^n⟮I; F, V⟯ :=
   ⟨zsmulRec⟩
-#align cont_mdiff_section.has_zsmul ContMDiffSection.hasZsmul
+#align cont_mdiff_section.has_zsmul ContMDiffSection.instZSMul
 -/
 
 #print ContMDiffSection.coe_zsmul /-
@@ -277,10 +277,10 @@ theorem coe_zsmul (s : Cₛ^n⟮I; F, V⟯) (z : ℤ) : ⇑(z • s : Cₛ^n⟮I
 #align cont_mdiff_section.coe_zsmul ContMDiffSection.coe_zsmul
 -/
 
-#print ContMDiffSection.addCommGroup /-
-instance addCommGroup : AddCommGroup Cₛ^n⟮I; F, V⟯ :=
+#print ContMDiffSection.instAddCommGroup /-
+instance instAddCommGroup : AddCommGroup Cₛ^n⟮I; F, V⟯ :=
   coe_injective.AddCommGroup _ coe_zero coe_add coe_neg coe_sub coe_nsmul coe_zsmul
-#align cont_mdiff_section.add_comm_group ContMDiffSection.addCommGroup
+#align cont_mdiff_section.add_comm_group ContMDiffSection.instAddCommGroup
 -/
 
 variable (I F V n)
@@ -297,10 +297,10 @@ def coeAddHom : Cₛ^n⟮I; F, V⟯ →+ ∀ x, V x
 
 variable {I F V n}
 
-#print ContMDiffSection.module /-
-instance module : Module 𝕜 Cₛ^n⟮I; F, V⟯ :=
+#print ContMDiffSection.instModule /-
+instance instModule : Module 𝕜 Cₛ^n⟮I; F, V⟯ :=
   coe_injective.Module 𝕜 (coeAddHom I F n V) coe_smul
-#align cont_mdiff_section.module ContMDiffSection.module
+#align cont_mdiff_section.module ContMDiffSection.instModule
 -/
 
 end ContMDiffSection
Diff
@@ -2,16 +2,13 @@
 Copyright © 2023 Heather Macbeth. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Heather Macbeth, Floris van Doorn
-
-! This file was ported from Lean 3 source module geometry.manifold.vector_bundle.smooth_section
-! leanprover-community/mathlib commit 1a51edf13debfcbe223fa06b1cb353b9ed9751cc
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Geometry.Manifold.ContMdiffMfderiv
 import Mathbin.Topology.ContinuousFunction.Basic
 import Mathbin.Geometry.Manifold.Algebra.LieGroup
 
+#align_import geometry.manifold.vector_bundle.smooth_section from "leanprover-community/mathlib"@"1a51edf13debfcbe223fa06b1cb353b9ed9751cc"
+
 /-!
 # Smooth sections
 
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Heather Macbeth, Floris van Doorn
 
 ! This file was ported from Lean 3 source module geometry.manifold.vector_bundle.smooth_section
-! leanprover-community/mathlib commit e473c3198bb41f68560cab68a0529c854b618833
+! leanprover-community/mathlib commit 1a51edf13debfcbe223fa06b1cb353b9ed9751cc
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -15,6 +15,9 @@ import Mathbin.Geometry.Manifold.Algebra.LieGroup
 /-!
 # Smooth sections
 
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
 In this file we define the type `cont_mdiff_section` of `n` times continuously differentiable
 sections of a smooth vector bundle over a manifold `M` and prove that it's a module.
 -/
Diff
@@ -43,74 +43,97 @@ variable (F : Type _) [NormedAddCommGroup F] [NormedSpace 𝕜 F]
 variable [∀ x : M, TopologicalSpace (V x)] [FiberBundle F V] [VectorBundle 𝕜 F V]
   [SmoothVectorBundle F V I]
 
+#print ContMDiffSection /-
 /-- Bundled `n` times continuously differentiable sections of a vector bundle. -/
 @[protect_proj]
-structure ContMdiffSection where
+structure ContMDiffSection where
   toFun : ∀ x, V x
   contMDiff_toFun : ContMDiff I (I.Prod 𝓘(𝕜, F)) n fun x => (total_space.mk' F) x (to_fun x)
-#align cont_mdiff_section ContMdiffSection
+#align cont_mdiff_section ContMDiffSection
+-/
 
+#print SmoothSection /-
 /-- Bundled smooth sections of a vector bundle. -/
 @[reducible]
 def SmoothSection :=
-  ContMdiffSection I F ⊤ V
+  ContMDiffSection I F ⊤ V
 #align smooth_section SmoothSection
+-/
 
-scoped[Manifold] notation "Cₛ^" n "⟮" I "; " F ", " V "⟯" => ContMdiffSection I F n V
+scoped[Manifold] notation "Cₛ^" n "⟮" I "; " F ", " V "⟯" => ContMDiffSection I F n V
 
-namespace ContMdiffSection
+namespace ContMDiffSection
 
 variable {I} {I'} {n} {F} {V}
 
 instance : CoeFun Cₛ^n⟮I; F, V⟯ fun s => ∀ x, V x :=
-  ⟨ContMdiffSection.toFun⟩
+  ⟨ContMDiffSection.toFun⟩
 
 variable {s t : Cₛ^n⟮I; F, V⟯}
 
+#print ContMDiffSection.coeFn_mk /-
 @[simp]
 theorem coeFn_mk (s : ∀ x, V x)
     (hs : ContMDiff I (I.Prod 𝓘(𝕜, F)) n fun x => TotalSpace.mk x (s x)) :
     (mk s hs : ∀ x, V x) = s :=
   rfl
-#align cont_mdiff_section.coe_fn_mk ContMdiffSection.coeFn_mk
+#align cont_mdiff_section.coe_fn_mk ContMDiffSection.coeFn_mk
+-/
 
+#print ContMDiffSection.contMDiff /-
 protected theorem contMDiff (s : Cₛ^n⟮I; F, V⟯) :
     ContMDiff I (I.Prod 𝓘(𝕜, F)) n fun x => (total_space.mk' F) x (s x : V x) :=
   s.contMDiff_toFun
-#align cont_mdiff_section.cont_mdiff ContMdiffSection.contMDiff
+#align cont_mdiff_section.cont_mdiff ContMDiffSection.contMDiff
+-/
 
+#print ContMDiffSection.smooth /-
 protected theorem smooth (s : Cₛ^∞⟮I; F, V⟯) :
     Smooth I (I.Prod 𝓘(𝕜, F)) fun x => (total_space.mk' F) x (s x : V x) :=
   s.contMDiff_toFun
-#align cont_mdiff_section.smooth ContMdiffSection.smooth
+#align cont_mdiff_section.smooth ContMDiffSection.smooth
+-/
 
+#print ContMDiffSection.mdifferentiable' /-
 protected theorem mdifferentiable' (s : Cₛ^n⟮I; F, V⟯) (hn : 1 ≤ n) :
     MDifferentiable I (I.Prod 𝓘(𝕜, F)) fun x => (total_space.mk' F) x (s x : V x) :=
   s.ContMDiff.MDifferentiable hn
-#align cont_mdiff_section.mdifferentiable' ContMdiffSection.mdifferentiable'
+#align cont_mdiff_section.mdifferentiable' ContMDiffSection.mdifferentiable'
+-/
 
-protected theorem mDifferentiable (s : Cₛ^∞⟮I; F, V⟯) :
+#print ContMDiffSection.mdifferentiable /-
+protected theorem mdifferentiable (s : Cₛ^∞⟮I; F, V⟯) :
     MDifferentiable I (I.Prod 𝓘(𝕜, F)) fun x => (total_space.mk' F) x (s x : V x) :=
   s.ContMDiff.MDifferentiable le_top
-#align cont_mdiff_section.mdifferentiable ContMdiffSection.mDifferentiable
+#align cont_mdiff_section.mdifferentiable ContMDiffSection.mdifferentiable
+-/
 
-protected theorem mDifferentiableAt (s : Cₛ^∞⟮I; F, V⟯) {x} :
+#print ContMDiffSection.mdifferentiableAt /-
+protected theorem mdifferentiableAt (s : Cₛ^∞⟮I; F, V⟯) {x} :
     MDifferentiableAt I (I.Prod 𝓘(𝕜, F)) (fun x => (total_space.mk' F) x (s x : V x)) x :=
   s.MDifferentiable x
-#align cont_mdiff_section.mdifferentiable_at ContMdiffSection.mDifferentiableAt
+#align cont_mdiff_section.mdifferentiable_at ContMDiffSection.mdifferentiableAt
+-/
 
+#print ContMDiffSection.coe_inj /-
 theorem coe_inj ⦃s t : Cₛ^n⟮I; F, V⟯⦄ (h : (s : ∀ x, V x) = t) : s = t := by
   cases s <;> cases t <;> cases h <;> rfl
-#align cont_mdiff_section.coe_inj ContMdiffSection.coe_inj
+#align cont_mdiff_section.coe_inj ContMDiffSection.coe_inj
+-/
 
+#print ContMDiffSection.coe_injective /-
 theorem coe_injective : Injective (coeFn : Cₛ^n⟮I; F, V⟯ → ∀ x, V x) :=
   coe_inj
-#align cont_mdiff_section.coe_injective ContMdiffSection.coe_injective
+#align cont_mdiff_section.coe_injective ContMDiffSection.coe_injective
+-/
 
+#print ContMDiffSection.ext /-
 @[ext]
 theorem ext (h : ∀ x, s x = t x) : s = t := by cases s <;> cases t <;> congr <;> exact funext h
-#align cont_mdiff_section.ext ContMdiffSection.ext
+#align cont_mdiff_section.ext ContMDiffSection.ext
+-/
 
+#print ContMDiffSection.hasAdd /-
 instance hasAdd : Add Cₛ^n⟮I; F, V⟯ :=
   by
   refine' ⟨fun s t => ⟨s + t, _⟩⟩
@@ -123,13 +146,17 @@ instance hasAdd : Add Cₛ^n⟮I; F, V⟯ :=
   refine' eventually_of_mem (e.open_base_set.mem_nhds <| mem_base_set_trivialization_at F V x₀) _
   intro x hx
   apply (e.linear 𝕜 hx).1
-#align cont_mdiff_section.has_add ContMdiffSection.hasAdd
+#align cont_mdiff_section.has_add ContMDiffSection.hasAdd
+-/
 
+#print ContMDiffSection.coe_add /-
 @[simp]
 theorem coe_add (s t : Cₛ^n⟮I; F, V⟯) : ⇑(s + t) = s + t :=
   rfl
-#align cont_mdiff_section.coe_add ContMdiffSection.coe_add
+#align cont_mdiff_section.coe_add ContMDiffSection.coe_add
+-/
 
+#print ContMDiffSection.hasSub /-
 instance hasSub : Sub Cₛ^n⟮I; F, V⟯ :=
   by
   refine' ⟨fun s t => ⟨s - t, _⟩⟩
@@ -142,26 +169,36 @@ instance hasSub : Sub Cₛ^n⟮I; F, V⟯ :=
   refine' eventually_of_mem (e.open_base_set.mem_nhds <| mem_base_set_trivialization_at F V x₀) _
   intro x hx
   apply (e.linear 𝕜 hx).map_sub
-#align cont_mdiff_section.has_sub ContMdiffSection.hasSub
+#align cont_mdiff_section.has_sub ContMDiffSection.hasSub
+-/
 
+#print ContMDiffSection.coe_sub /-
 @[simp]
 theorem coe_sub (s t : Cₛ^n⟮I; F, V⟯) : ⇑(s - t) = s - t :=
   rfl
-#align cont_mdiff_section.coe_sub ContMdiffSection.coe_sub
+#align cont_mdiff_section.coe_sub ContMDiffSection.coe_sub
+-/
 
+#print ContMDiffSection.hasZero /-
 instance hasZero : Zero Cₛ^n⟮I; F, V⟯ :=
   ⟨⟨fun x => 0, (smooth_zeroSection 𝕜 V).of_le le_top⟩⟩
-#align cont_mdiff_section.has_zero ContMdiffSection.hasZero
+#align cont_mdiff_section.has_zero ContMDiffSection.hasZero
+-/
 
+#print ContMDiffSection.inhabited /-
 instance inhabited : Inhabited Cₛ^n⟮I; F, V⟯ :=
   ⟨0⟩
-#align cont_mdiff_section.inhabited ContMdiffSection.inhabited
+#align cont_mdiff_section.inhabited ContMDiffSection.inhabited
+-/
 
+#print ContMDiffSection.coe_zero /-
 @[simp]
 theorem coe_zero : ⇑(0 : Cₛ^n⟮I; F, V⟯) = 0 :=
   rfl
-#align cont_mdiff_section.coe_zero ContMdiffSection.coe_zero
+#align cont_mdiff_section.coe_zero ContMDiffSection.coe_zero
+-/
 
+#print ContMDiffSection.hasSmul /-
 instance hasSmul : SMul 𝕜 Cₛ^n⟮I; F, V⟯ :=
   by
   refine' ⟨fun c s => ⟨c • s, _⟩⟩
@@ -174,13 +211,17 @@ instance hasSmul : SMul 𝕜 Cₛ^n⟮I; F, V⟯ :=
   refine' eventually_of_mem (e.open_base_set.mem_nhds <| mem_base_set_trivialization_at F V x₀) _
   intro x hx
   apply (e.linear 𝕜 hx).2
-#align cont_mdiff_section.has_smul ContMdiffSection.hasSmul
+#align cont_mdiff_section.has_smul ContMDiffSection.hasSmul
+-/
 
+#print ContMDiffSection.coe_smul /-
 @[simp]
 theorem coe_smul (r : 𝕜) (s : Cₛ^n⟮I; F, V⟯) : ⇑(r • s : Cₛ^n⟮I; F, V⟯) = r • s :=
   rfl
-#align cont_mdiff_section.coe_smul ContMdiffSection.coe_smul
+#align cont_mdiff_section.coe_smul ContMDiffSection.coe_smul
+-/
 
+#print ContMDiffSection.hasNeg /-
 instance hasNeg : Neg Cₛ^n⟮I; F, V⟯ :=
   by
   refine' ⟨fun s => ⟨-s, _⟩⟩
@@ -192,29 +233,39 @@ instance hasNeg : Neg Cₛ^n⟮I; F, V⟯ :=
   refine' eventually_of_mem (e.open_base_set.mem_nhds <| mem_base_set_trivialization_at F V x₀) _
   intro x hx
   apply (e.linear 𝕜 hx).map_neg
-#align cont_mdiff_section.has_neg ContMdiffSection.hasNeg
+#align cont_mdiff_section.has_neg ContMDiffSection.hasNeg
+-/
 
+#print ContMDiffSection.coe_neg /-
 @[simp]
 theorem coe_neg (s : Cₛ^n⟮I; F, V⟯) : ⇑(-s : Cₛ^n⟮I; F, V⟯) = -s :=
   rfl
-#align cont_mdiff_section.coe_neg ContMdiffSection.coe_neg
+#align cont_mdiff_section.coe_neg ContMDiffSection.coe_neg
+-/
 
+#print ContMDiffSection.hasNsmul /-
 instance hasNsmul : SMul ℕ Cₛ^n⟮I; F, V⟯ :=
   ⟨nsmulRec⟩
-#align cont_mdiff_section.has_nsmul ContMdiffSection.hasNsmul
+#align cont_mdiff_section.has_nsmul ContMDiffSection.hasNsmul
+-/
 
+#print ContMDiffSection.coe_nsmul /-
 @[simp]
 theorem coe_nsmul (s : Cₛ^n⟮I; F, V⟯) (k : ℕ) : ⇑(k • s : Cₛ^n⟮I; F, V⟯) = k • s :=
   by
   induction' k with k ih
   · simp_rw [zero_smul]; rfl
   simp_rw [succ_nsmul, ← ih]; rfl
-#align cont_mdiff_section.coe_nsmul ContMdiffSection.coe_nsmul
+#align cont_mdiff_section.coe_nsmul ContMDiffSection.coe_nsmul
+-/
 
+#print ContMDiffSection.hasZsmul /-
 instance hasZsmul : SMul ℤ Cₛ^n⟮I; F, V⟯ :=
   ⟨zsmulRec⟩
-#align cont_mdiff_section.has_zsmul ContMdiffSection.hasZsmul
+#align cont_mdiff_section.has_zsmul ContMDiffSection.hasZsmul
+-/
 
+#print ContMDiffSection.coe_zsmul /-
 @[simp]
 theorem coe_zsmul (s : Cₛ^n⟮I; F, V⟯) (z : ℤ) : ⇑(z • s : Cₛ^n⟮I; F, V⟯) = z • s :=
   by
@@ -223,27 +274,34 @@ theorem coe_zsmul (s : Cₛ^n⟮I; F, V⟯) (z : ℤ) : ⇑(z • s : Cₛ^n⟮I
   simp only [Int.ofNat_eq_coe, coe_nat_zsmul]
   refine' (congr_arg Neg.neg (coe_nsmul s (n + 1))).trans _
   simp only [negSucc_zsmul, neg_inj]
-#align cont_mdiff_section.coe_zsmul ContMdiffSection.coe_zsmul
+#align cont_mdiff_section.coe_zsmul ContMDiffSection.coe_zsmul
+-/
 
+#print ContMDiffSection.addCommGroup /-
 instance addCommGroup : AddCommGroup Cₛ^n⟮I; F, V⟯ :=
   coe_injective.AddCommGroup _ coe_zero coe_add coe_neg coe_sub coe_nsmul coe_zsmul
-#align cont_mdiff_section.add_comm_group ContMdiffSection.addCommGroup
+#align cont_mdiff_section.add_comm_group ContMDiffSection.addCommGroup
+-/
 
 variable (I F V n)
 
+#print ContMDiffSection.coeAddHom /-
 /-- The additive morphism from smooth sections to dependent maps. -/
 def coeAddHom : Cₛ^n⟮I; F, V⟯ →+ ∀ x, V x
     where
   toFun := coeFn
   map_zero' := coe_zero
   map_add' := coe_add
-#align cont_mdiff_section.coe_add_hom ContMdiffSection.coeAddHom
+#align cont_mdiff_section.coe_add_hom ContMDiffSection.coeAddHom
+-/
 
 variable {I F V n}
 
+#print ContMDiffSection.module /-
 instance module : Module 𝕜 Cₛ^n⟮I; F, V⟯ :=
   coe_injective.Module 𝕜 (coeAddHom I F n V) coe_smul
-#align cont_mdiff_section.module ContMdiffSection.module
+#align cont_mdiff_section.module ContMDiffSection.module
+-/
 
-end ContMdiffSection
+end ContMDiffSection
 
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Heather Macbeth, Floris van Doorn
 
 ! This file was ported from Lean 3 source module geometry.manifold.vector_bundle.smooth_section
-! leanprover-community/mathlib commit f9ec187127cc5b381dfcf5f4a22dacca4c20b63d
+! leanprover-community/mathlib commit e473c3198bb41f68560cab68a0529c854b618833
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -22,7 +22,7 @@ sections of a smooth vector bundle over a manifold `M` and prove that it's a mod
 
 open Bundle Filter Function
 
-open scoped Manifold
+open scoped Bundle Manifold
 
 variable {𝕜 : Type _} [NontriviallyNormedField 𝕜] {E : Type _} [NormedAddCommGroup E]
   [NormedSpace 𝕜 E] {E' : Type _} [NormedAddCommGroup E'] [NormedSpace 𝕜 E'] {H : Type _}
@@ -35,7 +35,7 @@ variable {𝕜 : Type _} [NontriviallyNormedField 𝕜] {E : Type _} [NormedAddC
 variable (F : Type _) [NormedAddCommGroup F] [NormedSpace 𝕜 F]
   -- `F` model fiber
   (n : ℕ∞)
-  (V : M → Type _) [TopologicalSpace (TotalSpace V)]
+  (V : M → Type _) [TopologicalSpace (TotalSpace F V)]
   -- `V` vector bundle
   [∀ x, AddCommGroup (V x)]
   [∀ x, Module 𝕜 (V x)]
@@ -47,7 +47,7 @@ variable [∀ x : M, TopologicalSpace (V x)] [FiberBundle F V] [VectorBundle 
 @[protect_proj]
 structure ContMdiffSection where
   toFun : ∀ x, V x
-  contMDiff_toFun : ContMDiff I (I.Prod 𝓘(𝕜, F)) n fun x => totalSpaceMk x (to_fun x)
+  contMDiff_toFun : ContMDiff I (I.Prod 𝓘(𝕜, F)) n fun x => (total_space.mk' F) x (to_fun x)
 #align cont_mdiff_section ContMdiffSection
 
 /-- Bundled smooth sections of a vector bundle. -/
@@ -69,33 +69,33 @@ variable {s t : Cₛ^n⟮I; F, V⟯}
 
 @[simp]
 theorem coeFn_mk (s : ∀ x, V x)
-    (hs : ContMDiff I (I.Prod 𝓘(𝕜, F)) n fun x => totalSpaceMk x (s x)) :
+    (hs : ContMDiff I (I.Prod 𝓘(𝕜, F)) n fun x => TotalSpace.mk x (s x)) :
     (mk s hs : ∀ x, V x) = s :=
   rfl
 #align cont_mdiff_section.coe_fn_mk ContMdiffSection.coeFn_mk
 
 protected theorem contMDiff (s : Cₛ^n⟮I; F, V⟯) :
-    ContMDiff I (I.Prod 𝓘(𝕜, F)) n fun x => totalSpaceMk x (s x : V x) :=
+    ContMDiff I (I.Prod 𝓘(𝕜, F)) n fun x => (total_space.mk' F) x (s x : V x) :=
   s.contMDiff_toFun
 #align cont_mdiff_section.cont_mdiff ContMdiffSection.contMDiff
 
 protected theorem smooth (s : Cₛ^∞⟮I; F, V⟯) :
-    Smooth I (I.Prod 𝓘(𝕜, F)) fun x => totalSpaceMk x (s x : V x) :=
+    Smooth I (I.Prod 𝓘(𝕜, F)) fun x => (total_space.mk' F) x (s x : V x) :=
   s.contMDiff_toFun
 #align cont_mdiff_section.smooth ContMdiffSection.smooth
 
 protected theorem mdifferentiable' (s : Cₛ^n⟮I; F, V⟯) (hn : 1 ≤ n) :
-    MDifferentiable I (I.Prod 𝓘(𝕜, F)) fun x => totalSpaceMk x (s x : V x) :=
+    MDifferentiable I (I.Prod 𝓘(𝕜, F)) fun x => (total_space.mk' F) x (s x : V x) :=
   s.ContMDiff.MDifferentiable hn
 #align cont_mdiff_section.mdifferentiable' ContMdiffSection.mdifferentiable'
 
 protected theorem mDifferentiable (s : Cₛ^∞⟮I; F, V⟯) :
-    MDifferentiable I (I.Prod 𝓘(𝕜, F)) fun x => totalSpaceMk x (s x : V x) :=
+    MDifferentiable I (I.Prod 𝓘(𝕜, F)) fun x => (total_space.mk' F) x (s x : V x) :=
   s.ContMDiff.MDifferentiable le_top
 #align cont_mdiff_section.mdifferentiable ContMdiffSection.mDifferentiable
 
 protected theorem mDifferentiableAt (s : Cₛ^∞⟮I; F, V⟯) {x} :
-    MDifferentiableAt I (I.Prod 𝓘(𝕜, F)) (fun x => totalSpaceMk x (s x : V x)) x :=
+    MDifferentiableAt I (I.Prod 𝓘(𝕜, F)) (fun x => (total_space.mk' F) x (s x : V x)) x :=
   s.MDifferentiable x
 #align cont_mdiff_section.mdifferentiable_at ContMdiffSection.mDifferentiableAt
 
Diff
@@ -85,19 +85,19 @@ protected theorem smooth (s : Cₛ^∞⟮I; F, V⟯) :
 #align cont_mdiff_section.smooth ContMdiffSection.smooth
 
 protected theorem mdifferentiable' (s : Cₛ^n⟮I; F, V⟯) (hn : 1 ≤ n) :
-    Mdifferentiable I (I.Prod 𝓘(𝕜, F)) fun x => totalSpaceMk x (s x : V x) :=
-  s.ContMDiff.Mdifferentiable hn
+    MDifferentiable I (I.Prod 𝓘(𝕜, F)) fun x => totalSpaceMk x (s x : V x) :=
+  s.ContMDiff.MDifferentiable hn
 #align cont_mdiff_section.mdifferentiable' ContMdiffSection.mdifferentiable'
 
-protected theorem mdifferentiable (s : Cₛ^∞⟮I; F, V⟯) :
-    Mdifferentiable I (I.Prod 𝓘(𝕜, F)) fun x => totalSpaceMk x (s x : V x) :=
-  s.ContMDiff.Mdifferentiable le_top
-#align cont_mdiff_section.mdifferentiable ContMdiffSection.mdifferentiable
+protected theorem mDifferentiable (s : Cₛ^∞⟮I; F, V⟯) :
+    MDifferentiable I (I.Prod 𝓘(𝕜, F)) fun x => totalSpaceMk x (s x : V x) :=
+  s.ContMDiff.MDifferentiable le_top
+#align cont_mdiff_section.mdifferentiable ContMdiffSection.mDifferentiable
 
-protected theorem mdifferentiableAt (s : Cₛ^∞⟮I; F, V⟯) {x} :
-    MdifferentiableAt I (I.Prod 𝓘(𝕜, F)) (fun x => totalSpaceMk x (s x : V x)) x :=
-  s.Mdifferentiable x
-#align cont_mdiff_section.mdifferentiable_at ContMdiffSection.mdifferentiableAt
+protected theorem mDifferentiableAt (s : Cₛ^∞⟮I; F, V⟯) {x} :
+    MDifferentiableAt I (I.Prod 𝓘(𝕜, F)) (fun x => totalSpaceMk x (s x : V x)) x :=
+  s.MDifferentiable x
+#align cont_mdiff_section.mdifferentiable_at ContMdiffSection.mDifferentiableAt
 
 theorem coe_inj ⦃s t : Cₛ^n⟮I; F, V⟯⦄ (h : (s : ∀ x, V x) = t) : s = t := by
   cases s <;> cases t <;> cases h <;> rfl
Diff
@@ -47,7 +47,7 @@ variable [∀ x : M, TopologicalSpace (V x)] [FiberBundle F V] [VectorBundle 
 @[protect_proj]
 structure ContMdiffSection where
   toFun : ∀ x, V x
-  contMdiff_toFun : ContMdiff I (I.Prod 𝓘(𝕜, F)) n fun x => totalSpaceMk x (to_fun x)
+  contMDiff_toFun : ContMDiff I (I.Prod 𝓘(𝕜, F)) n fun x => totalSpaceMk x (to_fun x)
 #align cont_mdiff_section ContMdiffSection
 
 /-- Bundled smooth sections of a vector bundle. -/
@@ -69,29 +69,29 @@ variable {s t : Cₛ^n⟮I; F, V⟯}
 
 @[simp]
 theorem coeFn_mk (s : ∀ x, V x)
-    (hs : ContMdiff I (I.Prod 𝓘(𝕜, F)) n fun x => totalSpaceMk x (s x)) :
+    (hs : ContMDiff I (I.Prod 𝓘(𝕜, F)) n fun x => totalSpaceMk x (s x)) :
     (mk s hs : ∀ x, V x) = s :=
   rfl
 #align cont_mdiff_section.coe_fn_mk ContMdiffSection.coeFn_mk
 
-protected theorem contMdiff (s : Cₛ^n⟮I; F, V⟯) :
-    ContMdiff I (I.Prod 𝓘(𝕜, F)) n fun x => totalSpaceMk x (s x : V x) :=
-  s.contMdiff_toFun
-#align cont_mdiff_section.cont_mdiff ContMdiffSection.contMdiff
+protected theorem contMDiff (s : Cₛ^n⟮I; F, V⟯) :
+    ContMDiff I (I.Prod 𝓘(𝕜, F)) n fun x => totalSpaceMk x (s x : V x) :=
+  s.contMDiff_toFun
+#align cont_mdiff_section.cont_mdiff ContMdiffSection.contMDiff
 
 protected theorem smooth (s : Cₛ^∞⟮I; F, V⟯) :
     Smooth I (I.Prod 𝓘(𝕜, F)) fun x => totalSpaceMk x (s x : V x) :=
-  s.contMdiff_toFun
+  s.contMDiff_toFun
 #align cont_mdiff_section.smooth ContMdiffSection.smooth
 
 protected theorem mdifferentiable' (s : Cₛ^n⟮I; F, V⟯) (hn : 1 ≤ n) :
     Mdifferentiable I (I.Prod 𝓘(𝕜, F)) fun x => totalSpaceMk x (s x : V x) :=
-  s.ContMdiff.Mdifferentiable hn
+  s.ContMDiff.Mdifferentiable hn
 #align cont_mdiff_section.mdifferentiable' ContMdiffSection.mdifferentiable'
 
 protected theorem mdifferentiable (s : Cₛ^∞⟮I; F, V⟯) :
     Mdifferentiable I (I.Prod 𝓘(𝕜, F)) fun x => totalSpaceMk x (s x : V x) :=
-  s.ContMdiff.Mdifferentiable le_top
+  s.ContMDiff.Mdifferentiable le_top
 #align cont_mdiff_section.mdifferentiable ContMdiffSection.mdifferentiable
 
 protected theorem mdifferentiableAt (s : Cₛ^∞⟮I; F, V⟯) {x} :

Changes in mathlib4

mathlib3
mathlib4
chore: adapt to multiple goal linter 1 (#12338)

A PR accompanying #12339.

Zulip discussion

Diff
@@ -211,10 +211,10 @@ instance instZSMul : SMul ℤ Cₛ^n⟮I; F, V⟯ :=
 @[simp]
 theorem coe_zsmul (s : Cₛ^n⟮I; F, V⟯) (z : ℤ) : ⇑(z • s : Cₛ^n⟮I; F, V⟯) = z • ⇑s := by
   cases' z with n n
-  refine' (coe_nsmul s n).trans _
-  simp only [Int.ofNat_eq_coe, natCast_zsmul]
-  refine' (congr_arg Neg.neg (coe_nsmul s (n + 1))).trans _
-  simp only [negSucc_zsmul, neg_inj]
+  · refine' (coe_nsmul s n).trans _
+    simp only [Int.ofNat_eq_coe, natCast_zsmul]
+  · refine' (congr_arg Neg.neg (coe_nsmul s (n + 1))).trans _
+    simp only [negSucc_zsmul, neg_inj]
 #align cont_mdiff_section.coe_zsmul ContMDiffSection.coe_zsmul
 
 instance instAddCommGroup : AddCommGroup Cₛ^n⟮I; F, V⟯ :=
chore: Rename zpow_coe_nat to zpow_natCast (#11528)

... and add a deprecated alias for the old name. This is mostly just me discovering the power of F2

Diff
@@ -212,7 +212,7 @@ instance instZSMul : SMul ℤ Cₛ^n⟮I; F, V⟯ :=
 theorem coe_zsmul (s : Cₛ^n⟮I; F, V⟯) (z : ℤ) : ⇑(z • s : Cₛ^n⟮I; F, V⟯) = z • ⇑s := by
   cases' z with n n
   refine' (coe_nsmul s n).trans _
-  simp only [Int.ofNat_eq_coe, coe_nat_zsmul]
+  simp only [Int.ofNat_eq_coe, natCast_zsmul]
   refine' (congr_arg Neg.neg (coe_nsmul s (n + 1))).trans _
   simp only [negSucc_zsmul, neg_inj]
 #align cont_mdiff_section.coe_zsmul ContMDiffSection.coe_zsmul
doc: @[inherit_doc] on notations (#9942)

Make all the notations that unambiguously should inherit the docstring of their definition actually inherit it.

Also write a few docstrings by hand. I only wrote the ones I was competent to write and which I was sure of. Some docstrings come from mathlib3 as they were lost during the early port.

This PR is only intended as a first pass There are many more docstrings to add.

Diff
@@ -53,7 +53,7 @@ def SmoothSection :=
   ContMDiffSection I F ⊤ V
 #align smooth_section SmoothSection
 
-scoped[Manifold] notation "Cₛ^" n "⟮" I "; " F ", " V "⟯" => ContMDiffSection I F n V
+@[inherit_doc] scoped[Manifold] notation "Cₛ^" n "⟮" I "; " F ", " V "⟯" => ContMDiffSection I F n V
 
 namespace ContMDiffSection
 
chore(*): rename FunLike to DFunLike (#9785)

This prepares for the introduction of a non-dependent synonym of FunLike, which helps a lot with keeping #8386 readable.

This is entirely search-and-replace in 680197f combined with manual fixes in 4145626, e900597 and b8428f8. The commands that generated this change:

sed -i 's/\bFunLike\b/DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoFunLike\b/toDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/import Mathlib.Data.DFunLike/import Mathlib.Data.FunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bHom_FunLike\b/Hom_DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean     
sed -i 's/\binstFunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bfunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoo many metavariables to apply `fun_like.has_coe_to_fun`/too many metavariables to apply `DFunLike.hasCoeToFun`/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean

Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>

Diff
@@ -59,7 +59,7 @@ namespace ContMDiffSection
 
 variable {I} {I'} {n} {F} {V}
 
-instance : FunLike Cₛ^n⟮I; F, V⟯ M V where
+instance : DFunLike Cₛ^n⟮I; F, V⟯ M V where
   coe := ContMDiffSection.toFun
   coe_injective' := by rintro ⟨⟩ ⟨⟩ h; congr
 
@@ -98,7 +98,7 @@ protected theorem mdifferentiableAt (s : Cₛ^∞⟮I; F, V⟯) {x} :
 #align cont_mdiff_section.mdifferentiable_at ContMDiffSection.mdifferentiableAt
 
 theorem coe_inj ⦃s t : Cₛ^n⟮I; F, V⟯⦄ (h : (s : ∀ x, V x) = t) : s = t :=
-  FunLike.ext' h
+  DFunLike.ext' h
 #align cont_mdiff_section.coe_inj ContMDiffSection.coe_inj
 
 theorem coe_injective : Injective ((↑) : Cₛ^n⟮I; F, V⟯ → ∀ x, V x) :=
@@ -106,7 +106,7 @@ theorem coe_injective : Injective ((↑) : Cₛ^n⟮I; F, V⟯ → ∀ x, V x) :
 #align cont_mdiff_section.coe_injective ContMDiffSection.coe_injective
 
 @[ext]
-theorem ext (h : ∀ x, s x = t x) : s = t := FunLike.ext _ _ h
+theorem ext (h : ∀ x, s x = t x) : s = t := DFunLike.ext _ _ h
 #align cont_mdiff_section.ext ContMDiffSection.ext
 
 instance instAdd : Add Cₛ^n⟮I; F, V⟯ := by
chore: move Geometry/Manifold/MFDeriv (#9588)

To preserve most git history when splitting the file in #9565.

Diff
@@ -3,7 +3,7 @@ Copyright © 2023 Heather Macbeth. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Heather Macbeth, Floris van Doorn
 -/
-import Mathlib.Geometry.Manifold.MFDeriv
+import Mathlib.Geometry.Manifold.MFDeriv.Basic
 import Mathlib.Topology.ContinuousFunction.Basic
 import Mathlib.Geometry.Manifold.Algebra.LieGroup
 
chore: tidy various files (#6393)
Diff
@@ -109,7 +109,7 @@ theorem coe_injective : Injective ((↑) : Cₛ^n⟮I; F, V⟯ → ∀ x, V x) :
 theorem ext (h : ∀ x, s x = t x) : s = t := FunLike.ext _ _ h
 #align cont_mdiff_section.ext ContMDiffSection.ext
 
-instance hasAdd : Add Cₛ^n⟮I; F, V⟯ := by
+instance instAdd : Add Cₛ^n⟮I; F, V⟯ := by
   refine' ⟨fun s t => ⟨s + t, _⟩⟩
   intro x₀
   have hs := s.contMDiff x₀
@@ -120,14 +120,14 @@ instance hasAdd : Add Cₛ^n⟮I; F, V⟯ := by
   refine' eventually_of_mem (e.open_baseSet.mem_nhds <| mem_baseSet_trivializationAt F V x₀) _
   intro x hx
   apply (e.linear 𝕜 hx).1
-#align cont_mdiff_section.has_add ContMDiffSection.hasAdd
+#align cont_mdiff_section.has_add ContMDiffSection.instAdd
 
 @[simp]
 theorem coe_add (s t : Cₛ^n⟮I; F, V⟯) : ⇑(s + t) = ⇑s + t :=
   rfl
 #align cont_mdiff_section.coe_add ContMDiffSection.coe_add
 
-instance hasSub : Sub Cₛ^n⟮I; F, V⟯ := by
+instance instSub : Sub Cₛ^n⟮I; F, V⟯ := by
   refine' ⟨fun s t => ⟨s - t, _⟩⟩
   intro x₀
   have hs := s.contMDiff x₀
@@ -138,16 +138,16 @@ instance hasSub : Sub Cₛ^n⟮I; F, V⟯ := by
   refine' eventually_of_mem (e.open_baseSet.mem_nhds <| mem_baseSet_trivializationAt F V x₀) _
   intro x hx
   apply (e.linear 𝕜 hx).map_sub
-#align cont_mdiff_section.has_sub ContMDiffSection.hasSub
+#align cont_mdiff_section.has_sub ContMDiffSection.instSub
 
 @[simp]
 theorem coe_sub (s t : Cₛ^n⟮I; F, V⟯) : ⇑(s - t) = s - t :=
   rfl
 #align cont_mdiff_section.coe_sub ContMDiffSection.coe_sub
 
-instance hasZero : Zero Cₛ^n⟮I; F, V⟯ :=
+instance instZero : Zero Cₛ^n⟮I; F, V⟯ :=
   ⟨⟨fun _ => 0, (smooth_zeroSection 𝕜 V).of_le le_top⟩⟩
-#align cont_mdiff_section.has_zero ContMDiffSection.hasZero
+#align cont_mdiff_section.has_zero ContMDiffSection.instZero
 
 instance inhabited : Inhabited Cₛ^n⟮I; F, V⟯ :=
   ⟨0⟩
@@ -158,7 +158,7 @@ theorem coe_zero : ⇑(0 : Cₛ^n⟮I; F, V⟯) = 0 :=
   rfl
 #align cont_mdiff_section.coe_zero ContMDiffSection.coe_zero
 
-instance hasSmul : SMul 𝕜 Cₛ^n⟮I; F, V⟯ := by
+instance instSMul : SMul 𝕜 Cₛ^n⟮I; F, V⟯ := by
   refine' ⟨fun c s => ⟨c • ⇑s, _⟩⟩
   intro x₀
   have hs := s.contMDiff x₀
@@ -169,14 +169,14 @@ instance hasSmul : SMul 𝕜 Cₛ^n⟮I; F, V⟯ := by
   refine' eventually_of_mem (e.open_baseSet.mem_nhds <| mem_baseSet_trivializationAt F V x₀) _
   intro x hx
   apply (e.linear 𝕜 hx).2
-#align cont_mdiff_section.has_smul ContMDiffSection.hasSmul
+#align cont_mdiff_section.has_smul ContMDiffSection.instSMul
 
 @[simp]
 theorem coe_smul (r : 𝕜) (s : Cₛ^n⟮I; F, V⟯) : ⇑(r • s : Cₛ^n⟮I; F, V⟯) = r • ⇑s :=
   rfl
 #align cont_mdiff_section.coe_smul ContMDiffSection.coe_smul
 
-instance hasNeg : Neg Cₛ^n⟮I; F, V⟯ := by
+instance instNeg : Neg Cₛ^n⟮I; F, V⟯ := by
   refine' ⟨fun s => ⟨-s, _⟩⟩
   intro x₀
   have hs := s.contMDiff x₀
@@ -186,16 +186,16 @@ instance hasNeg : Neg Cₛ^n⟮I; F, V⟯ := by
   refine' eventually_of_mem (e.open_baseSet.mem_nhds <| mem_baseSet_trivializationAt F V x₀) _
   intro x hx
   apply (e.linear 𝕜 hx).map_neg
-#align cont_mdiff_section.has_neg ContMDiffSection.hasNeg
+#align cont_mdiff_section.has_neg ContMDiffSection.instNeg
 
 @[simp]
 theorem coe_neg (s : Cₛ^n⟮I; F, V⟯) : ⇑(-s : Cₛ^n⟮I; F, V⟯) = -s :=
   rfl
 #align cont_mdiff_section.coe_neg ContMDiffSection.coe_neg
 
-instance hasNsmul : SMul ℕ Cₛ^n⟮I; F, V⟯ :=
+instance instNSMul : SMul ℕ Cₛ^n⟮I; F, V⟯ :=
   ⟨nsmulRec⟩
-#align cont_mdiff_section.has_nsmul ContMDiffSection.hasNsmul
+#align cont_mdiff_section.has_nsmul ContMDiffSection.instNSMul
 
 @[simp]
 theorem coe_nsmul (s : Cₛ^n⟮I; F, V⟯) (k : ℕ) : ⇑(k • s : Cₛ^n⟮I; F, V⟯) = k • ⇑s := by
@@ -204,9 +204,9 @@ theorem coe_nsmul (s : Cₛ^n⟮I; F, V⟯) (k : ℕ) : ⇑(k • s : Cₛ^n⟮I
   simp_rw [succ_nsmul, ← ih]; rfl
 #align cont_mdiff_section.coe_nsmul ContMDiffSection.coe_nsmul
 
-instance hasZsmul : SMul ℤ Cₛ^n⟮I; F, V⟯ :=
+instance instZSMul : SMul ℤ Cₛ^n⟮I; F, V⟯ :=
   ⟨zsmulRec⟩
-#align cont_mdiff_section.has_zsmul ContMDiffSection.hasZsmul
+#align cont_mdiff_section.has_zsmul ContMDiffSection.instZSMul
 
 @[simp]
 theorem coe_zsmul (s : Cₛ^n⟮I; F, V⟯) (z : ℤ) : ⇑(z • s : Cₛ^n⟮I; F, V⟯) = z • ⇑s := by
@@ -217,9 +217,9 @@ theorem coe_zsmul (s : Cₛ^n⟮I; F, V⟯) (z : ℤ) : ⇑(z • s : Cₛ^n⟮I
   simp only [negSucc_zsmul, neg_inj]
 #align cont_mdiff_section.coe_zsmul ContMDiffSection.coe_zsmul
 
-instance addCommGroup : AddCommGroup Cₛ^n⟮I; F, V⟯ :=
+instance instAddCommGroup : AddCommGroup Cₛ^n⟮I; F, V⟯ :=
   coe_injective.addCommGroup _ coe_zero coe_add coe_neg coe_sub coe_nsmul coe_zsmul
-#align cont_mdiff_section.add_comm_group ContMDiffSection.addCommGroup
+#align cont_mdiff_section.add_comm_group ContMDiffSection.instAddCommGroup
 
 variable (I F V n)
 
@@ -232,9 +232,8 @@ def coeAddHom : Cₛ^n⟮I; F, V⟯ →+ ∀ x, V x where
 
 variable {I F V n}
 
-instance module : Module 𝕜 Cₛ^n⟮I; F, V⟯ :=
+instance instModule : Module 𝕜 Cₛ^n⟮I; F, V⟯ :=
   coe_injective.module 𝕜 (coeAddHom I F n V) coe_smul
-#align cont_mdiff_section.module ContMDiffSection.module
+#align cont_mdiff_section.module ContMDiffSection.instModule
 
 end ContMDiffSection
-
chore: banish Type _ and Sort _ (#6499)

We remove all possible occurences of Type _ and Sort _ in favor of Type* and Sort*.

This has nice performance benefits.

Diff
@@ -21,18 +21,18 @@ open Bundle Filter Function
 
 open scoped Bundle Manifold
 
-variable {𝕜 : Type _} [NontriviallyNormedField 𝕜] {E : Type _} [NormedAddCommGroup E]
-  [NormedSpace 𝕜 E] {E' : Type _} [NormedAddCommGroup E'] [NormedSpace 𝕜 E'] {H : Type _}
-  [TopologicalSpace H] {H' : Type _} [TopologicalSpace H'] (I : ModelWithCorners 𝕜 E H)
-  (I' : ModelWithCorners 𝕜 E' H') {M : Type _} [TopologicalSpace M] [ChartedSpace H M] {M' : Type _}
-  [TopologicalSpace M'] [ChartedSpace H' M'] {E'' : Type _} [NormedAddCommGroup E'']
-  [NormedSpace 𝕜 E''] {H'' : Type _} [TopologicalSpace H''] {I'' : ModelWithCorners 𝕜 E'' H''}
-  {M'' : Type _} [TopologicalSpace M''] [ChartedSpace H'' M''] [SmoothManifoldWithCorners I M]
-
-variable (F : Type _) [NormedAddCommGroup F] [NormedSpace 𝕜 F]
+variable {𝕜 : Type*} [NontriviallyNormedField 𝕜] {E : Type*} [NormedAddCommGroup E]
+  [NormedSpace 𝕜 E] {E' : Type*} [NormedAddCommGroup E'] [NormedSpace 𝕜 E'] {H : Type*}
+  [TopologicalSpace H] {H' : Type*} [TopologicalSpace H'] (I : ModelWithCorners 𝕜 E H)
+  (I' : ModelWithCorners 𝕜 E' H') {M : Type*} [TopologicalSpace M] [ChartedSpace H M] {M' : Type*}
+  [TopologicalSpace M'] [ChartedSpace H' M'] {E'' : Type*} [NormedAddCommGroup E'']
+  [NormedSpace 𝕜 E''] {H'' : Type*} [TopologicalSpace H''] {I'' : ModelWithCorners 𝕜 E'' H''}
+  {M'' : Type*} [TopologicalSpace M''] [ChartedSpace H'' M''] [SmoothManifoldWithCorners I M]
+
+variable (F : Type*) [NormedAddCommGroup F] [NormedSpace 𝕜 F]
   -- `F` model fiber
   (n : ℕ∞)
-  (V : M → Type _) [TopologicalSpace (TotalSpace F V)]
+  (V : M → Type*) [TopologicalSpace (TotalSpace F V)]
   -- `V` vector bundle
   [∀ x, AddCommGroup (V x)]
   [∀ x, Module 𝕜 (V x)]
chore: script to replace headers with #align_import statements (#5979)

Open in Gitpod

Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -2,16 +2,13 @@
 Copyright © 2023 Heather Macbeth. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Heather Macbeth, Floris van Doorn
-
-! This file was ported from Lean 3 source module geometry.manifold.vector_bundle.smooth_section
-! leanprover-community/mathlib commit e473c3198bb41f68560cab68a0529c854b618833
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Geometry.Manifold.MFDeriv
 import Mathlib.Topology.ContinuousFunction.Basic
 import Mathlib.Geometry.Manifold.Algebra.LieGroup
 
+#align_import geometry.manifold.vector_bundle.smooth_section from "leanprover-community/mathlib"@"e473c3198bb41f68560cab68a0529c854b618833"
+
 /-!
 # Smooth sections
 
feat: port Geometry.Manifold.VectorBundle.SmoothSection (#5736)

Dependencies 12 + 891

892 files ported (98.7%)
399215 lines ported (98.6%)
Show graph

The unported dependencies are

The following 1 dependencies have changed in mathlib3 since they were ported, which may complicate porting this file