Documentation

EuclideanGeometry.Foundation.Axiom.Triangle.Basic

theorem EuclidGeom.Triangle.ext {P : Type u_1} :
∀ {inst : EuclidGeom.EuclideanPlane P} (x y : EuclidGeom.Triangle P), x.point₁ = y.point₁x.point₂ = y.point₂x.point₃ = y.point₃x = y
theorem EuclidGeom.Triangle.ext_iff {P : Type u_1} :
∀ {inst : EuclidGeom.EuclideanPlane P} (x y : EuclidGeom.Triangle P), x = y x.point₁ = y.point₁ x.point₂ = y.point₂ x.point₃ = y.point₃
  • point₁ : P
  • point₂ : P
  • point₃ : P
Instances For
    Equations
    • tr.edge₁ = { source := tr.point₂, target := tr.point₃ }
    Instances For
      Equations
      • tr.edge₂ = { source := tr.point₃, target := tr.point₁ }
      Instances For
        Equations
        • tr.edge₃ = { source := tr.point₁, target := tr.point₂ }
        Instances For
          Equations
          Instances For
            Equations
            • tr.area = |tr.oarea|
            Instances For
              Equations
              Instances For
                Equations
                Instances For
                  @[inline, reducible]
                  Equations
                  • tr_nd.point₁ = (tr_nd).point₁
                  Instances For
                    @[inline, reducible]
                    Equations
                    • tr_nd.point₂ = (tr_nd).point₂
                    Instances For
                      @[inline, reducible]
                      Equations
                      • tr_nd.point₃ = (tr_nd).point₃
                      Instances For
                        instance EuclidGeom.TriangleND.nontriv₁ {P : Type u_1} [EuclidGeom.EuclideanPlane P] (tr_nd : EuclidGeom.TriangleND P) :
                        EuclidGeom.PtNe tr_nd.point₃ tr_nd.point₂
                        Equations
                        instance EuclidGeom.TriangleND.nontriv₂ {P : Type u_1} [EuclidGeom.EuclideanPlane P] (tr_nd : EuclidGeom.TriangleND P) :
                        EuclidGeom.PtNe tr_nd.point₁ tr_nd.point₃
                        Equations
                        instance EuclidGeom.TriangleND.nontriv₃ {P : Type u_1} [EuclidGeom.EuclideanPlane P] (tr_nd : EuclidGeom.TriangleND P) :
                        EuclidGeom.PtNe tr_nd.point₂ tr_nd.point₁
                        Equations
                        @[inline, reducible]
                        Equations
                        • tr_nd.edge₁ = (tr_nd).edge₁
                        Instances For
                          @[inline, reducible]
                          Equations
                          • tr_nd.edge₂ = (tr_nd).edge₂
                          Instances For
                            @[inline, reducible]
                            Equations
                            • tr_nd.edge₃ = (tr_nd).edge₃
                            Instances For
                              Equations
                              • tr_nd.edgeND₁ = { val := (tr_nd).edge₁, property := (_ : tr_nd.point₃ tr_nd.point₂) }
                              Instances For
                                Equations
                                • tr_nd.edgeND₂ = { val := (tr_nd).edge₂, property := (_ : tr_nd.point₁ tr_nd.point₃) }
                                Instances For
                                  Equations
                                  • tr_nd.edgeND₃ = { val := (tr_nd).edge₃, property := (_ : tr_nd.point₂ tr_nd.point₁) }
                                  Instances For
                                    @[inline, reducible]
                                    Equations
                                    • tr_nd.oarea = (tr_nd).oarea
                                    Instances For
                                      @[inline, reducible]
                                      Equations
                                      • tr_nd.area = (tr_nd).area
                                      Instances For
                                        Equations
                                        • tr_nd.is_cclock = (0 < tr_nd.oarea)
                                        Instances For
                                          Equations
                                          • tr_nd.angle₁ = ANG tr_nd.point₂ tr_nd.point₁ tr_nd.point₃ (_ : tr_nd.point₂ tr_nd.point₁) (_ : tr_nd.point₃ tr_nd.point₁)
                                          Instances For
                                            Equations
                                            • tr_nd.angle₂ = ANG tr_nd.point₃ tr_nd.point₂ tr_nd.point₁ (_ : tr_nd.point₃ tr_nd.point₂) (_ : tr_nd.point₁ tr_nd.point₂)
                                            Instances For
                                              Equations
                                              • tr_nd.angle₃ = ANG tr_nd.point₁ tr_nd.point₃ tr_nd.point₂ (_ : tr_nd.point₁ tr_nd.point₃) (_ : tr_nd.point₂ tr_nd.point₃)
                                              Instances For
                                                Equations
                                                • One or more equations did not get rendered due to their size.
                                                Instances For
                                                  Equations
                                                  • EuclidGeom.Triangle.instInteriorTriangle = { interior := EuclidGeom.Triangle.interior }
                                                  Equations
                                                  • One or more equations did not get rendered due to their size.
                                                  Instances For
                                                    Equations
                                                    Instances For
                                                      Equations
                                                      • tr.perm_vertices = { point₁ := tr.point₂, point₂ := tr.point₃, point₃ := tr.point₁ }
                                                      Instances For
                                                        theorem EuclidGeom.Triangle.eq_self_of_perm_vertices_three_times {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr : EuclidGeom.Triangle P) :
                                                        tr.perm_vertices.perm_vertices.perm_vertices = tr
                                                        Equations
                                                        • tr.flip_vertices = { point₁ := tr.point₁, point₂ := tr.point₃, point₃ := tr.point₂ }
                                                        Instances For
                                                          theorem EuclidGeom.Triangle.eq_self_of_flip_vertices_twice {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr : EuclidGeom.Triangle P) :
                                                          tr.flip_vertices.flip_vertices = tr
                                                          theorem EuclidGeom.Triangle.eq_flip_of_perm_twice_of_perm_flip_vertices {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr : EuclidGeom.Triangle P) :
                                                          tr.flip_vertices.perm_vertices.perm_vertices = tr.perm_vertices.flip_vertices
                                                          Equations
                                                          • One or more equations did not get rendered due to their size.
                                                          Instances For
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            Instances For
                                                              Equations
                                                              Instances For
                                                                Equations
                                                                • One or more equations did not get rendered due to their size.
                                                                Instances For
                                                                  theorem EuclidGeom.Triangle.triangle_ineq {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr : EuclidGeom.Triangle P) :
                                                                  tr.edge₃.length tr.edge₁.length + tr.edge₂.length
                                                                  theorem EuclidGeom.Triangle.trivial_of_edge_sum_eq_edge {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr : EuclidGeom.Triangle P) :
                                                                  tr.edge₁.length + tr.edge₂.length = tr.edge₃.length¬tr.IsND
                                                                  theorem EuclidGeom.Triangle.triangle_ineq' {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr : EuclidGeom.Triangle P) (nontriv : tr.IsND) :
                                                                  tr.edge₁.length + tr.edge₂.length > tr.edge₃.length
                                                                  theorem EuclidGeom.Triangle.edge_sum_eq_edge_iff_collinear {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr : EuclidGeom.Triangle P) :
                                                                  EuclidGeom.Collinear tr.point₁ tr.point₂ tr.point₃ tr.edge₁.length + tr.edge₂.length = tr.edge₃.length tr.edge₂.length + tr.edge₃.length = tr.edge₁.length tr.edge₃.length + tr.edge₁.length = tr.edge₂.length
                                                                  theorem EuclidGeom.TriangleND.angle₁_pos_iff_cclock {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr_nd : EuclidGeom.TriangleND P) :
                                                                  tr_nd.is_cclock tr_nd.angle₁.value.IsPos
                                                                  theorem EuclidGeom.TriangleND.angle₂_pos_iff_cclock {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr_nd : EuclidGeom.TriangleND P) :
                                                                  tr_nd.is_cclock tr_nd.angle₂.value.IsPos
                                                                  theorem EuclidGeom.TriangleND.angle₃_pos_iff_cclock {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr_nd : EuclidGeom.TriangleND P) :
                                                                  tr_nd.is_cclock tr_nd.angle₃.value.IsPos
                                                                  theorem EuclidGeom.TriangleND.angle₁_neg_iff_not_cclock {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr_nd : EuclidGeom.TriangleND P) :
                                                                  ¬tr_nd.is_cclock tr_nd.angle₁.value.IsNeg
                                                                  theorem EuclidGeom.TriangleND.angle₂_neg_iff_not_cclock {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr_nd : EuclidGeom.TriangleND P) :
                                                                  ¬tr_nd.is_cclock tr_nd.angle₂.value.IsNeg
                                                                  theorem EuclidGeom.TriangleND.angle₃_neg_iff_not_cclock {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr_nd : EuclidGeom.TriangleND P) :
                                                                  ¬tr_nd.is_cclock tr_nd.angle₃.value.IsNeg
                                                                  theorem EuclidGeom.TriangleND.pos_pos_or_neg_neg_of_iff_cclock {P : Type u_2} [EuclidGeom.EuclideanPlane P] {tr_nd₁ : EuclidGeom.TriangleND P} {tr_nd₂ : EuclidGeom.TriangleND P} :
                                                                  (tr_nd₁.is_cclock tr_nd₂.is_cclock) tr_nd₁.angle₁.value.IsPos tr_nd₂.angle₁.value.IsPos tr_nd₁.angle₁.value.IsNeg tr_nd₂.angle₁.value.IsNeg
                                                                  theorem EuclidGeom.TriangleND.angle_sum_eq_pi_of_cclock {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr_nd : EuclidGeom.TriangleND P) (cclock : tr_nd.is_cclock) :
                                                                  tr_nd.angle₁.value + tr_nd.angle₂.value + tr_nd.angle₃.value = ∠[Real.pi]
                                                                  theorem EuclidGeom.TriangleND.angle_sum_eq_neg_pi_of_clock {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr_nd : EuclidGeom.TriangleND P) (clock : ¬tr_nd.is_cclock) :
                                                                  tr_nd.angle₁.value + tr_nd.angle₂.value + tr_nd.angle₃.value = -∠[Real.pi]
                                                                  theorem EuclidGeom.TriangleND.triangle_ineq' {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr_nd : EuclidGeom.TriangleND P) :
                                                                  tr_nd.edge₁.length + tr_nd.edge₂.length > tr_nd.edge₃.length
                                                                  theorem EuclidGeom.TriangleND.sum_of_other_angle_same_if_one_angle_same {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr₁ : EuclidGeom.TriangleND P) (tr₂ : EuclidGeom.TriangleND P) (a : tr₁.angle₁.value = tr₂.angle₁.value) :
                                                                  tr₁.angle₂.value + tr₁.angle₃.value = tr₂.angle₂.value + tr₂.angle₃.value
                                                                  theorem EuclidGeom.TriangleND.sum_of_other_angle_same_neg_if_one_angle_same_neg {P : Type u_2} [EuclidGeom.EuclideanPlane P] (tr₁ : EuclidGeom.TriangleND P) (tr₂ : EuclidGeom.TriangleND P) (a : tr₁.angle₁.value = -tr₂.angle₁.value) :
                                                                  tr₁.angle₂.value + tr₁.angle₃.value = -(tr₂.angle₂.value + tr₂.angle₃.value)