Documentation

FormalConjectures.ForMathlib.Geometry.«2d»

Oriented angles make sense in 2d.

Note: this can't blindly be added to mathlib as it creates an "instance diamond" with an instance for modules satisfying is_empty.

Equations

Two dimensional euclidean space is two-dimensional.

We say a subset A of points in the plane is non-trilinear if it contains no three points that lie on the same line.

Equations
Instances For

    ConvexIndep S means that S consists of extremal points of its convex hull, i.e., the point set encloses a convex shape. Also known as a "convex-independent set".

    Equations
    Instances For

      The set P contains a convex n-gon. See also IsConvexPolygon.

      Equations
      Instances For

        The statement that a sequence of points form a counter-clockwise convex polygon.

        Equations
        Instances For
          theorem EuclideanGeometry.IsCcwConvexPolygon.sign_oangle {V : Type u_1} {P : Type u_2} {n : } [NormedAddCommGroup V] [InnerProductSpace V] [MetricSpace P] [NormedAddTorsor V P] [Module.Oriented V (Fin 2)] [Fact (Module.finrank V = 2)] {p : Fin nP} (hp : IsCcwConvexPolygon p) {i j k : Fin n} (hij : i < j) (hjk : j < k) :
          (oangle (p i) (p j) (p k)).sign = 1
          theorem EuclideanGeometry.IsCcwConvexPolygon.sign_oangle' {V : Type u_1} {P : Type u_2} {n : } [NormedAddCommGroup V] [InnerProductSpace V] [MetricSpace P] [NormedAddTorsor V P] [Module.Oriented V (Fin 2)] [Fact (Module.finrank V = 2)] {p : Fin nP} (hp : IsCcwConvexPolygon p) {i j k : Fin n} (hij : i < j) (hjk : j < k) :
          (oangle (p j) (p k) (p i)).sign = 1
          theorem EuclideanGeometry.IsCcwConvexPolygon.sign_oangle'' {V : Type u_1} {P : Type u_2} {n : } [NormedAddCommGroup V] [InnerProductSpace V] [MetricSpace P] [NormedAddTorsor V P] [Module.Oriented V (Fin 2)] [Fact (Module.finrank V = 2)] {p : Fin nP} (hp : IsCcwConvexPolygon p) {i j k : Fin n} (hij : i < j) (hjk : j < k) :
          (oangle (p k) (p i) (p j)).sign = 1
          theorem EuclideanGeometry.IsCcwConvexPolygon.sign_oangle_finRotate {V : Type u_1} {P : Type u_2} {n : } [NormedAddCommGroup V] [InnerProductSpace V] [MetricSpace P] [NormedAddTorsor V P] [Module.Oriented V (Fin 2)] [Fact (Module.finrank V = 2)] {p : Fin nP} (hp : IsCcwConvexPolygon p) (hn : 3 n) (i : Fin n) :
          (oangle (p i) (p ((finRotate n) i)) (p ((finRotate n) ((finRotate n) i)))).sign = 1
          theorem EuclideanGeometry.isCcwConvexPolygon_four' {V : Type u_1} {P : Type u_2} [NormedAddCommGroup V] [InnerProductSpace V] [MetricSpace P] [NormedAddTorsor V P] [Module.Oriented V (Fin 2)] [Fact (Module.finrank V = 2)] {p : Fin 4P} :
          IsCcwConvexPolygon p (oangle (p 0) (p 1) (p 2)).sign = 1 (oangle (p 1) (p 2) (p 3)).sign = 1 (oangle (p 2) (p 3) (p 0)).sign = 1 (oangle (p 3) (p 0) (p 1)).sign = 1
          @[simp]

          The statement that a sequence of points form a convex polygon.

          Equations
          Instances For

            Three affine independent points always form a convex polygon.

            noncomputable def EuclideanGeometry.triangle_area {V : Type u_1} {P : Type u_2} [NormedAddCommGroup V] [InnerProductSpace V] [MetricSpace P] [NormedAddTorsor V P] [Module.Oriented V (Fin 2)] [Fact (Module.finrank V = 2)] (a b c : P) :
            Equations
            Instances For
              theorem EuclideanGeometry.triangle_area_eq_det (a b c : EuclideanSpace (Fin 2)) :
              triangle_area a b c = !![a 0, b 0, c 0; a 1, b 1, c 1; 1, 1, 1].det / 2

              Given a finite set of points in the plane, we define the number of distinct distances between pairs of points.

              Equations
              Instances For
                def IsIsosceles {α : Type u_1} [Dist α] (p q r : α) :
                Equations
                Instances For
                  def Set.IsIsosceles {α : Type} [Dist α] (A : Set α) :
                  Equations
                  Instances For