Documentation

TauCeti.Geometry.Manifold.Orientation.Basic

Orientations of manifolds with corners #

A manifold orientation is a source-indexed orientation lift modulo simultaneous reversal of its model orientation and all chart signs. It induces an actual, locally constant orientation of the tangent bundle. This definition includes boundary and corner points. Orientability records existence; every model with corners is orientable.

Reindexing along an equivalence of index types (TauCeti.Manifold.Orientation.reindex) reindexes every tangent orientation. It compares orientations indexed by Fin (m + n) and Fin (n + m), such as the products of two oriented manifolds taken in either order.

Orientability records existence; every model with corners is orientable, and TauCeti.Manifold.Orientation.congrModel casts manifold orientations along an equality of models.

def TauCeti.Manifold.Orientation {E : Type u_1} {H : Type u_2} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] (I : ModelWithCorners ℝ E H) [FiniteDimensional ℝ E] (M : Type u_5) [TopologicalSpace M] [ChartedSpace H M] (ι : Type u_6) [Fintype ι] :
Type (max (max u_1 u_5) u_6)

An orientation of a manifold, including its boundary and corners.

Instances For

    The orientation represented by a lift.

    Instances For
      theorem TauCeti.Manifold.Orientation.mk_eq_mk_iff {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] (a b : OrientationLift I M ι) :
      mk a = mk b ↔ a = b ∨ a = b.flip

      Two lifts represent the same orientation exactly when they agree or differ by the simultaneous reversal of model orientation and source signs.

      def TauCeti.Manifold.Orientation.lift {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] {α : Sort u_5} (f : OrientationLift I M ι → α) (hflip : ∀ (l : OrientationLift I M ι), f l.flip = f l) :
      Orientation I M ι → α

      Define a function on orientations from a function on lifts invariant under diagonal flip.

      Instances For
        @[simp]
        theorem TauCeti.Manifold.Orientation.lift_mk {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] {α : Sort u_5} (f : OrientationLift I M ι → α) (hflip : ∀ (l : OrientationLift I M ι), f l.flip = f l) (l : OrientationLift I M ι) :
        lift f hflip (mk l) = f l

        A function induced from lifts evaluates on a represented orientation at its lift.

        theorem TauCeti.Manifold.Orientation.exists_lift {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] (o : Orientation I M ι) :
        ∃ (l : OrientationLift I M ι), mk l = o

        Every manifold orientation has a source-indexed lift.

        Every manifold orientation has a lift with any prescribed model orientation, obtained by flipping an arbitrary lift if necessary.

        theorem TauCeti.Manifold.Orientation.inductionOn {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] {p : Orientation I M ι → Prop} (o : Orientation I M ι) (h : ∀ (l : OrientationLift I M ι), p (mk l)) :
        p o

        Prove a property of orientations by proving it for every source-indexed lift.

        The index type has the dimension of the model space.

        The tangent space has the dimension encoded by the orientation index.

        The orientation index supplies the tangent-space finrank as a Fact instance.

        Reverse the tangent orientations by reversing the model orientation of a lift.

        Instances For
          @[instance_reducible]
          @[simp]
          def TauCeti.Manifold.Orientation.reindex {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] {ι' : Type u_5} [Fintype ι'] (e : ι ≃ ι') (o : Orientation I M ι) :
          Orientation I M ι'

          Reindex a manifold orientation along an equivalence of index types.

          Instances For
            @[simp]
            theorem TauCeti.Manifold.Orientation.reindex_mk {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] {ι' : Type u_5} [Fintype ι'] (e : ι ≃ ι') (o : OrientationLift I M ι) :

            The induced orientation of the tangent bundle.

            Instances For
              noncomputable def TauCeti.Manifold.Orientation.orientationAt {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] [IsManifold I 1 M] (o : Orientation I M ι) (x : M) :

              The orientation of a tangent space induced by a manifold orientation.

              Instances For
                @[simp]

                Evaluation of the tangent-bundle interpretation is the manifold's tangent orientation.

                @[simp]

                The tangent orientation of a represented manifold orientation is the representative's intrinsic tangent orientation, including at boundary and corner points.

                @[simp]
                theorem TauCeti.Manifold.Orientation.orientationAt_reindex {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] [IsManifold I 1 M] {ι' : Type u_5} [Fintype ι'] (e : ι ≃ ι') (o : Orientation I M ι) (x : M) :

                Reindexing a manifold orientation reindexes each of its tangent orientations.

                theorem TauCeti.Manifold.Orientation.ext {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] [IsManifold I 1 M] {o o' : Orientation I M ι} (h : ∀ (x : M), o.orientationAt x = o'.orientationAt x) :
                o = o'

                A manifold orientation is determined by its actual tangent orientations.

                theorem TauCeti.Manifold.Orientation.ext_iff {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] [IsManifold I 1 M] {o o' : Orientation I M ι} :
                o = o' ↔ ∀ (x : M), o.orientationAt x = o'.orientationAt x
                theorem TauCeti.Manifold.Orientation.eq_or_eq_neg {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] [IsManifold I 1 M] [PreconnectedSpace M] (o o' : Orientation I M ι) :
                o = o' ∨ o = -o'

                Over a preconnected manifold there are at most two orientations.

                An orientation differs from its opposite on every nonempty manifold.

                @[simp]
                theorem TauCeti.Manifold.Orientation.reindex_neg {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] {ι' : Type u_5} [Fintype ι'] (e : ι ≃ ι') (o : Orientation I M ι) :
                reindex e (-o) = -reindex e o

                Construct a manifold orientation from a locally constant orientation of its tangent bundle. The choice of model orientation affects only its representative lift.

                Instances For
                  @[simp]

                  Interpreting the orientation reconstructed from tangent orientations recovers the bundle orientation.

                  @[simp]

                  Recovering a manifold orientation from its tangent bundle orientations is independent of the chosen model orientation.

                  The constant orientation of a model with corners.

                  Instances For

                    The constant model orientation is represented by its actual constant orientation lift.

                    The standard orientation of ℝ, in which the unit vector 1 is positive.

                    Instances For

                      The standard orientation of ℝ is the constant model orientation of the singleton basis.

                      @[simp]

                      At every point of ℝ, the standard orientation is the orientation of the singleton basis.

                      def TauCeti.Manifold.Orientation.congrModel {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] {I J : ModelWithCorners ℝ E H} (h : I = J) (o : Orientation I M ι) :

                      Cast a manifold orientation along an equality of models on the same model vector space and chart carrier.

                      Instances For
                        @[simp]
                        theorem TauCeti.Manifold.Orientation.congrModel_congrModel {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] {I J K : ModelWithCorners ℝ E H} (h₁ : I = J) (h₂ : J = K) (o : Orientation I M ι) :
                        congrModel h₂ (congrModel h₁ o) = congrModel ⋯ o
                        @[simp]
                        theorem TauCeti.Manifold.Orientation.neg_congrModel {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] {I J : ModelWithCorners ℝ E H} (h : I = J) (o : Orientation I M ι) :
                        @[simp]
                        theorem TauCeti.Manifold.Orientation.congrModel_inj {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] {I J : ModelWithCorners ℝ E H} (h : I = J) {o₁ o₂ : Orientation I M ι} :
                        congrModel h o₁ = congrModel h o₂ ↔ o₁ = o₂
                        @[simp]
                        theorem TauCeti.Manifold.Orientation.orientationAt_congrModel {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] [TopologicalSpace M] [ChartedSpace H M] [FiniteDimensional ℝ E] {ι : Type u_4} [Fintype ι] {I J : ModelWithCorners ℝ E H} (h : I = J) [IsManifold I 1 M] [IsManifold J 1 M] (o : Orientation I M ι) (x : M) :

                        A manifold with corners is orientable when it carries an orientation of its tangent spaces compatible with the within-range chart Jacobians.

                        Instances

                          Every model with corners carries its constant model orientation.

                          A manifold is orientable exactly when its tangent bundle is orientable.