Documentation

LeanPool.SyntheticEuclid4.SyntheticEuclid4

Synthetic Geometry, Euclid's Elements Book I using Avigad Axioms #

In this file we prove the Pythagorean theorem (Euclid I.47) using Avigad's axioms for synthetic geometry.

theorem SyntheticEuclid4.col_134_of_col_123_col_124 [I : IncidenceGeometry] {a b c d : IncidenceGeometry.Point} (ab : a b) (col_123 : colinear a b c) (col_124 : colinear a b d) :
colinear a c d
theorem SyntheticEuclid4.tri_143_of_tri_col [I : IncidenceGeometry] {a b c d : IncidenceGeometry.Point} (ad : a d) (tri_abc : triangle a b c) (col_abd : colinear a b d) :
triangle a d c
theorem SyntheticEuclid4.tri_of_B_B_tri [I : IncidenceGeometry] {a b c d e : IncidenceGeometry.Point} (Babd : IncidenceGeometry.B a b d) (Bace : IncidenceGeometry.B a c e) (tri_abc : triangle a b c) :
triangle a d e

Lemma for I.14 that handles some casework. If one angle is contained in another and are equal then a sub-angle is zero

theorem SyntheticEuclid4.ne_of_col_tri [I : IncidenceGeometry] {a b c d : IncidenceGeometry.Point} (col_abc : colinear a b c) (tri_acd : triangle d a c) :
d b
theorem SyntheticEuclid4.ne_of_col_tri' [I : IncidenceGeometry] {a b c d : IncidenceGeometry.Point} (col_abc : colinear a b c) (tri_acd : triangle d a c) :
b d
theorem SyntheticEuclid4.not_B_of_tri_ang [I : IncidenceGeometry] {a b c d e f : IncidenceGeometry.Point} (tri_abc : triangle a b c) (ef : e f) (de : d e) (abc_def : IncidenceGeometry.angle a b c = IncidenceGeometry.angle d e f) :
theorem SyntheticEuclid4.diffside_of_B_pgram [I : IncidenceGeometry] {a b c d f : IncidenceGeometry.Point} {L M N O : IncidenceGeometry.Line} (Badf : IncidenceGeometry.B a d f) (pgram1 : paragram a d c b L M N O) :
diffside b f M
theorem SyntheticEuclid4.sameside_of_B_pgram_pgram [I : IncidenceGeometry] {a b c d e f : IncidenceGeometry.Point} {L M N O P Q : IncidenceGeometry.Line} (Badf : IncidenceGeometry.B a d f) (pgram1 : paragram a d c b L M N O) (pgram2 : paragram e f c b L P N Q) :
theorem SyntheticEuclid4.sameside_of_B_prgram_pgram_trans [I : IncidenceGeometry] {a b c d e f : IncidenceGeometry.Point} {L M N O P Q : IncidenceGeometry.Line} (Badf : IncidenceGeometry.B a d f) (pgram1 : paragram a d c b L M N O) (pgram2 : paragram e f c b L P N Q) :
theorem SyntheticEuclid4.sameside_of_B_prgram_pgram_trans' [I : IncidenceGeometry] {a b c d e f : IncidenceGeometry.Point} {L M N O P Q : IncidenceGeometry.Line} (Badf : IncidenceGeometry.B a d f) (pgram1 : paragram a d c b L M N O) (pgram2 : paragram e f c b L P N Q) :
theorem SyntheticEuclid4.diffside_of_sameside_2_paragram [I : IncidenceGeometry] {a b c d e f : IncidenceGeometry.Point} {L M N O P Q : IncidenceGeometry.Line} (afM : IncidenceGeometry.SameSide a f M) (pgram1 : paragram a d c b L M N O) (pgram2 : paragram e f c b L P N Q) :
diffside e d P
theorem SyntheticEuclid4.B_of_B_2_paragram [I : IncidenceGeometry] {a b c d e f : IncidenceGeometry.Point} {L M N O P Q : IncidenceGeometry.Line} (df : d f) (Badf : ¬IncidenceGeometry.B a d f) (pgram1 : paragram a d c b L M N O) (pgram2 : paragram e f c b L P N Q) :
theorem SyntheticEuclid4.B_of_sq [I : IncidenceGeometry] {b c d e l x : IncidenceGeometry.Point} {L O P Q X : IncidenceGeometry.Line} (Bbxc : IncidenceGeometry.B b x c) (xX : IncidenceGeometry.OnLine x X) (lX : IncidenceGeometry.OnLine l X) (lP : IncidenceGeometry.OnLine l P) (paraQX : para Q X) (paraOX : para O X) (pgram : paragram b c d e L O P Q) :
theorem SyntheticEuclid4.sameside_of_pyth [I : IncidenceGeometry] {a b c d e l : IncidenceGeometry.Point} {L O P Q X : IncidenceGeometry.Line} (Beld : IncidenceGeometry.B e l d) (aX : IncidenceGeometry.OnLine a X) (lX : IncidenceGeometry.OnLine l X) (pgram : paragram b c d e L O P Q) (paraQX : para Q X) :
theorem SyntheticEuclid4.square_eq_of_length_eq [I : IncidenceGeometry] {a b c d : IncidenceGeometry.Point} {L M N O P Q R S : IncidenceGeometry.Line} {b' a' d' c' : IncidenceGeometry.Point} (sq1 : square a b b' a') (sq2 : square c d d' c') (_pgram1 : paragram a b b' a' L M N O) (_pgram2 : paragram c d d' c' P Q R S) (len_eq : IncidenceGeometry.length a b = IncidenceGeometry.length c d) :

