Theorem: Trivialization.smoothOn
File: Mathlib/Geometry/Manifold/VectorBundle/Basic.lean

tactic: have : SmoothOn (IB.prod 𝓘(𝕜, F)) (IB.prod 𝓘(𝕜, F)) id e.source := smoothOn_id
state_before: 𝕜 : Type u_1
B : Type u_2
B' : Type u_3
F : Type u_4
M : Type u_5
E : B → Type u_6
inst✝²³ : NontriviallyNormedField 𝕜
EB : Type u_7
inst✝²² : NormedAddCommGroup EB
inst✝²¹ : NormedSpace 𝕜 EB
HB : Type u_8
inst✝²⁰ : TopologicalSpace HB
IB : ModelWithCorners 𝕜 EB HB
inst✝¹⁹ : TopologicalSpace B
inst✝¹⁸ : ChartedSpace HB B
inst✝¹⁷ : SmoothManifoldWithCorners IB B
EM : Type u_9
inst✝¹⁶ : NormedAddCommGroup EM
inst✝¹⁵ : NormedSpace 𝕜 EM
HM : Type u_10
inst✝¹⁴ : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
inst✝¹³ : TopologicalSpace M
inst✝¹² : ChartedSpace HM M
Is : SmoothManifoldWithCorners IM M
n : ℕ∞
inst✝¹¹ : (x : B) → AddCommMonoid (E x)
inst✝¹⁰ : (x : B) → Module 𝕜 (E x)
inst✝⁹ : NormedAddCommGroup F
inst✝⁸ : NormedSpace 𝕜 F
inst✝⁷ : TopologicalSpace (TotalSpace F E)
inst✝⁶ : (x : B) → TopologicalSpace (E x)
inst✝⁵ : FiberBundle F E
inst✝⁴ : VectorBundle 𝕜 F E
inst✝³ : SmoothVectorBundle F E IB
e✝ e' : Trivialization F TotalSpace.proj
inst✝² : MemTrivializationAtlas e✝
inst✝¹ : MemTrivializationAtlas e'
e : Trivialization F TotalSpace.proj
inst✝ : MemTrivializationAtlas e
⊢ SmoothOn (IB.prod 𝓘(𝕜, F)) (IB.prod 𝓘(𝕜, F)) (↑e) e.source
state_after: 𝕜 : Type u_1
B : Type u_2
B' : Type u_3
F : Type u_4
M : Type u_5
E : B → Type u_6
inst✝²³ : NontriviallyNormedField 𝕜
EB : Type u_7
inst✝²² : NormedAddCommGroup EB
inst✝²¹ : NormedSpace 𝕜 EB
HB : Type u_8
inst✝²⁰ : TopologicalSpace HB
IB : ModelWithCorners 𝕜 EB HB
inst✝¹⁹ : TopologicalSpace B
inst✝¹⁸ : ChartedSpace HB B
inst✝¹⁷ : SmoothManifoldWithCorners IB B
EM : Type u_9
inst✝¹⁶ : NormedAddCommGroup EM
inst✝¹⁵ : NormedSpace 𝕜 EM
HM : Type u_10
inst✝¹⁴ : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
inst✝¹³ : TopologicalSpace M
inst✝¹² : ChartedSpace HM M
Is : SmoothManifoldWithCorners IM M
n : ℕ∞
inst✝¹¹ : (x : B) → AddCommMonoid (E x)
inst✝¹⁰ : (x : B) → Module 𝕜 (E x)
inst✝⁹ : NormedAddCommGroup F
inst✝⁸ : NormedSpace 𝕜 F
inst✝⁷ : TopologicalSpace (TotalSpace F E)
inst✝⁶ : (x : B) → TopologicalSpace (E x)
inst✝⁵ : FiberBundle F E
inst✝⁴ : VectorBundle 𝕜 F E
inst✝³ : SmoothVectorBundle F E IB
e✝ e' : Trivialization F TotalSpace.proj
inst✝² : MemTrivializationAtlas e✝
inst✝¹ : MemTrivializationAtlas e'
e : Trivialization F TotalSpace.proj
inst✝ : MemTrivializationAtlas e
this : SmoothOn (IB.prod 𝓘(𝕜, F)) (IB.prod 𝓘(𝕜, F)) id e.source
⊢ SmoothOn (IB.prod 𝓘(𝕜, F)) (IB.prod 𝓘(𝕜, F)) (↑e) e.source

