File: Mathlib/Geometry/Manifold/Instances/Real.lean

full_name: EuclideanHalfSpace
code: /-- The half-space in `ℝ^n`, used to model manifolds with boundary. We only define it when
`1 ≤ n`, as the definition only makes sense in this case.
-/
def EuclideanHalfSpace (n : ℕ) [Zero (Fin n)] : Type 
goal: Type

full_name: EuclideanQuadrant
code: /--
The quadrant in `ℝ^n`, used to model manifolds with corners, made of all vectors with nonnegative
coordinates.
-/
def EuclideanQuadrant (n : ℕ) : Type 
goal: Type

full_name: instTopologicalSpaceEuclideanHalfSpace
code: instance [Zero (Fin n)] : TopologicalSpace (EuclideanHalfSpace n) 
goal: TopologicalSpace (EuclideanHalfSpace n)

full_name: instTopologicalSpaceEuclideanQuadrant
code: instance : TopologicalSpace (EuclideanQuadrant n) 
goal: TopologicalSpace (EuclideanQuadrant n)

full_name: instInhabitedEuclideanHalfSpace
code: instance [Zero (Fin n)] : Inhabited (EuclideanHalfSpace n) 
goal: Inhabited (EuclideanHalfSpace n)

full_name: instInhabitedEuclideanQuadrant
code: instance : Inhabited (EuclideanQuadrant n) 
goal: Inhabited (EuclideanQuadrant n)

full_name: EuclideanQuadrant.ext
code: @[ext]
theorem EuclideanQuadrant.ext (x y : EuclideanQuadrant n) (h : x.1 = y.1) : x = y 
goal: x = y

full_name: EuclideanHalfSpace.ext
code: @[ext]
theorem EuclideanHalfSpace.ext [Zero (Fin n)] (x y : EuclideanHalfSpace n)
    (h : x.1 = y.1) : x = y 
goal: x = y

full_name: range_euclideanHalfSpace
code: theorem range_euclideanHalfSpace (n : ℕ) [Zero (Fin n)] :
    (range fun x : EuclideanHalfSpace n => x.val) = { y | 0 ≤ y 0 } 
goal: (Set.range fun x => ↑x) = {y | 0 ≤ y 0}

full_name: range_euclideanQuadrant
code: theorem range_euclideanQuadrant (n : ℕ) :
    (range fun x : EuclideanQuadrant n => x.val) = { y | ∀ i : Fin n, 0 ≤ y i } 
goal: (Set.range fun x => ↑x) = {y | ∀ (i : Fin n), 0 ≤ y i}

full_name: modelWithCornersEuclideanHalfSpace
code: /--
Definition of the model with corners `(EuclideanSpace ℝ (Fin n), EuclideanHalfSpace n)`, used as
a model for manifolds with boundary. In the locale `Manifold`, use the shortcut `𝓡∂ n`.
-/
def modelWithCornersEuclideanHalfSpace (n : ℕ) [Zero (Fin n)] :
    ModelWithCorners ℝ (EuclideanSpace ℝ (Fin n)) (EuclideanHalfSpace n) 
goal: ModelWithCorners ℝ (EuclideanSpace ℝ (Fin n)) (EuclideanHalfSpace n)

full_name: modelWithCornersEuclideanQuadrant
code: /--
Definition of the model with corners `(EuclideanSpace ℝ (Fin n), EuclideanQuadrant n)`, used as a
model for manifolds with corners -/
def modelWithCornersEuclideanQuadrant (n : ℕ) :
    ModelWithCorners ℝ (EuclideanSpace ℝ (Fin n)) (EuclideanQuadrant n) 
goal: ModelWithCorners ℝ (EuclideanSpace ℝ (Fin n)) (EuclideanQuadrant n)

full_name: Manifold._aux_Mathlib_Geometry_Manifold_Instances_Real___macroRules_Manifold_term𝓡__1
code: /-- The model space used to define `n`-dimensional real manifolds without boundary. -/
scoped[Manifold]
  notation "𝓡 " n =>
    (modelWithCornersSelf ℝ (EuclideanSpace ℝ (Fin n)) :
      ModelWithCorners ℝ (EuclideanSpace ℝ (Fin n)) (EuclideanSpace ℝ (Fin n)))
goal: Lean.Macro

full_name: Manifold.«_aux_Mathlib_Geometry_Manifold_Instances_Real___macroRules_Manifold_term𝓡∂__1»
code: /-- The model space used to define `n`-dimensional real manifolds with boundary. -/
scoped[Manifold]
  notation "𝓡∂ " n =>
    (modelWithCornersEuclideanHalfSpace n :
      ModelWithCorners ℝ (EuclideanSpace ℝ (Fin n)) (EuclideanHalfSpace n))
goal: Lean.Macro

full_name: IccLeftChart
code: /-- The left chart for the topological space `[x, y]`, defined on `[x,y)` and sending `x` to `0` in
`EuclideanHalfSpace 1`.
-/
def IccLeftChart (x y : ℝ) [h : Fact (x < y)] :
    PartialHomeomorph (Icc x y) (EuclideanHalfSpace 1) 
goal: PartialHomeomorph (↑(Set.Icc x y)) (EuclideanHalfSpace 1)

full_name: IccRightChart
code: /-- The right chart for the topological space `[x, y]`, defined on `(x,y]` and sending `y` to `0` in
`EuclideanHalfSpace 1`.
-/
def IccRightChart (x y : ℝ) [h : Fact (x < y)] :
    PartialHomeomorph (Icc x y) (EuclideanHalfSpace 1) 
goal: PartialHomeomorph (↑(Set.Icc x y)) (EuclideanHalfSpace 1)

full_name: IccManifold
code: /-- Charted space structure on `[x, y]`, using only two charts taking values in
`EuclideanHalfSpace 1`.
-/
instance IccManifold (x y : ℝ) [h : Fact (x < y)] :
    ChartedSpace (EuclideanHalfSpace 1) (Icc x y) 
goal: ChartedSpace (EuclideanHalfSpace 1) ↑(Set.Icc x y)

full_name: Icc_smooth_manifold
code: /-- The manifold structure on `[x, y]` is smooth.
-/
instance Icc_smooth_manifold (x y : ℝ) [Fact (x < y)] :
    SmoothManifoldWithCorners (𝓡∂ 1) (Icc x y) 
goal: SmoothManifoldWithCorners (modelWithCornersEuclideanHalfSpace 1) ↑(Set.Icc x y)

full_name: instChartedSpaceEuclideanHalfSpaceOfNatNatElemRealIcc
code: instance : ChartedSpace (EuclideanHalfSpace 1) (Icc (0 : ℝ) 1) 
goal: ChartedSpace (EuclideanHalfSpace 1) ↑(Set.Icc 0 1)

full_name: instSmoothManifoldWithCornersRealEuclideanSpaceFinOfNatNatEuclideanHalfSpaceModelWithCornersEuclideanHalfSpaceElemIcc
code: instance : SmoothManifoldWithCorners (𝓡∂ 1) (Icc (0 : ℝ) 1) 
goal: SmoothManifoldWithCorners (modelWithCornersEuclideanHalfSpace 1) ↑(Set.Icc 0 1)