Theorem: mdifferentiableAt_atlas_symm
File: Mathlib/Geometry/Manifold/MFDeriv/Atlas.lean

tactic: rw [mdifferentiableAt_iff]
state_before: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
⊢ MDifferentiableAt I I (↑e.symm) x
state_after: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
⊢ ContinuousAt (↑e.symm) x ∧
    DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)

tactic: refine ⟨(e.continuousOn_symm x hx).continuousAt (e.open_target.mem_nhds hx), ?_⟩
state_before: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
⊢ ContinuousAt (↑e.symm) x ∧
    DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)
state_after: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)

tactic: have mem : I x ∈ I.symm ⁻¹' (e.symm ≫ₕ chartAt H (e.symm x)).source ∩ range I := by
  simp only [hx, mfld_simps]
state_before: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)
state_after: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)

tactic: have : e.symm.trans (chartAt H (e.symm x)) ∈ contDiffGroupoid ∞ I :=
  HasGroupoid.compatible h (chart_mem_atlas H _)
state_before: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)
state_after: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
this : e.symm ≫ₕ chartAt H (↑e.symm x) ∈ contDiffGroupoid ⊤ I
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)

tactic: have A :
  ContDiffOn 𝕜 ∞ (I ∘ e.symm.trans (chartAt H (e.symm x)) ∘ I.symm)
    (I.symm ⁻¹' (e.symm.trans (chartAt H (e.symm x))).source ∩ range I) :=
  this.1
state_before: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
this : e.symm ≫ₕ chartAt H (↑e.symm x) ∈ contDiffGroupoid ⊤ I
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)
state_after: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
this : e.symm ≫ₕ chartAt H (↑e.symm x) ∈ contDiffGroupoid ⊤ I
A :
  ContDiffOn 𝕜 ⊤ (↑I ∘ ↑(e.symm ≫ₕ chartAt H (↑e.symm x)) ∘ ↑I.symm)
    (↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I)
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)

tactic: have B := A.differentiableOn le_top (I x) mem
state_before: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
this : e.symm ≫ₕ chartAt H (↑e.symm x) ∈ contDiffGroupoid ⊤ I
A :
  ContDiffOn 𝕜 ⊤ (↑I ∘ ↑(e.symm ≫ₕ chartAt H (↑e.symm x)) ∘ ↑I.symm)
    (↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I)
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)
state_after: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
this : e.symm ≫ₕ chartAt H (↑e.symm x) ∈ contDiffGroupoid ⊤ I
A :
  ContDiffOn 𝕜 ⊤ (↑I ∘ ↑(e.symm ≫ₕ chartAt H (↑e.symm x)) ∘ ↑I.symm)
    (↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I)
B :
  DifferentiableWithinAt 𝕜 (↑I ∘ ↑(e.symm ≫ₕ chartAt H (↑e.symm x)) ∘ ↑I.symm)
    (↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I) (↑I x)
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)

tactic: simp only [mfld_simps] at B
state_before: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
this : e.symm ≫ₕ chartAt H (↑e.symm x) ∈ contDiffGroupoid ⊤ I
A :
  ContDiffOn 𝕜 ⊤ (↑I ∘ ↑(e.symm ≫ₕ chartAt H (↑e.symm x)) ∘ ↑I.symm)
    (↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I)
B :
  DifferentiableWithinAt 𝕜 (↑I ∘ ↑(e.symm ≫ₕ chartAt H (↑e.symm x)) ∘ ↑I.symm)
    (↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I) (↑I x)
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)
state_after: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
this : e.symm ≫ₕ chartAt H (↑e.symm x) ∈ contDiffGroupoid ⊤ I
A :
  ContDiffOn 𝕜 ⊤ (↑I ∘ ↑(e.symm ≫ₕ chartAt H (↑e.symm x)) ∘ ↑I.symm)
    (↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I)
