Freek, I just caught myself making a big inference leap that I didn't intend.
The line below
F NOTIN l [notFl] by l_line, Distinct, I1, Collinear_DEF, Fexists,
NOTIN;
is a bug on my part. I meant to write
F NOTIN l [notFl] by l_line, Cl, Collinear_DEF, -, NOTIN;
Miz3 justified my first buggy line with a 547,963 MESON solved at number, and
it took me a while to see how MESON did it. Here's the miz3 proof of an easy
result, Euclid's Proposition I.11: you can push a perpendicular off a line:
let EuclidProp11_THM = thm `;
let A B be point;
assume ~(A = B) [notAB];
thus ? F. Right (angle A B F)
proof
consider l such that
Line l /\ A IN l /\ B IN l [l_line] by notAB, I1;
consider C such that
B IN open (A,C) /\ seg B C === seg B A [ABC] by notAB, SEGMENT,
C1OppositeRay_THM;
C IN l [Cl] by l_line, -, BetweenLinear_THM;
~(A = B) /\ ~(A = C) /\ ~(B = C) /\ Collinear A B C [Distinct] by ABC,
B1';
seg B A === seg B C [BAeqBC] by -, SEGMENT, ABC, C2Symmetric;
consider F such that
~Collinear A F C /\ seg F A === seg F C [Fexists] by Distinct,
IsoscelesExists_THM;
F NOTIN l [notFl] by l_line, Distinct, I1, Collinear_DEF, Fexists,
NOTIN;
~Collinear B F A /\ ~Collinear B F C [BFAncol] by l_line, Cl, Distinct,
I1, Collinear_DEF, -, NOTIN;
~Collinear A B F /\ Angle (angle A B F) [angABF] by -,
CollinearSymmetry_THM, ANGLE;
angle A B F Suppl angle F B C [ABFsuppl] by -, ABC,
SupplementaryAngles_DEF;
~(B = F) by l_line, notFl, NOTIN;
seg B F === seg B F by -, SEGMENT, C2Reflexive;
B,F,A cong B,F,C by BFAncol, -, BAeqBC, Fexists, SSS_THM;
angle A B F === angle F B C by -, TriangleCong_DEF, AngleSymmetry_THM;
qed by angABF, ABFsuppl, -, RightAngle_DEF`;;
All I needed was to say that A, F & C are noncollinear (Fexists), so there
can't be any line containing the three (Collinear_DEF) A & C already belong to
l (l_line, Cl), so if F belongs to l as well, A, F & C would be collinear, and
that's a contradiction. MESON does such proofs by contradiction just fine.
That's the line I should have written:
F NOTIN l [notFl] by l_line, Cl, Collinear_DEF, -, NOTIN;
But I wrote buggily
F NOTIN l [notFl] by l_line, Distinct, I1, Collinear_DEF, Fexists,
NOTIN;
I think I see how miz3 get a proof out of this nonsense I wrote:
A & B are distinct points on l (l_line, Distinct), and so there is only one
line containing A & B (I1). Since
A, B & C are collinear (Distinct), C must belong to this line l as well
(Collinear_DEF), and now we can use the proof I meant above. Maybe this leap
isn't that huge. But I certainly didn't intend it, and it took me a while to
figure out how miz3 could have made sense of it.
--
Best,
Bill
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
hol-info mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/hol-info