Documentation

Mathlib.Geometry.Euclidean.Altitude

Altitudes of a simplex #

This file defines the altitudes of a simplex and their feet.

Main definitions #

References #

An altitude of a simplex is the line that passes through a vertex and is orthogonal to the opposite face.

Equations
    Instances For

      A vertex lies in the corresponding altitude.

      The vector span of the opposite face lies in the direction orthogonal to an altitude.

      theorem Affine.Simplex.altitude_map {V : Type u_1} {P : Type u_2} [NormedAddCommGroup V] [InnerProductSpace โ„ V] [MetricSpace P] [NormedAddTorsor V P] {Vโ‚‚ : Type u_3} {Pโ‚‚ : Type u_4} [NormedAddCommGroup Vโ‚‚] [InnerProductSpace โ„ Vโ‚‚] [MetricSpace Pโ‚‚] [NormedAddTorsor Vโ‚‚ Pโ‚‚] {n : โ„•} (s : Simplex โ„ P n) (f : P โ†’แตƒโฑ[โ„] Pโ‚‚) (i : Fin (n + 1)) :
      @[simp]

      An altitude is one-dimensional (i.e., a line).

      A line through a vertex is the altitude through that vertex if and only if it is orthogonal to the opposite face.

      def Affine.Simplex.altitudeFoot {V : Type u_1} {P : Type u_2} [NormedAddCommGroup V] [InnerProductSpace โ„ V] [MetricSpace P] [NormedAddTorsor V P] {n : โ„•} [NeZero n] (s : Simplex โ„ P n) (i : Fin (n + 1)) :
      P

      The foot of an altitude is the orthogonal projection of a vertex of a simplex onto the opposite face.

      Equations
        Instances For
          @[simp]
          theorem Affine.Simplex.altitudeFoot_map {V : Type u_1} {P : Type u_2} [NormedAddCommGroup V] [InnerProductSpace โ„ V] [MetricSpace P] [NormedAddTorsor V P] {Vโ‚‚ : Type u_3} {Pโ‚‚ : Type u_4} [NormedAddCommGroup Vโ‚‚] [InnerProductSpace โ„ Vโ‚‚] [MetricSpace Pโ‚‚] [NormedAddTorsor Vโ‚‚ Pโ‚‚] {n : โ„•} [NeZero n] (s : Simplex โ„ P n) (f : P โ†’แตƒโฑ[โ„] Pโ‚‚) (i : Fin (n + 1)) :
          (s.map f.toAffineMap โ‹ฏ).altitudeFoot i = f (s.altitudeFoot i)

          The height of a vertex of a simplex is the distance between it and the foot of the altitude from that vertex.

          Equations
            Instances For
              @[simp]
              theorem Affine.Simplex.height_reindex {V : Type u_1} {P : Type u_2} [NormedAddCommGroup V] [InnerProductSpace โ„ V] [MetricSpace P] [NormedAddTorsor V P] {m n : โ„•} [NeZero m] [NeZero n] (s : Simplex โ„ P n) (e : Fin (n + 1) โ‰ƒ Fin (m + 1)) :
              (s.reindex e).height = s.height โˆ˜ โ‡‘e.symm
              @[simp]
              theorem Affine.Simplex.height_map {V : Type u_1} {P : Type u_2} [NormedAddCommGroup V] [InnerProductSpace โ„ V] [MetricSpace P] [NormedAddTorsor V P] {Vโ‚‚ : Type u_3} {Pโ‚‚ : Type u_4} [NormedAddCommGroup Vโ‚‚] [InnerProductSpace โ„ Vโ‚‚] [MetricSpace Pโ‚‚] [NormedAddTorsor Vโ‚‚ Pโ‚‚] {n : โ„•} [NeZero n] (s : Simplex โ„ P n) (f : P โ†’แตƒโฑ[โ„] Pโ‚‚) (i : Fin (n + 1)) :
              (s.map f.toAffineMap โ‹ฏ).height i = s.height i
              @[simp]
              theorem Affine.Simplex.height_pos {V : Type u_1} {P : Type u_2} [NormedAddCommGroup V] [InnerProductSpace โ„ V] [MetricSpace P] [NormedAddTorsor V P] {n : โ„•} [NeZero n] (s : Simplex โ„ P n) (i : Fin (n + 1)) :
              0 < s.height i

              Extension for the positivity tactic: the height of a simplex is always positive.

              Equations
                Instances For

                  Altitudes are perpendicular to the faces containing their foot.

                  The inner product of an edge from j to i and the vector from the foot of i to i is the square of the height.

                  The inner product of two distinct altitudes has absolute value strictly less than the product of their lengths.

                  Equivalently, neither vector is a multiple of the other; the angle between them is not 0 or ฯ€.

                  The inner product of two altitudes has value strictly greater than the negated product of their lengths.