B :
  DifferentiableWithinAt 𝕜 (↑I ∘ (↑(chartAt H (↑e.symm x)) ∘ ↑e.symm) ∘ ↑I.symm)
    (↑I.symm ⁻¹' e.target ∩ ↑I.symm ⁻¹' (↑e.symm ⁻¹' (chartAt H (↑e.symm x)).source) ∩ range ↑I) (↑I x)
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)

tactic: rw [inter_comm, differentiableWithinAt_inter] at B
state_before: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
this : e.symm ≫ₕ chartAt H (↑e.symm x) ∈ contDiffGroupoid ⊤ I
A :
  ContDiffOn 𝕜 ⊤ (↑I ∘ ↑(e.symm ≫ₕ chartAt H (↑e.symm x)) ∘ ↑I.symm)
    (↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I)
B :
  DifferentiableWithinAt 𝕜 (↑I ∘ (↑(chartAt H (↑e.symm x)) ∘ ↑e.symm) ∘ ↑I.symm)
    (↑I.symm ⁻¹' e.target ∩ ↑I.symm ⁻¹' (↑e.symm ⁻¹' (chartAt H (↑e.symm x)).source) ∩ range ↑I) (↑I x)
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)
state_after: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
this : e.symm ≫ₕ chartAt H (↑e.symm x) ∈ contDiffGroupoid ⊤ I
A :
  ContDiffOn 𝕜 ⊤ (↑I ∘ ↑(e.symm ≫ₕ chartAt H (↑e.symm x)) ∘ ↑I.symm)
    (↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I)
B : DifferentiableWithinAt 𝕜 (↑I ∘ (↑(chartAt H (↑e.symm x)) ∘ ↑e.symm) ∘ ↑I.symm) (range ↑I) (↑I x)
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)

𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
this : e.symm ≫ₕ chartAt H (↑e.symm x) ∈ contDiffGroupoid ⊤ I
A :
  ContDiffOn 𝕜 ⊤ (↑I ∘ ↑(e.symm ≫ₕ chartAt H (↑e.symm x)) ∘ ↑I.symm)
    (↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I)
B :
  DifferentiableWithinAt 𝕜 (↑I ∘ (↑(chartAt H (↑e.symm x)) ∘ ↑e.symm) ∘ ↑I.symm)
    (range ↑I ∩ (↑I.symm ⁻¹' e.target ∩ ↑I.symm ⁻¹' (↑e.symm ⁻¹' (chartAt H (↑e.symm x)).source))) (↑I x)
⊢ ↑I.symm ⁻¹' e.target ∩ ↑I.symm ⁻¹' (↑e.symm ⁻¹' (chartAt H (↑e.symm x)).source) ∈ 𝓝 (↑I x)

tactic: simp only [hx, mfld_simps]
state_before: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
⊢ ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
state_after: no goals

tactic: simpa only [mfld_simps]
state_before: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
this : e.symm ≫ₕ chartAt H (↑e.symm x) ∈ contDiffGroupoid ⊤ I
A :
  ContDiffOn 𝕜 ⊤ (↑I ∘ ↑(e.symm ≫ₕ chartAt H (↑e.symm x)) ∘ ↑I.symm)
    (↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I)
B : DifferentiableWithinAt 𝕜 (↑I ∘ (↑(chartAt H (↑e.symm x)) ∘ ↑e.symm) ∘ ↑I.symm) (range ↑I) (↑I x)
⊢ DifferentiableWithinAt 𝕜 (writtenInExtChartAt I I x ↑e.symm) (range ↑I) (↑(extChartAt I x) x)
state_after: no goals

tactic: apply IsOpen.mem_nhds ((PartialHomeomorph.open_source _).preimage I.continuous_symm) mem.1
state_before: 𝕜 : Type u_1
inst✝¹⁸ : NontriviallyNormedField 𝕜
E : Type u_2
inst✝¹⁷ : NormedAddCommGroup E
inst✝¹⁶ : NormedSpace 𝕜 E
H : Type u_3
inst✝¹⁵ : TopologicalSpace H
I : ModelWithCorners 𝕜 E H
M : Type u_4
inst✝¹⁴ : TopologicalSpace M
inst✝¹³ : ChartedSpace H M
E' : Type u_5
inst✝¹² : NormedAddCommGroup E'
inst✝¹¹ : NormedSpace 𝕜 E'
H' : Type u_6
inst✝¹⁰ : TopologicalSpace H'
I' : ModelWithCorners 𝕜 E' H'
M' : Type u_7
inst✝⁹ : TopologicalSpace M'
inst✝⁸ : ChartedSpace H' M'
E'' : Type u_8
inst✝⁷ : NormedAddCommGroup E''
inst✝⁶ : NormedSpace 𝕜 E''
H'' : Type u_9
inst✝⁵ : TopologicalSpace H''
I'' : ModelWithCorners 𝕜 E'' H''
M'' : Type u_10
inst✝⁴ : TopologicalSpace M''
inst✝³ : ChartedSpace H'' M''
inst✝² : SmoothManifoldWithCorners I M
inst✝¹ : SmoothManifoldWithCorners I' M'
inst✝ : SmoothManifoldWithCorners I'' M''
e : PartialHomeomorph M H
h : e ∈ atlas H M
x : H
hx : x ∈ e.target
mem : ↑I x ∈ ↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I
this : e.symm ≫ₕ chartAt H (↑e.symm x) ∈ contDiffGroupoid ⊤ I
A :
  ContDiffOn 𝕜 ⊤ (↑I ∘ ↑(e.symm ≫ₕ chartAt H (↑e.symm x)) ∘ ↑I.symm)
    (↑I.symm ⁻¹' (e.symm ≫ₕ chartAt H (↑e.symm x)).source ∩ range ↑I)
B :
  DifferentiableWithinAt 𝕜 (↑I ∘ (↑(chartAt H (↑e.symm x)) ∘ ↑e.symm) ∘ ↑I.symm)
    (range ↑I ∩ (↑I.symm ⁻¹' e.target ∩ ↑I.symm ⁻¹' (↑e.symm ⁻¹' (chartAt H (↑e.symm x)).source))) (↑I x)
⊢ ↑I.symm ⁻¹' e.target ∩ ↑I.symm ⁻¹' (↑e.symm ⁻¹' (chartAt H (↑e.symm x)).source) ∈ 𝓝 (↑I x)
state_after: no goals