Euclid I.1, construction of an equilateral triangle on the sameside of a point

Euclid I.1, construction of a single equilateral triangle

Euclid I.3, Moving a smaller segment on top of a larger one

Euclid I.5, (part 1), isosceles triangles have equal angles

Euclid I.6, a triangle with equal angles is isosceles

Euclid I.13, A generalization of I.11. Instead of requiring the angles to be perpendicular, they can be arbitrary

Euclid I.14, the converse of I.13. If angles add to two right angles then you have betweeness

Euclid I.15, vertical angles are equal

Euclid I.16, external angles are greater than interior angles

Euclid I.16, external angles are greater than interior angles

Euclid I.17, Any two angles of a triangle sum to less than two right angles

Euclid I.17 corollary, An obtuse angle in a triangle is bigger than the other two angles

Euclid I.18, Opposite larger sides you have larger angles in a triangle

Euclid I.19, larger angles correspond to larger opposide sides in a triangle

Euclid I.21, with one triangle in another and sharing a base, the sum of the other two sides of the outer triangle is larger than that for the inner triangle, and the top angle of the outer triangle is smaller than that of the interior triangle

Euclid I.24, If two triangles have two congruent sides, and the included angle of one is bigger than the other then the opposite side is also bigger than that of the other triangle

Euclid I.26, if two triangles have two corresponding angles equal and the included sides equal, then they are congruent

Euclid I.26, if two triangles have two corresponding angles equal and the included sides equal, then they are congruent

Euclid I.26, if two triangles have two corresponding angles equal and a non-included side equal, then they are congruent

Euclid I.26, if two triangles have two corresponding angles equal and a non-included side equal, then they are congruent

Euclid I.27, if the alternate angles are equal, then the lines it formed from are parallel

Euclid I.28 part 1, If the exterior angle is equal to the internal and opposite angle then we have parallel Lines

Euclid I.28 part 2, If the sum of the interior angles is equal to two right angles then we have parallel Lines

Euclid I.29, basic properties of alternate, exterior, and interior angles with parallel lines

Euclid I.29, basic properties of alternate, exterior, and interior angles with parallel lines

theorem SyntheticEuclid4.para_trans [I : IncidenceGeometry] {L M N : IncidenceGeometry.Line} (MN : M N) (paraLM : para L M) (paraLN : para L N) :
para M N

Euclid I.30, transitivity of parallel lines

Euclid I.30, a corollary, a contrapositive of sorts of I.30

Euclid I.31, through a point off a line there exists a parallel line

Euclid I.32, the exterior angle equals the sum of the other two angles and the sum of all three interior angles adds to two right angles

Euclid I.33, parallel lines with pair of points with same length make a parallelogram

Euclid I.34, basic length, angle, and area properties of paralellograms

Euclid I.34, basic length properties of paralellograms

Euclid I.34, basic length properties of paralellograms

Euclid I.34, basic area properties of paralellograms

