Documentation

Atlas.DifferentialGeometry.code.Manifolds

theorem implicit_function_inverse_smooth {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (ψ : E) (y : E) (Φ : OpenPartialHomeomorph E ( × (↑(fderiv ψ y)).ker)) {V : Set E} (hV : IsOpen V) (hψ_smooth : ContDiffOn ψ V) (hψ_deriv : fderiv ψ y 0) (hy_source : y Φ.source) (h_source_sub : Φ.source V) (h_fwd_smooth : ContDiffOn (↑Φ) Φ.source) :
theorem implicit_function_straightening {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] {V : Set E} (hV : IsOpen V) (ψ : E) (y : E) (hy : y V) (hψ_smooth : ContDiffOn ψ V) (hψ_zero : ψ y = 0) (hψ_deriv : fderiv ψ y 0) :
∃ (Φ : OpenPartialHomeomorph E ( × (↑(fderiv ψ y)).ker)), y Φ.source Φ.source V Φ y = (0, 0) (∀ xΦ.source, ψ x = (Φ x).1) ContDiffOn (↑Φ) Φ.source ContDiffOn (↑Φ.symm) Φ.target
theorem implicit_function_diffeomorphism {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] {V : Set E} (hV : IsOpen V) (ψ : E) (y : E) (hy : y V) (hψ_smooth : ContDiffOn ψ V) (hψ_zero : ψ y = 0) (hψ_deriv : fderiv ψ y 0) :
∃ (Φ : OpenPartialHomeomorph E ( × (↑(fderiv ψ y)).ker)), y Φ.source Φ.source V Φ y = (0, 0) (∀ xΦ.source, ψ x = (Φ x).1) ContDiffOn (↑Φ) Φ.source ContDiffOn (↑Φ.symm) Φ.target
theorem inverse_function_theorem {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] [CompleteSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [CompleteSpace F] {φ : EF} {y : E} (hφ_smooth : ContDiff φ) {f' : E ≃L[] F} (hf' : HasStrictFDerivAt φ (↑f') y) :
∃ (Φ : OpenPartialHomeomorph E F), (∀ xΦ.source, Φ x = φ x) y Φ.source IsOpen Φ.source IsOpen Φ.target ContDiffOn (↑Φ) Φ.source ContDiffOn (↑Φ.symm) Φ.target
theorem inverse_function_theorem_local_homeomorph {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] [CompleteSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] (φ : EF) (y : E) (hφ_smooth : ContDiff φ) (f' : E ≃L[] F) (hf' : HasStrictFDerivAt φ (↑f') y) :
∃ (Φ : OpenPartialHomeomorph E F), (∀ xΦ.source, Φ x = φ x) y Φ.source IsOpen Φ.source IsOpen Φ.target ContDiffOn (↑Φ) Φ.source
structure IsDiffeomorphism {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] (φ : EF) (V : Set E) (U : Set F) :
Instances For
    structure Hypersurface.IsLocalDefiningFunction {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] (ψ : E) (M : Set E) (y : E) :
    Instances For
      noncomputable def Hypersurface.tangentSpace {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] (ψ : E) (y : E) :
      Instances For
        def Hypersurface.IsRegularPoint {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] (ψ : E) (y : E) :
        Instances For
          theorem Hypersurface.mem_tangentSpace_iff {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {ψ : E} {y v : E} :
          v tangentSpace ψ y (fderiv ψ y) v = 0
          theorem Hypersurface.IsLocalDefiningFunction.eq_zero_of_mem {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {ψ : E} {M : Set E} {y : E} ( : IsLocalDefiningFunction ψ M y) (hy : y M) :
          ψ y = 0
          structure Hypersurface.IsSmoothLocalDefiningFunction {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] (ψ : E) (M : Set E) (y : E) :
          Instances For
            theorem Hypersurface.IsSmoothLocalDefiningFunction.eq_zero_of_mem {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {ψ : E} {M : Set E} {y : E} ( : IsSmoothLocalDefiningFunction ψ M y) (hy : y M) :
            ψ y = 0
            theorem Hypersurface.smooth_division {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {ψ : E} {M : Set E} {y : E} ( : IsSmoothLocalDefiningFunction ψ M y) (φ : E) (hφ_smooth : ContDiff φ) (hφ_vanish : ∃ (V : Set E), IsOpen V y V xV, x Mφ x = 0) :
            ∃ (W : Set E), IsOpen W y W ∃ (q : E), ContDiffOn q W (∀ xW, φ x = q x * ψ x) ∀ (q' : E), ContDiffOn q' W(∀ xW, φ x = q' x * ψ x)xW, q' x = q x
            structure Hypersurface.IsPartialParametrization {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] (M : Set E) :
            Type (max u_1 u_2)
            Instances For
              structure Hypersurface.IsGaussMap {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace E] (ν : EE) (M : Set E) :
              Instances For
                Instances For
                  noncomputable def Hypersurface.Curvature.gaussCurvatureMatrix {n : } {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace E] (ψ : E) (y : E) (Y : Fin nE) (b : OrthonormalBasis (Fin (n + 1)) E) :
                  Matrix (Fin (n + 1)) (Fin (n + 1))
                  Instances For
                    noncomputable def Hypersurface.Curvature.gaussCurvatureLevelSet {n : } {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace E] (ψ : E) (y : E) (Y : Fin nE) (b : OrthonormalBasis (Fin (n + 1)) E) :
                    Instances For
                      noncomputable def Hypersurface.Curvature.shapeOperatorLevelSet {n : } {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace E] (ψ : E) (y : E) (Y : Fin nE) :
                      Matrix (Fin n) (Fin n)
                      Instances For
                        theorem secondFundamentalForm_eq_hessian_div_gradNorm {n : } (patch : HypersurfacePatch n) (x : Fin n) (hx : x patch.domain) (ψ : (Fin (n + 1))) (hψ_ne_zero : fderiv ψ (patch.f x) 0) (hψ_smooth : ContDiffAt 2 ψ (patch.f x)) (himage : upatch.domain, ψ (patch.f u) = 0) :
                        ∃ (s : ) (_ : s = 1 s = -1), ∀ (i j : Fin n), secondFundamentalForm patch x i j = s * (((fderiv (fderiv ψ) (patch.f x)) (patch.partialDeriv x i)) (patch.partialDeriv x j) / fderiv ψ (patch.f x))
                        theorem trace_firstFundamentalForm_inv_mul_eq_sum_orthonormal {n : } (patch : HypersurfacePatch n) (x : Fin n) (hx : x patch.domain) (ψ : (Fin (n + 1))) (hψ_ne_zero : fderiv ψ (patch.f x) 0) (B : (Fin (n + 1))(Fin (n + 1))) (Y : Fin nFin (n + 1)) (hY_tangent : ∀ (i : Fin n), (fderiv ψ (patch.f x)) (Y i) = 0) (hY_orthonormal : ∀ (i j : Fin n), k : Fin (n + 1), Y i k * Y j k = if i = j then 1 else 0) :
                        ((firstFundamentalForm patch x)⁻¹ * Matrix.of fun (i j : Fin n) => B (patch.partialDeriv x i) (patch.partialDeriv x j)).trace = i : Fin n, B (Y i) (Y i)
                        theorem meanCurvature_parametric_eq_levelSet {n : } (patch : HypersurfacePatch n) (x : Fin n) (hx : x patch.domain) (ψ : (Fin (n + 1))) (hψ_ne_zero : fderiv ψ (patch.f x) 0) (hψ_smooth : ContDiffAt 2 ψ (patch.f x)) (himage : upatch.domain, ψ (patch.f u) = 0) (Y : Fin nFin (n + 1)) (hY_tangent : ∀ (i : Fin n), (fderiv ψ (patch.f x)) (Y i) = 0) (hY_orthonormal : ∀ (i j : Fin n), k : Fin (n + 1), Y i k * Y j k = if i = j then 1 else 0) :
                        ∃ (s : ) (_ : s = 1 s = -1), meanCurvature patch x = s * (1 / fderiv ψ (patch.f x) * i : Fin n, ((fderiv (fderiv ψ) (patch.f x)) (Y i)) (Y i))
                        structure Hypersurface.IsTangentCurve {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] (c : E) (M : Set E) (y v : E) :
                        Instances For
                          theorem Hypersurface.tangent_of_curve {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {ψ : E} {M : Set E} {y v : E} {c : E} ( : IsLocalDefiningFunction ψ M y) (hc : IsTangentCurve c M y v) :
                          theorem Hypersurface.curve_of_tangent {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] {ψ : E} {M : Set E} {y v : E} ( : IsLocalDefiningFunction ψ M y) (hy : y M) (hv : v tangentSpace ψ y) (hstrict : HasStrictFDerivAt ψ (fderiv ψ y) y) :
                          ∃ (c : E), IsTangentCurve c M y v