tactic: rw [e.smoothOn_iff IB (mapsTo_id _)] at this
state_before: 𝕜 : Type u_1
B : Type u_2
B' : Type u_3
F : Type u_4
M : Type u_5
E : B → Type u_6
inst✝²³ : NontriviallyNormedField 𝕜
EB : Type u_7
inst✝²² : NormedAddCommGroup EB
inst✝²¹ : NormedSpace 𝕜 EB
HB : Type u_8
inst✝²⁰ : TopologicalSpace HB
IB : ModelWithCorners 𝕜 EB HB
inst✝¹⁹ : TopologicalSpace B
inst✝¹⁸ : ChartedSpace HB B
inst✝¹⁷ : SmoothManifoldWithCorners IB B
EM : Type u_9
inst✝¹⁶ : NormedAddCommGroup EM
inst✝¹⁵ : NormedSpace 𝕜 EM
HM : Type u_10
inst✝¹⁴ : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
inst✝¹³ : TopologicalSpace M
inst✝¹² : ChartedSpace HM M
Is : SmoothManifoldWithCorners IM M
n : ℕ∞
inst✝¹¹ : (x : B) → AddCommMonoid (E x)
inst✝¹⁰ : (x : B) → Module 𝕜 (E x)
inst✝⁹ : NormedAddCommGroup F
inst✝⁸ : NormedSpace 𝕜 F
inst✝⁷ : TopologicalSpace (TotalSpace F E)
inst✝⁶ : (x : B) → TopologicalSpace (E x)
inst✝⁵ : FiberBundle F E
inst✝⁴ : VectorBundle 𝕜 F E
inst✝³ : SmoothVectorBundle F E IB
e✝ e' : Trivialization F TotalSpace.proj
inst✝² : MemTrivializationAtlas e✝
inst✝¹ : MemTrivializationAtlas e'
e : Trivialization F TotalSpace.proj
inst✝ : MemTrivializationAtlas e
this : SmoothOn (IB.prod 𝓘(𝕜, F)) (IB.prod 𝓘(𝕜, F)) id e.source
⊢ SmoothOn (IB.prod 𝓘(𝕜, F)) (IB.prod 𝓘(𝕜, F)) (↑e) e.source
state_after: 𝕜 : Type u_1
B : Type u_2
B' : Type u_3
F : Type u_4
M : Type u_5
E : B → Type u_6
inst✝²³ : NontriviallyNormedField 𝕜
EB : Type u_7
inst✝²² : NormedAddCommGroup EB
inst✝²¹ : NormedSpace 𝕜 EB
HB : Type u_8
inst✝²⁰ : TopologicalSpace HB
IB : ModelWithCorners 𝕜 EB HB
inst✝¹⁹ : TopologicalSpace B
inst✝¹⁸ : ChartedSpace HB B
inst✝¹⁷ : SmoothManifoldWithCorners IB B
EM : Type u_9
inst✝¹⁶ : NormedAddCommGroup EM
inst✝¹⁵ : NormedSpace 𝕜 EM
HM : Type u_10
inst✝¹⁴ : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
inst✝¹³ : TopologicalSpace M
inst✝¹² : ChartedSpace HM M
Is : SmoothManifoldWithCorners IM M
n : ℕ∞
inst✝¹¹ : (x : B) → AddCommMonoid (E x)
inst✝¹⁰ : (x : B) → Module 𝕜 (E x)
inst✝⁹ : NormedAddCommGroup F
inst✝⁸ : NormedSpace 𝕜 F
inst✝⁷ : TopologicalSpace (TotalSpace F E)
inst✝⁶ : (x : B) → TopologicalSpace (E x)
inst✝⁵ : FiberBundle F E
inst✝⁴ : VectorBundle 𝕜 F E
inst✝³ : SmoothVectorBundle F E IB
e✝ e' : Trivialization F TotalSpace.proj
inst✝² : MemTrivializationAtlas e✝
inst✝¹ : MemTrivializationAtlas e'
e : Trivialization F TotalSpace.proj
inst✝ : MemTrivializationAtlas e
this :
  SmoothOn (IB.prod 𝓘(𝕜, F)) IB (fun x => (id x).proj) e.source ∧
    SmoothOn (IB.prod 𝓘(𝕜, F)) 𝓘(𝕜, F) (fun x => (↑e (id x)).2) e.source
⊢ SmoothOn (IB.prod 𝓘(𝕜, F)) (IB.prod 𝓘(𝕜, F)) (↑e) e.source

tactic: exact (this.1.prod_mk this.2).congr fun x hx ↦ (e.mk_proj_snd hx).symm
state_before: 𝕜 : Type u_1
B : Type u_2
B' : Type u_3
F : Type u_4
M : Type u_5
E : B → Type u_6
inst✝²³ : NontriviallyNormedField 𝕜
EB : Type u_7
inst✝²² : NormedAddCommGroup EB
inst✝²¹ : NormedSpace 𝕜 EB
HB : Type u_8
inst✝²⁰ : TopologicalSpace HB
IB : ModelWithCorners 𝕜 EB HB
inst✝¹⁹ : TopologicalSpace B
inst✝¹⁸ : ChartedSpace HB B
inst✝¹⁷ : SmoothManifoldWithCorners IB B
EM : Type u_9
inst✝¹⁶ : NormedAddCommGroup EM
inst✝¹⁵ : NormedSpace 𝕜 EM
HM : Type u_10
inst✝¹⁴ : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
inst✝¹³ : TopologicalSpace M
inst✝¹² : ChartedSpace HM M
Is : SmoothManifoldWithCorners IM M
n : ℕ∞
inst✝¹¹ : (x : B) → AddCommMonoid (E x)
inst✝¹⁰ : (x : B) → Module 𝕜 (E x)
inst✝⁹ : NormedAddCommGroup F
inst✝⁸ : NormedSpace 𝕜 F
inst✝⁷ : TopologicalSpace (TotalSpace F E)
inst✝⁶ : (x : B) → TopologicalSpace (E x)
inst✝⁵ : FiberBundle F E
inst✝⁴ : VectorBundle 𝕜 F E
inst✝³ : SmoothVectorBundle F E IB
e✝ e' : Trivialization F TotalSpace.proj
inst✝² : MemTrivializationAtlas e✝
inst✝¹ : MemTrivializationAtlas e'
e : Trivialization F TotalSpace.proj
inst✝ : MemTrivializationAtlas e
this :
  SmoothOn (IB.prod 𝓘(𝕜, F)) IB (fun x => (id x).proj) e.source ∧
    SmoothOn (IB.prod 𝓘(𝕜, F)) 𝓘(𝕜, F) (fun x => (↑e (id x)).2) e.source
⊢ SmoothOn (IB.prod 𝓘(𝕜, F)) (IB.prod 𝓘(𝕜, F)) (↑e) e.source
state_after: no goals