theorem SyntheticEuclid4.B_sameside_of_2_paragram [I : IncidenceGeometry] {a b c d e f : IncidenceGeometry.Point} {L M N O P Q : IncidenceGeometry.Line} (Badf : IncidenceGeometry.B a d f) (pgram1 : paragram a d c b L M N O) (pgram2 : paragram e f c b L P N Q) :
theorem SyntheticEuclid4.area_eq_of_paragram [I : IncidenceGeometry] {a b c d e f : IncidenceGeometry.Point} {L M N O P Q : IncidenceGeometry.Line} (pgram1 : paragram a d c b L M N O) (pgram2 : paragram e f c b L P N Q) :

Euclid I.35, parallelograms sharing two parallels have the same area

Euclid I.36, generalization of I.35 to parallelograms with a distance

Proof of the construction of the parallelogram from the triangle in I.37, used twice so worth having as its own lemma

Euclid I.37, triangles sharing two parallels have the same area

Euclid I.40, equal area triangles on the same side must be on the same parallels

Euclid I.39, equal area triangles on the same side must be on the same parallels

Euclid I.41, if a parallelogram shares the same parallels as a triangle and the same base, then the parallelogram has twice the area of the triangle

Euclid I.43, complementary parallelograms accross the diameter of a parallelogram are equal

theorem SyntheticEuclid4.lines_inter_of_pgram' [I : IncidenceGeometry] {a b e f g h k : IncidenceGeometry.Point} {L M N P Q R S : IncidenceGeometry.Line} (Babe : IncidenceGeometry.B a b e) (Bfgh : IncidenceGeometry.B f g h) (pgram1 : paragram f g b e Q P L R) (pgram2 : paragram a b g h L P Q M) (bS : IncidenceGeometry.OnLine b S) (hS : IncidenceGeometry.OnLine h S) (kS : IncidenceGeometry.OnLine k S) (kR : IncidenceGeometry.OnLine k R) (kN : IncidenceGeometry.OnLine k N) (paraMR : para M R) (paraLN : para L N) (paraQN : para Q N) :

Euclid I.44, make a parallelogram on a segment with a prescribed area and angle

theorem SyntheticEuclid4.pythagoras [I : IncidenceGeometry] {a b c d e f g h k : IncidenceGeometry.Point} {L M N O P Q R S T U W V : IncidenceGeometry.Line} (tri_abc : triangle a b c) (ang : IncidenceGeometry.angle c a b = IncidenceGeometry.rightangle) (sq1 : square c d e b) (sq2 : square a g f b) (sq3 : square a h k c) (pgram1 : paragram b c d e L O P Q) (pgram2 : paragram g a b f T N R S) (pgram3 : paragram h a c k U M W V) (adL : diffside a d L) (bhM : diffside b h M) (cgN : diffside c g N) :

Euclid I.47, the Pythagorean theorem

theorem SyntheticEuclid4.length_eq_of_square_eq [I : IncidenceGeometry] {a b c d : IncidenceGeometry.Point} {L M N O P Q R S : IncidenceGeometry.Line} {b' a' d' c' : IncidenceGeometry.Point} (sq1 : square a b b' a') (sq2 : square c d d' c') (pgram1 : paragram a b b' a' L M N O) (pgram2 : paragram c d d' c' P Q R S) (areas_eq : IncidenceGeometry.area a b a' + IncidenceGeometry.area a' b b' = IncidenceGeometry.area c d c' + IncidenceGeometry.area c' d d') :

Lemma for I.48

theorem SyntheticEuclid4.pythagoras_converse [I : IncidenceGeometry] {a b c d e f g h k : IncidenceGeometry.Point} {L M N O P Q R S T U W V : IncidenceGeometry.Line} (tri_abc : triangle a b c) (sq1 : square c d e b) (sq2 : square a g f b) (sq3 : square a h k c) (pgram1 : paragram b c d e L O P Q) (pgram2 : paragram g a b f T N R S) (pgram3 : paragram h a c k U M W V) (_adL : diffside a d L) (_bhM : diffside b h M) (_cgN : diffside c g N) (sq_sum : IncidenceGeometry.area b c d + IncidenceGeometry.area b d e = IncidenceGeometry.area a b f + IncidenceGeometry.area a g f + IncidenceGeometry.area a h k + IncidenceGeometry.area a c k) :

Euclid I.48, the converse to the Pythagorean theorem