euclid_3.miz
begin
reserve z,z1,z2 for
Complex;
reserve r,x1,x2 for
Real;
reserve p0,p,p1,p2,p3,q for
Point of (
TOP-REAL 2);
definition
let z be
Complex;
::
EUCLID_3:def1
func
cpx2euc (z) ->
Point of (
TOP-REAL 2) equals
|[(
Re z), (
Im z)]|;
correctness ;
end
definition
let p be
Point of (
TOP-REAL 2);
::
EUCLID_3:def2
func
euc2cpx (p) ->
Element of
COMPLEX equals ((p
`1 )
+ ((p
`2 )
*
<i> ));
correctness by
XCMPLX_0:def 2;
end
theorem ::
EUCLID_3:1
Th1: (
euc2cpx (
cpx2euc z))
= z
proof
(
|[(
Re z), (
Im z)]|
`1 )
= (
Re z) & (
|[(
Re z), (
Im z)]|
`2 )
= (
Im z) by
EUCLID: 52;
hence thesis by
COMPLEX1: 13;
end;
theorem ::
EUCLID_3:2
Th2: (
cpx2euc (
euc2cpx p))
= p
proof
(
Re ((p
`1 )
+ ((p
`2 )
*
<i> )))
= (p
`1 ) & (
Im ((p
`1 )
+ ((p
`2 )
*
<i> )))
= (p
`2 ) by
COMPLEX1: 12;
hence thesis by
EUCLID: 53;
end;
theorem ::
EUCLID_3:3
for z1, z2 st (
cpx2euc z1)
= (
cpx2euc z2) holds z1
= z2
proof
let z1, z2;
assume
A1: (
cpx2euc z1)
= (
cpx2euc z2);
z2
= (
euc2cpx (
cpx2euc z2)) by
Th1;
hence thesis by
A1,
Th1;
end;
theorem ::
EUCLID_3:4
Th4: for p1, p2 st (
euc2cpx p1)
= (
euc2cpx p2) holds p1
= p2
proof
let p1, p2;
assume
A1: (
euc2cpx p1)
= (
euc2cpx p2);
p2
= (
cpx2euc (
euc2cpx p2)) by
Th2;
hence thesis by
A1,
Th2;
end;
theorem ::
EUCLID_3:5
Th5: (
cpx2euc (x1
+ (x2
*
<i> )))
=
|[x1, x2]|
proof
(
Re (x1
+ (x2
*
<i> )))
= x1 by
COMPLEX1: 12;
hence thesis by
COMPLEX1: 12;
end;
theorem ::
EUCLID_3:6
Th6:
|[(
Re (z1
+ z2)), (
Im (z1
+ z2))]|
=
|[((
Re z1)
+ (
Re z2)), ((
Im z1)
+ (
Im z2))]|
proof
(
|[(
Re (z1
+ z2)), (
Im (z1
+ z2))]|
`2 )
= (
Im (z1
+ z2)) by
EUCLID: 52;
then
A1: (
|[(
Re (z1
+ z2)), (
Im (z1
+ z2))]|
`2 )
= ((
Im z1)
+ (
Im z2)) by
COMPLEX1: 8;
(
|[(
Re (z1
+ z2)), (
Im (z1
+ z2))]|
`1 )
= (
Re (z1
+ z2)) by
EUCLID: 52;
then (
|[(
Re (z1
+ z2)), (
Im (z1
+ z2))]|
`1 )
= ((
Re z1)
+ (
Re z2)) by
COMPLEX1: 8;
hence thesis by
A1,
EUCLID: 53;
end;
theorem ::
EUCLID_3:7
Th7: (
cpx2euc (z1
+ z2))
= ((
cpx2euc z1)
+ (
cpx2euc z2))
proof
((
cpx2euc z1)
+ (
cpx2euc z2))
=
|[((
Re z1)
+ (
Re z2)), ((
Im z1)
+ (
Im z2))]| by
EUCLID: 56;
hence thesis by
Th6;
end;
theorem ::
EUCLID_3:8
Th8: (((p1
+ p2)
`1 )
+ (((p1
+ p2)
`2 )
*
<i> ))
= (((p1
`1 )
+ (p2
`1 ))
+ (((p1
`2 )
+ (p2
`2 ))
*
<i> ))
proof
A1: (p1
+ p2)
=
|[((p1
`1 )
+ (p2
`1 )), ((p1
`2 )
+ (p2
`2 ))]| by
EUCLID: 55;
A2: (
Im (((p1
`1 )
+ (p2
`1 ))
+ (((p1
`2 )
+ (p2
`2 ))
*
<i> )))
= ((p1
`2 )
+ (p2
`2 )) by
COMPLEX1: 12;
A3: (
Im (((p1
+ p2)
`1 )
+ (((p1
+ p2)
`2 )
*
<i> )))
= ((p1
+ p2)
`2 ) & (
Re (((p1
`1 )
+ (p2
`1 ))
+ (((p1
`2 )
+ (p2
`2 ))
*
<i> )))
= ((p1
`1 )
+ (p2
`1 )) by
COMPLEX1: 12;
(
Re (((p1
+ p2)
`1 )
+ (((p1
+ p2)
`2 )
*
<i> )))
= ((p1
+ p2)
`1 ) by
COMPLEX1: 12;
then (
Re (((p1
+ p2)
`1 )
+ (((p1
+ p2)
`2 )
*
<i> )))
= ((p1
`1 )
+ (p2
`1 )) by
A1,
EUCLID: 52;
hence thesis by
A1,
A3,
A2,
EUCLID: 52;
end;
theorem ::
EUCLID_3:9
Th9: (
euc2cpx (p1
+ p2))
= ((
euc2cpx p1)
+ (
euc2cpx p2))
proof
(
euc2cpx (p1
+ p2))
= (((p1
`1 )
+ (p2
`1 ))
+ (((p1
`2 )
+ (p2
`2 ))
*
<i> )) by
Th8;
hence thesis;
end;
theorem ::
EUCLID_3:10
Th10:
|[(
Re (
- z)), (
Im (
- z))]|
=
|[(
- (
Re z)), (
- (
Im z))]|
proof
(
|[(
Re (
- z)), (
Im (
- z))]|
`2 )
= (
Im (
- z)) by
EUCLID: 52;
then
A1: (
|[(
Re (
- z)), (
Im (
- z))]|
`2 )
= (
- (
Im z)) by
COMPLEX1: 17;
(
|[(
Re (
- z)), (
Im (
- z))]|
`1 )
= (
Re (
- z)) by
EUCLID: 52;
then (
|[(
Re (
- z)), (
Im (
- z))]|
`1 )
= (
- (
Re z)) by
COMPLEX1: 17;
hence thesis by
A1,
EUCLID: 53;
end;
theorem ::
EUCLID_3:11
Th11: (
cpx2euc (
- z))
= (
- (
cpx2euc z))
proof
(
- (
cpx2euc z))
=
|[(
- (
Re z)), (
- (
Im z))]| by
EUCLID: 60;
hence thesis by
Th10;
end;
theorem ::
EUCLID_3:12
Th12: (((
- p)
`1 )
+ (((
- p)
`2 )
*
<i> ))
= ((
- (p
`1 ))
+ ((
- (p
`2 ))
*
<i> ))
proof
A1: (
- p)
=
|[(
- (p
`1 )), (
- (p
`2 ))]| by
EUCLID: 59;
((
- (p
`1 ))
+ ((
- (p
`2 ))
*
<i> ))
= ((
- (p
`1 ))
+ ((
- (p
`2 ))
*
<i> ));
then
A2: (
Re ((
- (p
`1 ))
+ (
- ((p
`2 )
*
<i> ))))
= (
- (p
`1 )) & (
Im ((
- (p
`1 ))
+ (
- ((p
`2 )
*
<i> ))))
= (
- (p
`2 )) by
COMPLEX1: 12;
(
Re (((
- p)
`1 )
+ (((
- p)
`2 )
*
<i> )))
= ((
- p)
`1 ) by
COMPLEX1: 12;
then (
Im (((
- p)
`1 )
+ (((
- p)
`2 )
*
<i> )))
= ((
- p)
`2 ) & (
Re (((
- p)
`1 )
+ (((
- p)
`2 )
*
<i> )))
= (
- (p
`1 )) by
A1,
COMPLEX1: 12,
EUCLID: 52;
hence thesis by
A1,
A2,
EUCLID: 52;
end;
theorem ::
EUCLID_3:13
Th13: (
euc2cpx (
- p))
= (
- (
euc2cpx p))
proof
(
- (
euc2cpx p))
= ((
- (p
`1 ))
+ ((
- (p
`2 ))
*
<i> ));
hence thesis by
Th12;
end;
theorem ::
EUCLID_3:14
(
cpx2euc (z1
- z2))
= ((
cpx2euc z1)
- (
cpx2euc z2))
proof
thus (
cpx2euc (z1
- z2))
= (
cpx2euc (z1
+ (
- z2)))
.= ((
cpx2euc z1)
+ (
cpx2euc (
- z2))) by
Th7
.= ((
cpx2euc z1)
- (
cpx2euc z2)) by
Th11;
end;
theorem ::
EUCLID_3:15
Th15: (
euc2cpx (p1
- p2))
= ((
euc2cpx p1)
- (
euc2cpx p2))
proof
thus (
euc2cpx (p1
- p2))
= ((
euc2cpx p1)
+ (
euc2cpx (
- p2))) by
Th9
.= ((
euc2cpx p1)
+ (
- (
euc2cpx p2))) by
Th13
.= ((
euc2cpx p1)
- (
euc2cpx p2));
end;
theorem ::
EUCLID_3:16
Th16: (
cpx2euc
0c )
= (
0. (
TOP-REAL 2)) by
COMPLEX1: 4,
EUCLID: 54;
theorem ::
EUCLID_3:17
Th17: (
euc2cpx (
0. (
TOP-REAL 2)))
=
0c by
Th1,
Th16;
theorem ::
EUCLID_3:18
(
euc2cpx p)
=
0c implies p
= (
0. (
TOP-REAL 2)) by
Th2,
Th16;
theorem ::
EUCLID_3:19
(
cpx2euc (r
* z))
= (r
* (
cpx2euc z))
proof
A1: ((
cpx2euc z)
`1 )
= (
Re z) & ((
cpx2euc z)
`2 )
= (
Im z) by
EUCLID: 52;
r
= (r
+ (
0
*
<i> ));
then
A2: (
Re r)
= r & (
Im r)
=
0 by
COMPLEX1: 12;
then
A3: (
Im (r
* z))
= ((r
* (
Im z))
+ (
0
* (
Re z))) by
COMPLEX1: 9
.= (r
* (
Im z));
(
Re (r
* z))
= ((r
* (
Re z))
- (
0
* (
Im z))) by
A2,
COMPLEX1: 9
.= (r
* (
Re z));
hence thesis by
A3,
A1,
EUCLID: 57;
end;
theorem ::
EUCLID_3:20
(
euc2cpx (r
* p))
= (r
* (
euc2cpx p))
proof
(r
* p)
=
|[(r
* (p
`1 )), (r
* (p
`2 ))]| by
EUCLID: 57;
then ((r
* p)
`1 )
= (r
* (p
`1 )) & ((r
* p)
`2 )
= (r
* (p
`2 )) by
EUCLID: 52;
hence thesis;
end;
theorem ::
EUCLID_3:21
Th21:
|.(
euc2cpx p).|
= (
sqrt (((p
`1 )
^2 )
+ ((p
`2 )
^2 )))
proof
(
Re (
euc2cpx p))
= (p
`1 ) by
COMPLEX1: 12;
hence thesis by
COMPLEX1: 12;
end;
theorem ::
EUCLID_3:22
for f be
FinSequence of
REAL st (
len f)
= 2 holds
|.f.|
= (
sqrt (((f
. 1)
^2 )
+ ((f
. 2)
^2 )))
proof
let f be
FinSequence of
REAL ;
A1: ((
sqr f)
. 1)
= ((f
. 1)
^2 ) & ((
sqr f)
. 2)
= ((f
. 2)
^2 ) by
VALUED_1: 11;
(
dom (
sqr f))
= (
dom f) & (
Seg (
len (
sqr f)))
= (
dom (
sqr f)) by
FINSEQ_1:def 3,
VALUED_1: 11;
then
A2: (
len (
sqr f))
= (
len f) by
FINSEQ_1:def 3;
reconsider f1 = ((f
. 1)
^2 ), f2 = ((f
. 2)
^2 ) as
Element of
REAL by
XREAL_0:def 1;
assume (
len f)
= 2;
then (
sqr f)
=
<*((f
. 1)
^2 ), ((f
. 2)
^2 )*> by
A1,
A2,
FINSEQ_1: 44;
then (
Sum (
sqr f))
= (
Sum (
<*f1*>
^
<*f2*>)) by
FINSEQ_1:def 9
.= ((
Sum
<*f1*>)
+ ((f
. 2)
^2 )) by
RVSUM_1: 74
.= (((f
. 1)
^2 )
+ ((f
. 2)
^2 )) by
RVSUM_1: 73;
hence thesis;
end;
theorem ::
EUCLID_3:23
for f be
FinSequence of
REAL , p be
Point of (
TOP-REAL 2) st (
len f)
= 2 & p
= f holds
|.p.|
=
|.f.|;
theorem ::
EUCLID_3:24
|.(
cpx2euc z).|
= (
sqrt (((
Re z)
^2 )
+ ((
Im z)
^2 )))
proof
(
|[(
Re z), (
Im z)]|
`1 )
= (
Re z) & (
|[(
Re z), (
Im z)]|
`2 )
= (
Im z) by
EUCLID: 52;
hence thesis by
JGRAPH_3: 1;
end;
theorem ::
EUCLID_3:25
Th25:
|.(
euc2cpx p).|
=
|.p.|
proof
|.p.|
= (
sqrt (((p
`1 )
^2 )
+ ((p
`2 )
^2 ))) by
JGRAPH_3: 1;
hence thesis by
Th21;
end;
definition
let p;
::
EUCLID_3:def3
func
Arg (p) ->
Real equals (
Arg (
euc2cpx p));
correctness ;
end
theorem ::
EUCLID_3:26
for z be
Element of
COMPLEX , p st z
= (
euc2cpx p) or p
= (
cpx2euc z) holds (
Arg z)
= (
Arg p)
proof
let z be
Element of
COMPLEX , p;
assume
A1: z
= (
euc2cpx p) or p
= (
cpx2euc z);
per cases by
A1;
suppose z
= (
euc2cpx p);
hence thesis;
end;
suppose p
= (
cpx2euc z);
hence thesis by
Th1;
end;
end;
theorem ::
EUCLID_3:27
for x1,x2 be
Real, p st x1
= (
|.p.|
* (
cos (
Arg p))) & x2
= (
|.p.|
* (
sin (
Arg p))) holds p
=
|[x1, x2]|
proof
let x1,x2 be
Real, p;
assume x1
= (
|.p.|
* (
cos (
Arg p))) & x2
= (
|.p.|
* (
sin (
Arg p)));
then x1
= (
|.(
euc2cpx p).|
* (
cos (
Arg (
euc2cpx p)))) & x2
= (
|.(
euc2cpx p).|
* (
sin (
Arg (
euc2cpx p)))) by
Th25;
then (
euc2cpx p)
= (x1
+ (x2
*
<i> )) by
COMPTRIG: 62;
then p
= (
cpx2euc (x1
+ (x2
*
<i> ))) by
Th2;
hence thesis by
Th5;
end;
theorem ::
EUCLID_3:28
(
Arg (
0. (
TOP-REAL 2)))
=
0 by
Th17,
COMPTRIG: 35;
theorem ::
EUCLID_3:29
for p st p
<> (
0. (
TOP-REAL 2)) holds ((
Arg p)
<
PI implies (
Arg (
- p))
= ((
Arg p)
+
PI )) & ((
Arg p)
>=
PI implies (
Arg (
- p))
= ((
Arg p)
-
PI ))
proof
let p;
assume p
<> (
0. (
TOP-REAL 2));
then
A1: (
euc2cpx p)
<>
0c by
Th2,
Th16;
(
Arg (
- p))
= (
Arg (
- (
euc2cpx p))) by
Th13;
hence thesis by
A1,
COMPLEX2: 13;
end;
theorem ::
EUCLID_3:30
for p st (
Arg p)
=
0 holds p
=
|[
|.p.|,
0 ]| & (p
`2 )
=
0
proof
let p;
assume (
Arg p)
=
0 ;
then
A1: (
euc2cpx p)
= (
|.(
euc2cpx p).|
+ (
0
*
<i> )) & (
Im (
euc2cpx p))
=
0 by
COMPLEX2: 15,
COMPLEX2: 21;
(
cpx2euc (
|.(
euc2cpx p).|
+ (
0
*
<i> )))
=
|[
|.(
euc2cpx p).|,
0 ]| &
|.(
euc2cpx p).|
=
|.p.| by
Th5,
Th25;
hence thesis by
A1,
Th2,
COMPLEX1: 12;
end;
theorem ::
EUCLID_3:31
Th31: for p st p
<> (
0. (
TOP-REAL 2)) holds ((
Arg p)
<
PI iff (
Arg (
- p))
>=
PI )
proof
let p;
assume p
<> (
0. (
TOP-REAL 2));
then
A1: (
euc2cpx p)
<>
0c by
Th2,
Th16;
(
Arg (
- p))
= (
Arg (
- (
euc2cpx p))) by
Th13;
hence thesis by
A1,
COMPLEX2: 16;
end;
theorem ::
EUCLID_3:32
for p1, p2 st p1
<> p2 or (p1
- p2)
<> (
0. (
TOP-REAL 2)) holds ((
Arg (p1
- p2))
<
PI iff (
Arg (p2
- p1))
>=
PI )
proof
let p1, p2;
assume p1
<> p2 or (p1
- p2)
<> (
0. (
TOP-REAL 2));
then
A1: (p1
- p2)
<> (
0. (
TOP-REAL 2)) by
RLVECT_1: 21;
(
- (p1
- p2))
= (p2
- p1) by
RLVECT_1: 33;
hence thesis by
A1,
Th31;
end;
theorem ::
EUCLID_3:33
for p holds (
Arg p)
in
].
0 ,
PI .[ iff (p
`2 )
>
0
proof
let p;
(
Im (
euc2cpx p))
= (p
`2 ) by
COMPLEX1: 12;
hence thesis by
COMPLEX2: 18;
end;
theorem ::
EUCLID_3:34
for p1, p2 st (
Arg p1)
<
PI & (
Arg p2)
<
PI holds (
Arg (p1
+ p2))
<
PI
proof
let p1, p2;
assume (
Arg p1)
<
PI & (
Arg p2)
<
PI ;
then (
Arg ((
euc2cpx p1)
+ (
euc2cpx p2)))
<
PI by
COMPLEX2: 20;
hence thesis by
Th9;
end;
definition
let p1, p2, p3;
::
EUCLID_3:def4
func
angle (p1,p2,p3) ->
Real equals (
angle ((
euc2cpx p1),(
euc2cpx p2),(
euc2cpx p3)));
correctness ;
end
theorem ::
EUCLID_3:35
for p1, p2, p3 holds (
angle (p1,p2,p3))
= (
angle ((p1
- p2),(
0. (
TOP-REAL 2)),(p3
- p2)))
proof
let p1, p2, p3;
((
euc2cpx p1)
- (
euc2cpx p2))
= (
euc2cpx (p1
- p2)) & ((
euc2cpx p3)
- (
euc2cpx p2))
= (
euc2cpx (p3
- p2)) by
Th15;
hence thesis by
Th17,
COMPLEX2: 71;
end;
theorem ::
EUCLID_3:36
for p1, p2, p3 st (
angle (p1,p2,p3))
=
0 holds (
Arg (p1
- p2))
= (
Arg (p3
- p2)) & (
angle (p3,p2,p1))
=
0
proof
let p1, p2, p3;
assume
A1: (
angle (p1,p2,p3))
=
0 ;
((
euc2cpx p1)
- (
euc2cpx p2))
= (
euc2cpx (p1
- p2)) & ((
euc2cpx p3)
- (
euc2cpx p2))
= (
euc2cpx (p3
- p2)) by
Th15;
hence thesis by
A1,
COMPLEX2: 74;
end;
theorem ::
EUCLID_3:37
for p1, p2, p3 st (
angle (p1,p2,p3))
<>
0 holds (
angle (p3,p2,p1))
= ((2
*
PI )
- (
angle (p1,p2,p3)))
proof
let p1, p2, p3;
assume (
angle (p1,p2,p3))
<>
0 ;
then ((
angle (p3,p2,p1))
+ (
angle (p1,p2,p3)))
= (2
*
PI ) by
COMPLEX2: 80;
hence thesis;
end;
theorem ::
EUCLID_3:38
for p1, p2, p3 st (
angle (p3,p2,p1))
<>
0 holds (
angle (p3,p2,p1))
= ((2
*
PI )
- (
angle (p1,p2,p3)))
proof
let p1, p2, p3;
assume (
angle (p3,p2,p1))
<>
0 ;
then ((
angle (p3,p2,p1))
+ (
angle (p1,p2,p3)))
= (2
*
PI ) by
COMPLEX2: 80;
hence thesis;
end;
theorem ::
EUCLID_3:39
Th39: for x,y be
Element of
COMPLEX holds (
Re (x
.|. y))
= (((
Re x)
* (
Re y))
+ ((
Im x)
* (
Im y)))
proof
let x,y be
Element of
COMPLEX ;
(x
.|. y)
= ((((
Re x)
* (
Re y))
+ ((
Im x)
* (
Im y)))
+ (((
- ((
Re x)
* (
Im y)))
+ ((
Im x)
* (
Re y)))
*
<i> )) by
COMPLEX2: 29;
hence thesis by
COMPLEX1: 12;
end;
theorem ::
EUCLID_3:40
Th40: for x,y be
Element of
COMPLEX holds (
Im (x
.|. y))
= ((
- ((
Re x)
* (
Im y)))
+ ((
Im x)
* (
Re y)))
proof
let x,y be
Element of
COMPLEX ;
(x
.|. y)
= ((((
Re x)
* (
Re y))
+ ((
Im x)
* (
Im y)))
+ (((
- ((
Re x)
* (
Im y)))
+ ((
Im x)
* (
Re y)))
*
<i> )) by
COMPLEX2: 29;
hence thesis by
COMPLEX1: 12;
end;
theorem ::
EUCLID_3:41
Th41: for p, q holds
|(p, q)|
= (((p
`1 )
* (q
`1 ))
+ ((p
`2 )
* (q
`2 )))
proof
let p, q;
((p
+ q)
`1 )
= ((p
`1 )
+ (q
`1 )) by
TOPREAL3: 2;
then
A1: (((p
+ q)
`1 )
^2 )
= ((((p
`1 )
^2 )
+ ((2
* (p
`1 ))
* (q
`1 )))
+ ((q
`1 )
^2 )) by
SQUARE_1: 4;
((p
+ q)
`2 )
= ((p
`2 )
+ (q
`2 )) by
TOPREAL3: 2;
then
A2: (((p
+ q)
`2 )
^2 )
= ((((p
`2 )
^2 )
+ ((2
* (p
`2 ))
* (q
`2 )))
+ ((q
`2 )
^2 )) by
SQUARE_1: 4;
((p
- q)
`2 )
= ((p
`2 )
- (q
`2 )) by
TOPREAL3: 3;
then
A3: (((p
- q)
`2 )
^2 )
= ((((p
`2 )
^2 )
- ((2
* (p
`2 ))
* (q
`2 )))
+ ((q
`2 )
^2 )) by
SQUARE_1: 5;
((p
- q)
`1 )
= ((p
`1 )
- (q
`1 )) by
TOPREAL3: 3;
then
A4: (((p
- q)
`1 )
^2 )
= ((((p
`1 )
^2 )
- ((2
* (p
`1 ))
* (q
`1 )))
+ ((q
`1 )
^2 )) by
SQUARE_1: 5;
|(p, q)|
= ((1
/ 4)
* ((
|.(p
+ q).|
^2 )
- (
|.(p
- q).|
^2 ))) by
EUCLID_2: 49
.= ((1
/ 4)
* (((((p
+ q)
`1 )
^2 )
+ (((p
+ q)
`2 )
^2 ))
- (
|.(p
- q).|
^2 ))) by
JGRAPH_3: 1
.= ((1
/ 4)
* (((((p
+ q)
`1 )
^2 )
+ (((p
+ q)
`2 )
^2 ))
- ((((p
- q)
`1 )
^2 )
+ (((p
- q)
`2 )
^2 )))) by
JGRAPH_3: 1
.= ((1
/ 4)
* (((((p
+ q)
`1 )
^2 )
- (((p
- q)
`1 )
^2 ))
+ ((((p
+ q)
`2 )
^2 )
- (((p
- q)
`2 )
^2 ))));
hence thesis by
A1,
A2,
A4,
A3;
end;
theorem ::
EUCLID_3:42
Th42: for p1, p2 holds
|(p1, p2)|
= (
Re ((
euc2cpx p1)
.|. (
euc2cpx p2)))
proof
let p1, p2;
A1: (p1
`1 )
= (
Re (
euc2cpx p1)) & (p1
`2 )
= (
Im (
euc2cpx p1)) by
COMPLEX1: 12;
A2: (p2
`1 )
= (
Re (
euc2cpx p2)) & (p2
`2 )
= (
Im (
euc2cpx p2)) by
COMPLEX1: 12;
thus
|(p1, p2)|
= (((p1
`1 )
* (p2
`1 ))
+ ((p1
`2 )
* (p2
`2 ))) by
Th41
.= (
Re ((
euc2cpx p1)
.|. (
euc2cpx p2))) by
A1,
A2,
Th39;
end;
theorem ::
EUCLID_3:43
for p1, p2, p3 st p1
<> (
0. (
TOP-REAL 2)) & p2
<> (
0. (
TOP-REAL 2)) holds (
|(p1, p2)|
=
0 iff (
angle (p1,(
0. (
TOP-REAL 2)),p2))
= (
PI
/ 2) or (
angle (p1,(
0. (
TOP-REAL 2)),p2))
= ((3
/ 2)
*
PI ))
proof
let p1, p2, p3;
assume p1
<> (
0. (
TOP-REAL 2)) & p2
<> (
0. (
TOP-REAL 2));
then
A1: (
euc2cpx p1)
<>
0c & (
euc2cpx p2)
<>
0c by
Th2,
Th16;
|(p1, p2)|
= (
Re ((
euc2cpx p1)
.|. (
euc2cpx p2))) by
Th42;
hence thesis by
A1,
Th17,
COMPLEX2: 75;
end;
theorem ::
EUCLID_3:44
for p1, p2 st p1
<> (
0. (
TOP-REAL 2)) & p2
<> (
0. (
TOP-REAL 2)) holds (((
- ((p1
`1 )
* (p2
`2 )))
+ ((p1
`2 )
* (p2
`1 )))
= (
|.p1.|
*
|.p2.|) or ((
- ((p1
`1 )
* (p2
`2 )))
+ ((p1
`2 )
* (p2
`1 )))
= (
- (
|.p1.|
*
|.p2.|)) iff (
angle (p1,(
0. (
TOP-REAL 2)),p2))
= (
PI
/ 2) or (
angle (p1,(
0. (
TOP-REAL 2)),p2))
= ((3
/ 2)
*
PI ))
proof
let p1, p2;
A1: (p2
`1 )
= (
Re (
euc2cpx p2)) & (p2
`2 )
= (
Im (
euc2cpx p2)) by
COMPLEX1: 12;
(p1
`1 )
= (
Re (
euc2cpx p1)) & (p1
`2 )
= (
Im (
euc2cpx p1)) by
COMPLEX1: 12;
then
A2: (
Im ((
euc2cpx p1)
.|. (
euc2cpx p2)))
= ((
- ((p1
`1 )
* (p2
`2 )))
+ ((p1
`2 )
* (p2
`1 ))) by
A1,
Th40;
assume p1
<> (
0. (
TOP-REAL 2)) & p2
<> (
0. (
TOP-REAL 2));
then
A3: (
euc2cpx p1)
<>
0c & (
euc2cpx p2)
<>
0c by
Th2,
Th16;
|.(
euc2cpx p1).|
=
|.p1.| &
|.(
euc2cpx p2).|
=
|.p2.| by
Th25;
hence thesis by
A3,
A2,
Th17,
COMPLEX2: 76;
end;
theorem ::
EUCLID_3:45
for p1, p2, p3 st p1
<> p2 & p3
<> p2 holds (
|((p1
- p2), (p3
- p2))|
=
0 iff (
angle (p1,p2,p3))
= (
PI
/ 2) or (
angle (p1,p2,p3))
= ((3
/ 2)
*
PI ))
proof
let p1, p2, p3;
assume that
A1: p1
<> p2 and
A2: p3
<> p2;
(p1
- p2)
<> (
0. (
TOP-REAL 2)) by
A1,
RLVECT_1: 21;
then
A3: (
euc2cpx (p1
- p2))
<>
0c by
Th2,
Th16;
(p3
- p2)
<> (
0. (
TOP-REAL 2)) by
A2,
RLVECT_1: 21;
then
A4: (
euc2cpx (p3
- p2))
<>
0c by
Th2,
Th16;
A5: ((
euc2cpx p1)
- (
euc2cpx p2))
= (
euc2cpx (p1
- p2)) & ((
euc2cpx p3)
- (
euc2cpx p2))
= (
euc2cpx (p3
- p2)) by
Th15;
hereby
assume
|((p1
- p2), (p3
- p2))|
=
0 ;
then (
Re ((
euc2cpx (p1
- p2))
.|. (
euc2cpx (p3
- p2))))
=
0 by
Th42;
then (
angle ((
euc2cpx (p1
- p2)),
0c ,(
euc2cpx (p3
- p2))))
= (
PI
/ 2) or (
angle ((
euc2cpx (p1
- p2)),
0c ,(
euc2cpx (p3
- p2))))
= ((3
/ 2)
*
PI ) by
A3,
A4,
COMPLEX2: 75;
hence (
angle (p1,p2,p3))
= (
PI
/ 2) or (
angle (p1,p2,p3))
= ((3
/ 2)
*
PI ) by
A5,
COMPLEX2: 71;
end;
A6:
|((p1
- p2), (p3
- p2))|
= (
Re ((
euc2cpx (p1
- p2))
.|. (
euc2cpx (p3
- p2)))) by
Th42;
assume (
angle (p1,p2,p3))
= (
PI
/ 2) or (
angle (p1,p2,p3))
= ((3
/ 2)
*
PI );
then (
angle ((
euc2cpx (p1
- p2)),
0c ,(
euc2cpx (p3
- p2))))
= (
PI
/ 2) or (
angle ((
euc2cpx (p1
- p2)),
0c ,(
euc2cpx (p3
- p2))))
= ((3
/ 2)
*
PI ) by
A5,
COMPLEX2: 71;
hence thesis by
A6,
A3,
A4,
COMPLEX2: 75;
end;
::$Notion-Name
theorem ::
EUCLID_3:46
for p1, p2, p3 st p1
<> p2 & p3
<> p2 & ((
angle (p1,p2,p3))
= (
PI
/ 2) or (
angle (p1,p2,p3))
= ((3
/ 2)
*
PI )) holds ((
|.(p1
- p2).|
^2 )
+ (
|.(p3
- p2).|
^2 ))
= (
|.(p1
- p3).|
^2 )
proof
let p1, p2, p3;
assume that
A1: p1
<> p2 & p3
<> p2 and
A2: (
angle (p1,p2,p3))
= (
PI
/ 2) or (
angle (p1,p2,p3))
= ((3
/ 2)
*
PI );
A3: ((
euc2cpx p1)
- (
euc2cpx p2))
= (
euc2cpx (p1
- p2)) & ((
euc2cpx p3)
- (
euc2cpx p2))
= (
euc2cpx (p3
- p2)) by
Th15;
A4: ((
euc2cpx p1)
- (
euc2cpx p3))
= (
euc2cpx (p1
- p3)) &
|.(
euc2cpx (p1
- p2)).|
=
|.(p1
- p2).| by
Th15,
Th25;
A5:
|.(
euc2cpx (p3
- p2)).|
=
|.(p3
- p2).| &
|.(
euc2cpx (p1
- p3)).|
=
|.(p1
- p3).| by
Th25;
(
euc2cpx p1)
<> (
euc2cpx p2) & (
euc2cpx p3)
<> (
euc2cpx p2) by
A1,
Th4;
hence thesis by
A2,
A3,
A4,
A5,
COMPLEX2: 77;
end;
theorem ::
EUCLID_3:47
for p1, p2, p3 st p2
<> p1 & p1
<> p3 & p3
<> p2 & (
angle (p2,p1,p3))
<
PI holds (((
angle (p2,p1,p3))
+ (
angle (p1,p3,p2)))
+ (
angle (p3,p2,p1)))
=
PI
proof
let p1, p2, p3;
assume that
A1: p2
<> p1 & p1
<> p3 and
A2: p3
<> p2 and
A3: (
angle (p2,p1,p3))
<
PI ;
A4: (
euc2cpx p1)
<> (
euc2cpx p2) & (
euc2cpx p1)
<> (
euc2cpx p3) by
A1,
Th4;
A5: (
euc2cpx p3)
<> (
euc2cpx p2) by
A2,
Th4;
per cases by
COMPLEX2: 70;
suppose
A6:
0
= (
angle ((
euc2cpx p2),(
euc2cpx p1),(
euc2cpx p3)));
now
per cases by
A4,
A5,
A6,
COMPLEX2: 87;
suppose (
angle ((
euc2cpx p1),(
euc2cpx p3),(
euc2cpx p2)))
=
0 & (
angle ((
euc2cpx p3),(
euc2cpx p2),(
euc2cpx p1)))
=
PI ;
hence thesis by
A6;
end;
suppose (
angle ((
euc2cpx p1),(
euc2cpx p3),(
euc2cpx p2)))
=
PI & (
angle ((
euc2cpx p3),(
euc2cpx p2),(
euc2cpx p1)))
=
0 ;
hence thesis by
A6;
end;
end;
hence thesis;
end;
suppose
0
< (
angle ((
euc2cpx p2),(
euc2cpx p1),(
euc2cpx p3)));
hence thesis by
A3,
A4,
COMPLEX2: 84;
end;
end;
definition
let n be
Element of
NAT , p1,p2,p3 be
Point of (
TOP-REAL n);
::
EUCLID_3:def5
func
Triangle (p1,p2,p3) ->
Subset of (
TOP-REAL n) equals (((
LSeg (p1,p2))
\/ (
LSeg (p2,p3)))
\/ (
LSeg (p3,p1)));
correctness ;
end
definition
let n be
Element of
NAT , p1,p2,p3 be
Point of (
TOP-REAL n);
::
EUCLID_3:def6
func
closed_inside_of_triangle (p1,p2,p3) ->
Subset of (
TOP-REAL n) equals { p where p be
Point of (
TOP-REAL n) : ex a1,a2,a3 be
Real st
0
<= a1 &
0
<= a2 &
0
<= a3 & ((a1
+ a2)
+ a3)
= 1 & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) };
correctness
proof
defpred
P[
set] means ex a1,a2,a3 be
Real st
0
<= a1 &
0
<= a2 &
0
<= a3 & ((a1
+ a2)
+ a3)
= 1 & $1
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3));
{ p where p be
Element of (
TOP-REAL n) :
P[p] } is
Subset of (
TOP-REAL n) from
DOMAIN_1:sch 7;
hence thesis;
end;
end
definition
let n be
Element of
NAT , p1,p2,p3 be
Point of (
TOP-REAL n);
::
EUCLID_3:def7
func
inside_of_triangle (p1,p2,p3) ->
Subset of (
TOP-REAL n) equals ((
closed_inside_of_triangle (p1,p2,p3))
\ (
Triangle (p1,p2,p3)));
correctness ;
end
definition
let n be
Element of
NAT , p1,p2,p3 be
Point of (
TOP-REAL n);
::
EUCLID_3:def8
func
outside_of_triangle (p1,p2,p3) ->
Subset of (
TOP-REAL n) equals { p where p be
Point of (
TOP-REAL n) : ex a1,a2,a3 be
Real st (
0
> a1 or
0
> a2 or
0
> a3) & ((a1
+ a2)
+ a3)
= 1 & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) };
correctness
proof
defpred
P[
set] means ex a1,a2,a3 be
Real st (
0
> a1 or
0
> a2 or
0
> a3) & ((a1
+ a2)
+ a3)
= 1 & $1
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3));
{ p where p be
Point of (
TOP-REAL n) :
P[p] } is
Subset of (
TOP-REAL n) from
DOMAIN_1:sch 7;
hence thesis;
end;
end
definition
let n be
Element of
NAT , p1,p2,p3 be
Point of (
TOP-REAL n);
::
EUCLID_3:def9
func
plane (p1,p2,p3) ->
Subset of (
TOP-REAL n) equals ((
outside_of_triangle (p1,p2,p3))
\/ (
closed_inside_of_triangle (p1,p2,p3)));
correctness ;
end
theorem ::
EUCLID_3:48
Th48: for n be
Element of
NAT , p1,p2,p3,p be
Point of (
TOP-REAL n) st p
in (
plane (p1,p2,p3)) holds ex a1,a2,a3 be
Real st ((a1
+ a2)
+ a3)
= 1 & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3))
proof
let n be
Element of
NAT , p1,p2,p3,p be
Point of (
TOP-REAL n);
assume
A1: p
in (
plane (p1,p2,p3));
now
per cases by
A1,
XBOOLE_0:def 3;
case p
in (
outside_of_triangle (p1,p2,p3));
then ex p4 be
Point of (
TOP-REAL n) st p4
= p & ex a1,a2,a3 be
Real st (
0
> a1 or
0
> a2 or
0
> a3) & ((a1
+ a2)
+ a3)
= 1 & p4
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3));
hence thesis;
end;
case p
in (
closed_inside_of_triangle (p1,p2,p3));
then ex p4 be
Point of (
TOP-REAL n) st p4
= p & ex a1,a2,a3 be
Real st
0
<= a1 &
0
<= a2 &
0
<= a3 & ((a1
+ a2)
+ a3)
= 1 & p4
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3));
hence thesis;
end;
end;
hence thesis;
end;
theorem ::
EUCLID_3:49
for n be
Element of
NAT , p1,p2,p3 be
Point of (
TOP-REAL n) holds (
Triangle (p1,p2,p3))
c= (
closed_inside_of_triangle (p1,p2,p3))
proof
let n be
Element of
NAT , p1,p2,p3 be
Point of (
TOP-REAL n);
(((
LSeg (p1,p2))
\/ (
LSeg (p2,p3)))
\/ (
LSeg (p3,p1)))
c= (
closed_inside_of_triangle (p1,p2,p3))
proof
let x be
object;
assume
A1: x
in (((
LSeg (p1,p2))
\/ (
LSeg (p2,p3)))
\/ (
LSeg (p3,p1)));
then
reconsider p0 = x as
Point of (
TOP-REAL n);
A2: x
in ((
LSeg (p1,p2))
\/ (
LSeg (p2,p3))) or x
in (
LSeg (p3,p1)) by
A1,
XBOOLE_0:def 3;
now
per cases by
A2,
XBOOLE_0:def 3;
case x
in (
LSeg (p1,p2));
then
consider lambda be
Real such that
A3: x
= (((1
- lambda)
* p1)
+ (lambda
* p2)) and
A4:
0
<= lambda and
A5: lambda
<= 1;
A6: p0
= ((((1
- lambda)
* p1)
+ (lambda
* p2))
+ (
0. (
TOP-REAL n))) by
A3,
RLVECT_1: 4
.= ((((1
- lambda)
* p1)
+ (lambda
* p2))
+ (
0
* p3)) by
RLVECT_1: 10;
A7: (((1
- lambda)
+ lambda)
+
0 )
= 1;
(1
- lambda)
>=
0 by
A5,
XREAL_1: 48;
hence ex a1,a2,a3 be
Real st
0
<= a1 &
0
<= a2 &
0
<= a3 & ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A4,
A7,
A6;
end;
case x
in (
LSeg (p2,p3));
then
consider lambda be
Real such that
A8: x
= (((1
- lambda)
* p2)
+ (lambda
* p3)) and
A9:
0
<= lambda and
A10: lambda
<= 1;
A11: p0
= (((
0. (
TOP-REAL n))
+ ((1
- lambda)
* p2))
+ (lambda
* p3)) by
A8,
RLVECT_1: 4
.= (((
0
* p1)
+ ((1
- lambda)
* p2))
+ (lambda
* p3)) by
RLVECT_1: 10;
A12: ((
0
+ (1
- lambda))
+ lambda)
= 1;
(1
- lambda)
>=
0 by
A10,
XREAL_1: 48;
hence ex a1,a2,a3 be
Real st
0
<= a1 &
0
<= a2 &
0
<= a3 & ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A9,
A12,
A11;
end;
case x
in (
LSeg (p3,p1));
then
consider lambda be
Real such that
A13: x
= (((1
- lambda)
* p3)
+ (lambda
* p1)) and
A14:
0
<= lambda and
A15: lambda
<= 1;
A16: p0
= (((lambda
* p1)
+ (
0. (
TOP-REAL n)))
+ ((1
- lambda)
* p3)) by
A13,
RLVECT_1: 4
.= (((lambda
* p1)
+ (
0
* p2))
+ ((1
- lambda)
* p3)) by
RLVECT_1: 10;
A17: ((lambda
+
0 )
+ (1
- lambda))
= 1;
(1
- lambda)
>=
0 by
A15,
XREAL_1: 48;
hence ex a1,a2,a3 be
Real st
0
<= a1 &
0
<= a2 &
0
<= a3 & ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A14,
A17,
A16;
end;
end;
hence thesis;
end;
hence thesis;
end;
definition
let n be
Element of
NAT , q1,q2 be
Point of (
TOP-REAL n);
::
EUCLID_3:def10
pred q1,q2
are_lindependent2 means for a1,a2 be
Real st ((a1
* q1)
+ (a2
* q2))
= (
0. (
TOP-REAL n)) holds a1
=
0 & a2
=
0 ;
end
notation
let n be
Element of
NAT , q1,q2 be
Point of (
TOP-REAL n);
antonym q1,q2
are_ldependent2 for q1,q2
are_lindependent2 ;
end
theorem ::
EUCLID_3:50
Th50: for n be
Element of
NAT , q1,q2 be
Point of (
TOP-REAL n) st (q1,q2)
are_lindependent2 holds q1
<> q2 & q1
<> (
0. (
TOP-REAL n)) & q2
<> (
0. (
TOP-REAL n))
proof
let n be
Element of
NAT , q1,q2 be
Point of (
TOP-REAL n);
assume
A1: (q1,q2)
are_lindependent2 ;
assume
A2: q1
= q2 or q1
= (
0. (
TOP-REAL n)) or q2
= (
0. (
TOP-REAL n));
now
per cases by
A2;
case
A3: q1
= q2;
((1
* q1)
+ ((
- 1)
* q2))
= ((1
* q1)
+ (
- q2)) by
RLVECT_1: 16
.= (q1
+ (
- q2)) by
RLVECT_1:def 8
.= (
0. (
TOP-REAL n)) by
A3,
RLVECT_1: 5;
hence contradiction by
A1;
end;
case q1
= (
0. (
TOP-REAL n));
then ((1
* q1)
+ (
0
* q2))
= ((
0. (
TOP-REAL n))
+ (
0
* q2)) by
RLVECT_1: 10
.= ((
0. (
TOP-REAL n))
+ (
0. (
TOP-REAL n))) by
RLVECT_1: 10
.= (
0. (
TOP-REAL n)) by
RLVECT_1: 4;
hence contradiction by
A1;
end;
case q2
= (
0. (
TOP-REAL n));
then ((
0
* q1)
+ (1
* q2))
= ((
0
* q1)
+ (
0. (
TOP-REAL n))) by
RLVECT_1: 10
.= ((
0. (
TOP-REAL n))
+ (
0. (
TOP-REAL n))) by
RLVECT_1: 10
.= (
0. (
TOP-REAL n)) by
RLVECT_1: 4;
hence contradiction by
A1;
end;
end;
hence contradiction;
end;
theorem ::
EUCLID_3:51
Th51: for n be
Element of
NAT , p1,p2,p3,p0 be
Point of (
TOP-REAL n) st ((p2
- p1),(p3
- p1))
are_lindependent2 & p0
in (
plane (p1,p2,p3)) holds ex a1,a2,a3 be
Real st p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) & ((a1
+ a2)
+ a3)
= 1 & for b1,b2,b3 be
Real st p0
= (((b1
* p1)
+ (b2
* p2))
+ (b3
* p3)) & ((b1
+ b2)
+ b3)
= 1 holds b1
= a1 & b2
= a2 & b3
= a3
proof
let n be
Element of
NAT , p1,p2,p3,p0 be
Point of (
TOP-REAL n);
assume that
A1: ((p2
- p1),(p3
- p1))
are_lindependent2 and
A2: p0
in (
plane (p1,p2,p3));
set q2 = (p2
- p1), q3 = (p3
- p1);
consider a01,a02,a03 be
Real such that
A3: ((a01
+ a02)
+ a03)
= 1 and
A4: p0
= (((a01
* p1)
+ (a02
* p2))
+ (a03
* p3)) by
A2,
Th48;
for b1,b2,b3 be
Real st p0
= (((b1
* p1)
+ (b2
* p2))
+ (b3
* p3)) & ((b1
+ b2)
+ b3)
= 1 holds b1
= a01 & b2
= a02 & b3
= a03
proof
A5: (p0
+ (
- p1))
= ((((a01
* p1)
+ (a02
* p2))
+ (a03
* p3))
+ (
- (((a01
+ a02)
+ a03)
* p1))) by
A3,
A4,
RLVECT_1:def 8
.= ((((a01
* p1)
+ (a02
* p2))
+ (a03
* p3))
+ (
- (((a01
+ a02)
* p1)
+ (a03
* p1)))) by
RLVECT_1:def 6
.= ((((a01
* p1)
+ (a02
* p2))
+ (a03
* p3))
+ (
- (((a01
* p1)
+ (a02
* p1))
+ (a03
* p1)))) by
RLVECT_1:def 6
.= ((((a01
* p1)
+ (a02
* p2))
+ (a03
* p3))
+ ((
- ((a01
* p1)
+ (a02
* p1)))
- (a03
* p1))) by
RLVECT_1: 30
.= ((((a01
* p1)
+ (a02
* p2))
+ (a03
* p3))
+ (((
- (a01
* p1))
- (a02
* p1))
- (a03
* p1))) by
RLVECT_1: 30
.= (((a01
* p1)
+ ((a02
* p2)
+ (a03
* p3)))
+ (((
- (a01
* p1))
+ (
- (a02
* p1)))
+ (
- (a03
* p1)))) by
RLVECT_1:def 3
.= (((a01
* p1)
+ ((a02
* p2)
+ (a03
* p3)))
+ ((
- (a01
* p1))
+ ((
- (a02
* p1))
+ (
- (a03
* p1))))) by
RLVECT_1:def 3
.= (((((a02
* p2)
+ (a03
* p3))
+ (a01
* p1))
- (a01
* p1))
+ ((
- (a02
* p1))
+ (
- (a03
* p1)))) by
RLVECT_1:def 3
.= (((a02
* p2)
+ (a03
* p3))
+ ((
- (a02
* p1))
+ (
- (a03
* p1)))) by
RLVECT_4: 1
.= ((((a02
* p2)
+ (a03
* p3))
+ (
- (a02
* p1)))
+ (
- (a03
* p1))) by
RLVECT_1:def 3
.= ((((a02
* p2)
+ (
- (a02
* p1)))
+ (a03
* p3))
+ (
- (a03
* p1))) by
RLVECT_1:def 3
.= ((((a02
* p2)
+ (a02
* (
- p1)))
+ (a03
* p3))
+ (
- (a03
* p1))) by
RLVECT_1: 25
.= (((a02
* (p2
+ (
- p1)))
+ (a03
* p3))
+ (
- (a03
* p1))) by
RLVECT_1:def 5
.= ((a02
* (p2
+ (
- p1)))
+ ((a03
* p3)
+ (
- (a03
* p1)))) by
RLVECT_1:def 3
.= ((a02
* (p2
+ (
- p1)))
+ ((a03
* p3)
+ (a03
* (
- p1)))) by
RLVECT_1: 25
.= ((a02
* q2)
+ (a03
* q3)) by
RLVECT_1:def 5;
let b1,b2,b3 be
Real;
assume that
A6: p0
= (((b1
* p1)
+ (b2
* p2))
+ (b3
* p3)) and
A7: ((b1
+ b2)
+ b3)
= 1;
(p0
+ (
- p1))
= ((((b1
* p1)
+ (b2
* p2))
+ (b3
* p3))
+ (
- (((b1
+ b2)
+ b3)
* p1))) by
A6,
A7,
RLVECT_1:def 8
.= ((((b1
* p1)
+ (b2
* p2))
+ (b3
* p3))
+ (
- (((b1
+ b2)
* p1)
+ (b3
* p1)))) by
RLVECT_1:def 6
.= ((((b1
* p1)
+ (b2
* p2))
+ (b3
* p3))
+ (
- (((b1
* p1)
+ (b2
* p1))
+ (b3
* p1)))) by
RLVECT_1:def 6
.= ((((b1
* p1)
+ (b2
* p2))
+ (b3
* p3))
+ ((
- ((b1
* p1)
+ (b2
* p1)))
- (b3
* p1))) by
RLVECT_1: 30
.= ((((b1
* p1)
+ (b2
* p2))
+ (b3
* p3))
+ (((
- (b1
* p1))
- (b2
* p1))
- (b3
* p1))) by
RLVECT_1: 30
.= (((b1
* p1)
+ ((b2
* p2)
+ (b3
* p3)))
+ (((
- (b1
* p1))
+ (
- (b2
* p1)))
+ (
- (b3
* p1)))) by
RLVECT_1:def 3
.= (((b1
* p1)
+ ((b2
* p2)
+ (b3
* p3)))
+ ((
- (b1
* p1))
+ ((
- (b2
* p1))
+ (
- (b3
* p1))))) by
RLVECT_1:def 3
.= (((((b2
* p2)
+ (b3
* p3))
+ (b1
* p1))
- (b1
* p1))
+ ((
- (b2
* p1))
+ (
- (b3
* p1)))) by
RLVECT_1:def 3
.= (((b2
* p2)
+ (b3
* p3))
+ ((
- (b2
* p1))
+ (
- (b3
* p1)))) by
RLVECT_4: 1
.= ((((b2
* p2)
+ (b3
* p3))
+ (
- (b2
* p1)))
+ (
- (b3
* p1))) by
RLVECT_1:def 3
.= ((((b2
* p2)
+ (
- (b2
* p1)))
+ (b3
* p3))
+ (
- (b3
* p1))) by
RLVECT_1:def 3
.= ((((b2
* p2)
+ (b2
* (
- p1)))
+ (b3
* p3))
+ (
- (b3
* p1))) by
RLVECT_1: 25
.= (((b2
* (p2
+ (
- p1)))
+ (b3
* p3))
+ (
- (b3
* p1))) by
RLVECT_1:def 5
.= ((b2
* (p2
+ (
- p1)))
+ ((b3
* p3)
+ (
- (b3
* p1)))) by
RLVECT_1:def 3
.= ((b2
* (p2
+ (
- p1)))
+ ((b3
* p3)
+ (b3
* (
- p1)))) by
RLVECT_1: 25
.= ((b2
* q2)
+ (b3
* q3)) by
RLVECT_1:def 5;
then (((b2
* q2)
+ (b3
* q3))
+ (
- ((a02
* q2)
+ (a03
* q3))))
= (
0. (
TOP-REAL n)) by
A5,
RLVECT_1: 5;
then (((b2
* q2)
+ (b3
* q3))
+ ((
- (a02
* q2))
- (a03
* q3)))
= (
0. (
TOP-REAL n)) by
RLVECT_1: 30;
then ((((b2
* q2)
+ (b3
* q3))
+ (
- (a02
* q2)))
+ (
- (a03
* q3)))
= (
0. (
TOP-REAL n)) by
RLVECT_1:def 3;
then ((((b2
* q2)
+ (
- (a02
* q2)))
+ (b3
* q3))
+ (
- (a03
* q3)))
= (
0. (
TOP-REAL n)) by
RLVECT_1:def 3;
then ((((b2
* q2)
+ ((
- a02)
* q2))
+ (b3
* q3))
+ (
- (a03
* q3)))
= (
0. (
TOP-REAL n)) by
RLVECT_1: 79;
then ((((b2
+ (
- a02))
* q2)
+ (b3
* q3))
+ (
- (a03
* q3)))
= (
0. (
TOP-REAL n)) by
RLVECT_1:def 6;
then (((b2
+ (
- a02))
* q2)
+ ((b3
* q3)
+ (
- (a03
* q3))))
= (
0. (
TOP-REAL n)) by
RLVECT_1:def 3;
then (((b2
+ (
- a02))
* q2)
+ ((b3
* q3)
+ ((
- a03)
* q3)))
= (
0. (
TOP-REAL n)) by
RLVECT_1: 79;
then (((b2
+ (
- a02))
* q2)
+ ((b3
+ (
- a03))
* q3))
= (
0. (
TOP-REAL n)) by
RLVECT_1:def 6;
then ((b2
- a02)
+ a02)
= (
0
+ a02) & (b3
+ (
- a03))
=
0 by
A1;
hence thesis by
A3,
A7;
end;
hence thesis by
A3,
A4;
end;
theorem ::
EUCLID_3:52
Th52: for n be
Element of
NAT , p1,p2,p3,p0 be
Point of (
TOP-REAL n) st (ex a1,a2,a3 be
Real st p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) & ((a1
+ a2)
+ a3)
= 1) holds p0
in (
plane (p1,p2,p3))
proof
let n be
Element of
NAT , p1,p2,p3,p0 be
Point of (
TOP-REAL n);
given a1,a2,a3 be
Real such that
A1: p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) & ((a1
+ a2)
+ a3)
= 1;
now
per cases ;
case
0
> a1 or
0
> a2 or
0
> a3;
then p0
in (
outside_of_triangle (p1,p2,p3)) by
A1;
hence thesis by
XBOOLE_0:def 3;
end;
case
0
<= a1 &
0
<= a2 &
0
<= a3;
then p0
in (
closed_inside_of_triangle (p1,p2,p3)) by
A1;
hence thesis by
XBOOLE_0:def 3;
end;
end;
hence thesis;
end;
theorem ::
EUCLID_3:53
for n be
Element of
NAT , p1,p2,p3 be
Point of (
TOP-REAL n) holds (
plane (p1,p2,p3))
= { p where p be
Point of (
TOP-REAL n) : ex a1,a2,a3 be
Real st ((a1
+ a2)
+ a3)
= 1 & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) }
proof
let n be
Element of
NAT , p1,p2,p3 be
Point of (
TOP-REAL n);
thus (
plane (p1,p2,p3))
c= { p where p be
Point of (
TOP-REAL n) : ex a1,a2,a3 be
Real st ((a1
+ a2)
+ a3)
= 1 & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) }
proof
let x be
object;
assume
A1: x
in (
plane (p1,p2,p3));
then
reconsider p0 = x as
Point of (
TOP-REAL n);
ex a1,a2,a3 be
Real st ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A1,
Th48;
hence thesis;
end;
let x be
object;
assume x
in { p where p be
Point of (
TOP-REAL n) : ex a1,a2,a3 be
Real st ((a1
+ a2)
+ a3)
= 1 & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) };
then ex p be
Point of (
TOP-REAL n) st p
= x & ex a1,a2,a3 be
Real st ((a1
+ a2)
+ a3)
= 1 & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3));
hence thesis by
Th52;
end;
theorem ::
EUCLID_3:54
Th54: for p1, p2, p3 st ((p2
- p1),(p3
- p1))
are_lindependent2 holds (
plane (p1,p2,p3))
= (
REAL 2)
proof
let p1, p2, p3;
assume
A1: ((p2
- p1),(p3
- p1))
are_lindependent2 ;
the
carrier of (
TOP-REAL 2)
= (
REAL 2) by
EUCLID: 22;
hence (
plane (p1,p2,p3))
c= (
REAL 2);
let x be
object;
assume x
in (
REAL 2);
then
reconsider p0 = x as
Point of (
TOP-REAL 2) by
EUCLID: 22;
set q2 = (p2
- p1), q3 = (p3
- p1), p = (p0
- p1);
A2: q3
<> (
0. (
TOP-REAL 2)) by
A1,
Th50;
now
per cases by
A2,
EUCLID: 53,
EUCLID: 54;
case
A3: (q3
`1 )
<>
0 ;
A4:
now
assume (((q2
`2 )
* (q3
`1 ))
- ((q2
`1 )
* (q3
`2 )))
=
0 ;
then (q2
`2 )
= (((q2
`1 )
* (q3
`2 ))
/ (q3
`1 )) by
A3,
XCMPLX_1: 89;
then q2
=
|[(q2
`1 ), (((q2
`1 )
* (q3
`2 ))
/ (q3
`1 ))]| by
EUCLID: 53
.=
|[((q2
`1 )
* 1), (((q2
`1 )
* (q3
`2 ))
* ((q3
`1 )
" ))]| by
XCMPLX_0:def 9
.=
|[((q2
`1 )
* 1), ((q2
`1 )
* ((q3
`2 )
* ((q3
`1 )
" )))]|
.= ((q2
`1 )
*
|[1, ((q3
`2 )
* ((q3
`1 )
" ))]|) by
EUCLID: 58
.= ((q2
`1 )
*
|[(((q3
`1 )
" )
* (q3
`1 )), (((q3
`1 )
" )
* (q3
`2 ))]|) by
A3,
XCMPLX_0:def 7
.= ((q2
`1 )
* (((q3
`1 )
" )
*
|[(q3
`1 ), (q3
`2 )]|)) by
EUCLID: 58
.= ((q2
`1 )
* (((q3
`1 )
" )
* q3)) by
EUCLID: 53
.= (((q2
`1 )
* ((q3
`1 )
" ))
* q3) by
RLVECT_1:def 7;
then (q2
+ (
- (((q2
`1 )
* ((q3
`1 )
" ))
* q3)))
= (
0. (
TOP-REAL 2)) by
RLVECT_1: 5;
then ((1
* q2)
+ (
- (((q2
`1 )
* ((q3
`1 )
" ))
* q3)))
= (
0. (
TOP-REAL 2)) by
RLVECT_1:def 8;
then ((1
* q2)
+ ((
- ((q2
`1 )
* ((q3
`1 )
" )))
* q3))
= (
0. (
TOP-REAL 2)) by
RLVECT_1: 79;
hence contradiction by
A1;
end;
set a = ((((p
`2 )
* (q3
`1 ))
- ((q3
`2 )
* (p
`1 )))
/ (((q2
`2 )
* (q3
`1 ))
- ((q2
`1 )
* (q3
`2 ))));
set b = (((p
`1 )
- (a
* (q2
`1 )))
/ (q3
`1 ));
A5: ((a
* (q2
`1 ))
+ (b
* (q3
`1 )))
= ((a
* (q2
`1 ))
+ ((p
`1 )
- (a
* (q2
`1 )))) by
A3,
XCMPLX_1: 87
.= (p
`1 );
A6: ((a
* (q2
`2 ))
+ (b
* (q3
`2 )))
= ((a
* (q2
`2 ))
+ ((((p
`1 )
/ (q3
`1 ))
- ((a
* (q2
`1 ))
/ (q3
`1 )))
* (q3
`2 ))) by
XCMPLX_1: 120
.= (((a
* (q2
`2 ))
- (((a
* (q2
`1 ))
/ (q3
`1 ))
* (q3
`2 )))
+ (((p
`1 )
/ (q3
`1 ))
* (q3
`2 )))
.= (((a
* (q2
`2 ))
- (((a
* (q2
`1 ))
* ((q3
`1 )
" ))
* (q3
`2 )))
+ (((p
`1 )
/ (q3
`1 ))
* (q3
`2 ))) by
XCMPLX_0:def 9
.= ((a
* ((q2
`2 )
- (((q2
`1 )
* ((q3
`1 )
" ))
* (q3
`2 ))))
+ (((p
`1 )
/ (q3
`1 ))
* (q3
`2 )))
.= ((a
* ((q2
`2 )
- (((q2
`1 )
/ (q3
`1 ))
* (q3
`2 ))))
+ (((p
`1 )
/ (q3
`1 ))
* (q3
`2 ))) by
XCMPLX_0:def 9
.= ((a
* ((((q2
`2 )
/ (q3
`1 ))
* (q3
`1 ))
- (((q2
`1 )
/ (q3
`1 ))
* (q3
`2 ))))
+ (((p
`1 )
/ (q3
`1 ))
* (q3
`2 ))) by
A3,
XCMPLX_1: 87
.= ((a
* ((((q3
`1 )
/ (q3
`1 ))
* (q2
`2 ))
- (((q2
`1 )
/ (q3
`1 ))
* (q3
`2 ))))
+ (((p
`1 )
/ (q3
`1 ))
* (q3
`2 ))) by
XCMPLX_1: 75
.= ((a
* ((((q3
`1 )
* ((q3
`1 )
" ))
* (q2
`2 ))
- (((q2
`1 )
/ (q3
`1 ))
* (q3
`2 ))))
+ (((p
`1 )
/ (q3
`1 ))
* (q3
`2 ))) by
XCMPLX_0:def 9
.= ((a
* (((q2
`2 )
* ((q3
`1 )
* ((q3
`1 )
" )))
- ((((q3
`1 )
" )
* (q2
`1 ))
* (q3
`2 ))))
+ (((p
`1 )
/ (q3
`1 ))
* (q3
`2 ))) by
XCMPLX_0:def 9
.= (((a
* (((q2
`2 )
* (q3
`1 ))
- ((q2
`1 )
* (q3
`2 ))))
* ((q3
`1 )
" ))
+ (((p
`1 )
/ (q3
`1 ))
* (q3
`2 )))
.= (((((p
`2 )
* (q3
`1 ))
- ((q3
`2 )
* (p
`1 )))
* ((q3
`1 )
" ))
+ (((p
`1 )
/ (q3
`1 ))
* (q3
`2 ))) by
A4,
XCMPLX_1: 87
.= (((((p
`2 )
* (q3
`1 ))
- ((q3
`2 )
* (p
`1 )))
* ((q3
`1 )
" ))
+ ((((q3
`1 )
" )
* (p
`1 ))
* (q3
`2 ))) by
XCMPLX_0:def 9
.= (((((p
`2 )
* (q3
`1 ))
- ((q3
`2 )
* (p
`1 )))
+ ((q3
`2 )
* (p
`1 )))
* ((q3
`1 )
" ))
.= (((p
`2 )
* (q3
`1 ))
/ (q3
`1 )) by
XCMPLX_0:def 9
.= (p
`2 ) by
A3,
XCMPLX_1: 89;
A7: ((a
* q2)
+ (b
* q3))
= (((a
* p2)
- (a
* p1))
+ (b
* (p3
- p1))) by
RLVECT_1: 34
.= (((a
* p2)
+ (
- (a
* p1)))
+ ((b
* p3)
- (b
* p1))) by
RLVECT_1: 34
.= (((a
* p2)
+ (
- (a
* p1)))
+ ((b
* p3)
+ ((
- b)
* p1))) by
RLVECT_1: 79
.= (((a
* p2)
+ ((
- a)
* p1))
+ (((
- b)
* p1)
+ (b
* p3))) by
RLVECT_1: 79
.= ((((a
* p2)
+ ((
- a)
* p1))
+ ((
- b)
* p1))
+ (b
* p3)) by
RLVECT_1:def 3
.= (((a
* p2)
+ (((
- a)
* p1)
+ ((
- b)
* p1)))
+ (b
* p3)) by
RLVECT_1:def 3
.= (((((
- a)
+ (
- b))
* p1)
+ (a
* p2))
+ (b
* p3)) by
RLVECT_1:def 6;
((a
* q2)
+ (b
* q3))
= ((a
*
|[(q2
`1 ), (q2
`2 )]|)
+ (b
* q3)) by
EUCLID: 53
.= ((a
*
|[(q2
`1 ), (q2
`2 )]|)
+ (b
*
|[(q3
`1 ), (q3
`2 )]|)) by
EUCLID: 53
.= (
|[(a
* (q2
`1 )), (a
* (q2
`2 ))]|
+ (b
*
|[(q3
`1 ), (q3
`2 )]|)) by
EUCLID: 58
.= (
|[(a
* (q2
`1 )), (a
* (q2
`2 ))]|
+
|[(b
* (q3
`1 )), (b
* (q3
`2 ))]|) by
EUCLID: 58
.=
|[((a
* (q2
`1 ))
+ (b
* (q3
`1 ))), ((a
* (q2
`2 ))
+ (b
* (q3
`2 )))]| by
EUCLID: 56
.= p by
A5,
A6,
EUCLID: 53;
then
A8: p0
= (p1
+ (((((
- a)
+ (
- b))
* p1)
+ (a
* p2))
+ (b
* p3))) by
A7,
RLVECT_4: 1
.= ((p1
+ ((((
- a)
+ (
- b))
* p1)
+ (a
* p2)))
+ (b
* p3)) by
RLVECT_1:def 3
.= (((p1
+ (((
- a)
+ (
- b))
* p1))
+ (a
* p2))
+ (b
* p3)) by
RLVECT_1:def 3
.= ((((1
* p1)
+ (((
- a)
+ (
- b))
* p1))
+ (a
* p2))
+ (b
* p3)) by
RLVECT_1:def 8
.= ((((1
+ ((
- a)
+ (
- b)))
* p1)
+ (a
* p2))
+ (b
* p3)) by
RLVECT_1:def 6;
(((1
+ ((
- a)
+ (
- b)))
+ a)
+ b)
= 1;
hence thesis by
A8,
Th52;
end;
case
A9: (q3
`2 )
<>
0 ;
now
assume (((q2
`2 )
* (q3
`1 ))
- ((q2
`1 )
* (q3
`2 )))
=
0 ;
then (q2
`1 )
= (((q2
`2 )
* (q3
`1 ))
/ (q3
`2 )) by
A9,
XCMPLX_1: 89;
then q2
=
|[(((q2
`2 )
* (q3
`1 ))
/ (q3
`2 )), (q2
`2 )]| by
EUCLID: 53
.=
|[(((q2
`2 )
* (q3
`1 ))
* ((q3
`2 )
" )), ((q2
`2 )
* 1)]| by
XCMPLX_0:def 9
.=
|[((q2
`2 )
* ((q3
`1 )
* ((q3
`2 )
" ))), ((q2
`2 )
* 1)]|
.= ((q2
`2 )
*
|[((q3
`1 )
* ((q3
`2 )
" )), 1]|) by
EUCLID: 58
.= ((q2
`2 )
*
|[(((q3
`2 )
" )
* (q3
`1 )), (((q3
`2 )
" )
* (q3
`2 ))]|) by
A9,
XCMPLX_0:def 7
.= ((q2
`2 )
* (((q3
`2 )
" )
*
|[(q3
`1 ), (q3
`2 )]|)) by
EUCLID: 58
.= ((q2
`2 )
* (((q3
`2 )
" )
* q3)) by
EUCLID: 53
.= (((q2
`2 )
* ((q3
`2 )
" ))
* q3) by
RLVECT_1:def 7;
then (q2
+ (
- (((q2
`2 )
* ((q3
`2 )
" ))
* q3)))
= (
0. (
TOP-REAL 2)) by
RLVECT_1: 5;
then ((1
* q2)
+ (
- (((q2
`2 )
* ((q3
`2 )
" ))
* q3)))
= (
0. (
TOP-REAL 2)) by
RLVECT_1:def 8;
then ((1
* q2)
+ ((
- ((q2
`2 )
* ((q3
`2 )
" )))
* q3))
= (
0. (
TOP-REAL 2)) by
RLVECT_1: 79;
hence contradiction by
A1;
end;
then
A10: (
- (((q2
`2 )
* (q3
`1 ))
+ (
- ((q2
`1 )
* (q3
`2 )))))
<> (
-
0 );
set a = ((((p
`1 )
* (q3
`2 ))
- ((q3
`1 )
* (p
`2 )))
/ (((q2
`1 )
* (q3
`2 ))
- ((q2
`2 )
* (q3
`1 ))));
set b = (((p
`2 )
- (a
* (q2
`2 )))
/ (q3
`2 ));
A11: ((a
* (q2
`2 ))
+ (b
* (q3
`2 )))
= ((a
* (q2
`2 ))
+ ((p
`2 )
- (a
* (q2
`2 )))) by
A9,
XCMPLX_1: 87
.= (p
`2 );
A12: ((a
* (q2
`1 ))
+ (b
* (q3
`1 )))
= ((a
* (q2
`1 ))
+ ((((p
`2 )
/ (q3
`2 ))
- ((a
* (q2
`2 ))
/ (q3
`2 )))
* (q3
`1 ))) by
XCMPLX_1: 120
.= (((a
* (q2
`1 ))
- (((a
* (q2
`2 ))
/ (q3
`2 ))
* (q3
`1 )))
+ (((p
`2 )
/ (q3
`2 ))
* (q3
`1 )))
.= (((a
* (q2
`1 ))
- (((a
* (q2
`2 ))
* ((q3
`2 )
" ))
* (q3
`1 )))
+ (((p
`2 )
/ (q3
`2 ))
* (q3
`1 ))) by
XCMPLX_0:def 9
.= ((a
* ((q2
`1 )
- (((q2
`2 )
* ((q3
`2 )
" ))
* (q3
`1 ))))
+ (((p
`2 )
/ (q3
`2 ))
* (q3
`1 )))
.= ((a
* ((q2
`1 )
- (((q2
`2 )
/ (q3
`2 ))
* (q3
`1 ))))
+ (((p
`2 )
/ (q3
`2 ))
* (q3
`1 ))) by
XCMPLX_0:def 9
.= ((a
* ((((q2
`1 )
/ (q3
`2 ))
* (q3
`2 ))
- (((q2
`2 )
/ (q3
`2 ))
* (q3
`1 ))))
+ (((p
`2 )
/ (q3
`2 ))
* (q3
`1 ))) by
A9,
XCMPLX_1: 87
.= ((a
* ((((q3
`2 )
/ (q3
`2 ))
* (q2
`1 ))
- (((q2
`2 )
/ (q3
`2 ))
* (q3
`1 ))))
+ (((p
`2 )
/ (q3
`2 ))
* (q3
`1 ))) by
XCMPLX_1: 75
.= ((a
* ((((q3
`2 )
* ((q3
`2 )
" ))
* (q2
`1 ))
- (((q2
`2 )
/ (q3
`2 ))
* (q3
`1 ))))
+ (((p
`2 )
/ (q3
`2 ))
* (q3
`1 ))) by
XCMPLX_0:def 9
.= ((a
* (((q2
`1 )
* ((q3
`2 )
* ((q3
`2 )
" )))
- ((((q3
`2 )
" )
* (q2
`2 ))
* (q3
`1 ))))
+ (((p
`2 )
/ (q3
`2 ))
* (q3
`1 ))) by
XCMPLX_0:def 9
.= (((a
* (((q2
`1 )
* (q3
`2 ))
- ((q2
`2 )
* (q3
`1 ))))
* ((q3
`2 )
" ))
+ (((p
`2 )
/ (q3
`2 ))
* (q3
`1 )))
.= (((((p
`1 )
* (q3
`2 ))
- ((q3
`1 )
* (p
`2 )))
* ((q3
`2 )
" ))
+ (((p
`2 )
/ (q3
`2 ))
* (q3
`1 ))) by
A10,
XCMPLX_1: 87
.= (((((p
`1 )
* (q3
`2 ))
- ((q3
`1 )
* (p
`2 )))
* ((q3
`2 )
" ))
+ ((((q3
`2 )
" )
* (p
`2 ))
* (q3
`1 ))) by
XCMPLX_0:def 9
.= (((((p
`1 )
* (q3
`2 ))
- ((q3
`1 )
* (p
`2 )))
+ ((q3
`1 )
* (p
`2 )))
* ((q3
`2 )
" ))
.= (((p
`1 )
* (q3
`2 ))
/ (q3
`2 )) by
XCMPLX_0:def 9
.= (p
`1 ) by
A9,
XCMPLX_1: 89;
A13: ((a
* q2)
+ (b
* q3))
= (((a
* p2)
- (a
* p1))
+ (b
* (p3
- p1))) by
RLVECT_1: 34
.= (((a
* p2)
+ (
- (a
* p1)))
+ ((b
* p3)
- (b
* p1))) by
RLVECT_1: 34
.= (((a
* p2)
+ (
- (a
* p1)))
+ ((b
* p3)
+ ((
- b)
* p1))) by
RLVECT_1: 79
.= (((a
* p2)
+ ((
- a)
* p1))
+ (((
- b)
* p1)
+ (b
* p3))) by
RLVECT_1: 79
.= ((((a
* p2)
+ ((
- a)
* p1))
+ ((
- b)
* p1))
+ (b
* p3)) by
RLVECT_1:def 3
.= (((a
* p2)
+ (((
- a)
* p1)
+ ((
- b)
* p1)))
+ (b
* p3)) by
RLVECT_1:def 3
.= (((((
- a)
+ (
- b))
* p1)
+ (a
* p2))
+ (b
* p3)) by
RLVECT_1:def 6;
((a
* q2)
+ (b
* q3))
= ((a
*
|[(q2
`1 ), (q2
`2 )]|)
+ (b
* q3)) by
EUCLID: 53
.= ((a
*
|[(q2
`1 ), (q2
`2 )]|)
+ (b
*
|[(q3
`1 ), (q3
`2 )]|)) by
EUCLID: 53
.= (
|[(a
* (q2
`1 )), (a
* (q2
`2 ))]|
+ (b
*
|[(q3
`1 ), (q3
`2 )]|)) by
EUCLID: 58
.= (
|[(a
* (q2
`1 )), (a
* (q2
`2 ))]|
+
|[(b
* (q3
`1 )), (b
* (q3
`2 ))]|) by
EUCLID: 58
.=
|[((a
* (q2
`1 ))
+ (b
* (q3
`1 ))), ((a
* (q2
`2 ))
+ (b
* (q3
`2 )))]| by
EUCLID: 56
.= p by
A11,
A12,
EUCLID: 53;
then
A14: p0
= (p1
+ (((((
- a)
+ (
- b))
* p1)
+ (a
* p2))
+ (b
* p3))) by
A13,
RLVECT_4: 1
.= ((p1
+ ((((
- a)
+ (
- b))
* p1)
+ (a
* p2)))
+ (b
* p3)) by
RLVECT_1:def 3
.= (((p1
+ (((
- a)
+ (
- b))
* p1))
+ (a
* p2))
+ (b
* p3)) by
RLVECT_1:def 3
.= ((((1
* p1)
+ (((
- a)
+ (
- b))
* p1))
+ (a
* p2))
+ (b
* p3)) by
RLVECT_1:def 8
.= ((((1
+ ((
- a)
+ (
- b)))
* p1)
+ (a
* p2))
+ (b
* p3)) by
RLVECT_1:def 6;
(((1
+ ((
- a)
+ (
- b)))
+ a)
+ b)
= 1;
hence thesis by
A14,
Th52;
end;
end;
hence thesis;
end;
definition
let n be
Element of
NAT , p1,p2,p3,p be
Point of (
TOP-REAL n);
assume
A1: ((p2
- p1),(p3
- p1))
are_lindependent2 & p
in (
plane (p1,p2,p3));
::
EUCLID_3:def11
func
tricord1 (p1,p2,p3,p) ->
Real means
:
Def11: ex a2,a3 be
Real st ((it
+ a2)
+ a3)
= 1 & p
= (((it
* p1)
+ (a2
* p2))
+ (a3
* p3));
existence
proof
ex a01,a02,a03 be
Real st p
= (((a01
* p1)
+ (a02
* p2))
+ (a03
* p3)) & ((a01
+ a02)
+ a03)
= 1 & for b1,b2,b3 be
Real st p
= (((b1
* p1)
+ (b2
* p2))
+ (b3
* p3)) & ((b1
+ b2)
+ b3)
= 1 holds b1
= a01 & b2
= a02 & b3
= a03 by
A1,
Th51;
hence thesis;
end;
uniqueness
proof
let a1,b1 be
Real;
assume that
A2: ex a2,a3 be
Real st ((a1
+ a2)
+ a3)
= 1 & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) and
A3: ex a2,a3 be
Real st ((b1
+ a2)
+ a3)
= 1 & p
= (((b1
* p1)
+ (a2
* p2))
+ (a3
* p3));
consider a001,a002,a003 be
Real such that p
= (((a001
* p1)
+ (a002
* p2))
+ (a003
* p3)) and ((a001
+ a002)
+ a003)
= 1 and
A4: for b01,b02,b03 be
Real st p
= (((b01
* p1)
+ (b02
* p2))
+ (b03
* p3)) & ((b01
+ b02)
+ b03)
= 1 holds b01
= a001 & b02
= a002 & b03
= a003 by
A1,
Th51;
a1
= a001 by
A2,
A4;
hence thesis by
A3,
A4;
end;
end
definition
let n be
Element of
NAT , p1,p2,p3,p be
Point of (
TOP-REAL n);
assume
A1: ((p2
- p1),(p3
- p1))
are_lindependent2 & p
in (
plane (p1,p2,p3));
::
EUCLID_3:def12
func
tricord2 (p1,p2,p3,p) ->
Real means
:
Def12: ex a1,a3 be
Real st ((a1
+ it )
+ a3)
= 1 & p
= (((a1
* p1)
+ (it
* p2))
+ (a3
* p3));
existence
proof
ex a01,a02,a03 be
Real st p
= (((a01
* p1)
+ (a02
* p2))
+ (a03
* p3)) & ((a01
+ a02)
+ a03)
= 1 & for b1,b2,b3 be
Real st p
= (((b1
* p1)
+ (b2
* p2))
+ (b3
* p3)) & ((b1
+ b2)
+ b3)
= 1 holds b1
= a01 & b2
= a02 & b3
= a03 by
A1,
Th51;
hence thesis;
end;
uniqueness
proof
let a2,b2 be
Real;
assume that
A2: ex a1,a3 be
Real st ((a1
+ a2)
+ a3)
= 1 & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) and
A3: ex a1,a3 be
Real st ((a1
+ b2)
+ a3)
= 1 & p
= (((a1
* p1)
+ (b2
* p2))
+ (a3
* p3));
consider a001,a002,a003 be
Real such that p
= (((a001
* p1)
+ (a002
* p2))
+ (a003
* p3)) and ((a001
+ a002)
+ a003)
= 1 and
A4: for b01,b02,b03 be
Real st p
= (((b01
* p1)
+ (b02
* p2))
+ (b03
* p3)) & ((b01
+ b02)
+ b03)
= 1 holds b01
= a001 & b02
= a002 & b03
= a003 by
A1,
Th51;
a2
= a002 by
A2,
A4;
hence thesis by
A3,
A4;
end;
end
definition
let n be
Element of
NAT , p1,p2,p3,p be
Point of (
TOP-REAL n);
assume
A1: ((p2
- p1),(p3
- p1))
are_lindependent2 & p
in (
plane (p1,p2,p3));
::
EUCLID_3:def13
func
tricord3 (p1,p2,p3,p) ->
Real means
:
Def13: ex a1,a2 be
Real st ((a1
+ a2)
+ it )
= 1 & p
= (((a1
* p1)
+ (a2
* p2))
+ (it
* p3));
existence
proof
ex a01,a02,a03 be
Real st p
= (((a01
* p1)
+ (a02
* p2))
+ (a03
* p3)) & ((a01
+ a02)
+ a03)
= 1 & for b1,b2,b3 be
Real st p
= (((b1
* p1)
+ (b2
* p2))
+ (b3
* p3)) & ((b1
+ b2)
+ b3)
= 1 holds b1
= a01 & b2
= a02 & b3
= a03 by
A1,
Th51;
hence thesis;
end;
uniqueness
proof
let a3,b3 be
Real;
assume that
A2: ex a1,a2 be
Real st ((a1
+ a2)
+ a3)
= 1 & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) and
A3: ex a1,a2 be
Real st ((a1
+ a2)
+ b3)
= 1 & p
= (((a1
* p1)
+ (a2
* p2))
+ (b3
* p3));
consider a001,a002,a003 be
Real such that p
= (((a001
* p1)
+ (a002
* p2))
+ (a003
* p3)) and ((a001
+ a002)
+ a003)
= 1 and
A4: for b01,b02,b03 be
Real st p
= (((b01
* p1)
+ (b02
* p2))
+ (b03
* p3)) & ((b01
+ b02)
+ b03)
= 1 holds b01
= a001 & b02
= a002 & b03
= a003 by
A1,
Th51;
a3
= a003 by
A2,
A4;
hence thesis by
A3,
A4;
end;
end
definition
let p1, p2, p3;
::
EUCLID_3:def14
func
trcmap1 (p1,p2,p3) ->
Function of (
TOP-REAL 2),
R^1 means for p holds (it
. p)
= (
tricord1 (p1,p2,p3,p));
existence
proof
defpred
P[
object,
object] means for p st p
= $1 holds $2
= (
tricord1 (p1,p2,p3,p));
set X = the
carrier of (
TOP-REAL 2), Y = the
carrier of
R^1 ;
A1: for x be
object st x
in X holds ex y be
object st y
in Y &
P[x, y]
proof
let x be
object;
assume x
in X;
then
reconsider p0 = x as
Point of (
TOP-REAL 2);
A2: (
tricord1 (p1,p2,p3,p0))
in
REAL by
XREAL_0:def 1;
P[x, (
tricord1 (p1,p2,p3,p0))];
hence thesis by
A2,
TOPMETR: 17;
end;
ex f be
Function of X, Y st for x be
object st x
in X holds
P[x, (f
. x)] from
FUNCT_2:sch 1(
A1);
then
consider g be
Function of X, Y such that
A3: for x be
object st x
in X holds for p st p
= x holds (g
. x)
= (
tricord1 (p1,p2,p3,p));
reconsider f0 = g as
Function of (
TOP-REAL 2),
R^1 ;
for p holds (f0
. p)
= (
tricord1 (p1,p2,p3,p)) by
A3;
hence thesis;
end;
uniqueness
proof
let f1,f2 be
Function of (
TOP-REAL 2),
R^1 ;
assume that
A4: for p holds (f1
. p)
= (
tricord1 (p1,p2,p3,p)) and
A5: for p holds (f2
. p)
= (
tricord1 (p1,p2,p3,p));
A6: for x be
object st x
in (
dom f1) holds (f1
. x)
= (f2
. x)
proof
let x be
object;
assume x
in (
dom f1);
then
reconsider p0 = x as
Point of (
TOP-REAL 2) by
FUNCT_2:def 1;
(f1
. p0)
= (
tricord1 (p1,p2,p3,p0)) by
A4;
hence thesis by
A5;
end;
(
dom f1)
= the
carrier of (
TOP-REAL 2) by
FUNCT_2:def 1;
then (
dom f1)
= (
dom f2) by
FUNCT_2:def 1;
hence f1
= f2 by
A6,
FUNCT_1: 2;
end;
end
definition
let p1, p2, p3;
::
EUCLID_3:def15
func
trcmap2 (p1,p2,p3) ->
Function of (
TOP-REAL 2),
R^1 means for p holds (it
. p)
= (
tricord2 (p1,p2,p3,p));
existence
proof
defpred
P[
object,
object] means for p st p
= $1 holds $2
= (
tricord2 (p1,p2,p3,p));
set X = the
carrier of (
TOP-REAL 2), Y = the
carrier of
R^1 ;
A1: for x be
object st x
in X holds ex y be
object st y
in Y &
P[x, y]
proof
let x be
object;
assume x
in X;
then
reconsider p0 = x as
Point of (
TOP-REAL 2);
reconsider t = (
tricord2 (p1,p2,p3,p0)) as
Element of
REAL by
XREAL_0:def 1;
P[x, t];
hence thesis by
TOPMETR: 17;
end;
ex f be
Function of X, Y st for x be
object st x
in X holds
P[x, (f
. x)] from
FUNCT_2:sch 1(
A1);
then
consider g be
Function of X, Y such that
A2: for x be
object st x
in X holds for p st p
= x holds (g
. x)
= (
tricord2 (p1,p2,p3,p));
reconsider f0 = g as
Function of (
TOP-REAL 2),
R^1 ;
for p holds (f0
. p)
= (
tricord2 (p1,p2,p3,p)) by
A2;
hence thesis;
end;
uniqueness
proof
let f1,f2 be
Function of (
TOP-REAL 2),
R^1 ;
assume that
A3: for p holds (f1
. p)
= (
tricord2 (p1,p2,p3,p)) and
A4: for p holds (f2
. p)
= (
tricord2 (p1,p2,p3,p));
A5: for x be
object st x
in (
dom f1) holds (f1
. x)
= (f2
. x)
proof
let x be
object;
assume x
in (
dom f1);
then
reconsider p0 = x as
Point of (
TOP-REAL 2) by
FUNCT_2:def 1;
(f1
. p0)
= (
tricord2 (p1,p2,p3,p0)) by
A3;
hence thesis by
A4;
end;
(
dom f1)
= the
carrier of (
TOP-REAL 2) by
FUNCT_2:def 1;
then (
dom f1)
= (
dom f2) by
FUNCT_2:def 1;
hence f1
= f2 by
A5,
FUNCT_1: 2;
end;
end
definition
let p1, p2, p3;
::
EUCLID_3:def16
func
trcmap3 (p1,p2,p3) ->
Function of (
TOP-REAL 2),
R^1 means for p holds (it
. p)
= (
tricord3 (p1,p2,p3,p));
existence
proof
defpred
P[
object,
object] means for p st p
= $1 holds $2
= (
tricord3 (p1,p2,p3,p));
set X = the
carrier of (
TOP-REAL 2), Y = the
carrier of
R^1 ;
A1: for x be
object st x
in X holds ex y be
object st y
in Y &
P[x, y]
proof
let x be
object;
assume x
in X;
then
reconsider p0 = x as
Point of (
TOP-REAL 2);
A2: (
tricord3 (p1,p2,p3,p0))
in
REAL by
XREAL_0:def 1;
P[x, (
tricord3 (p1,p2,p3,p0))];
hence thesis by
A2,
TOPMETR: 17;
end;
ex f be
Function of X, Y st for x be
object st x
in X holds
P[x, (f
. x)] from
FUNCT_2:sch 1(
A1);
then
consider g be
Function of X, Y such that
A3: for x be
object st x
in X holds for p st p
= x holds (g
. x)
= (
tricord3 (p1,p2,p3,p));
reconsider f0 = g as
Function of (
TOP-REAL 2),
R^1 ;
for p holds (f0
. p)
= (
tricord3 (p1,p2,p3,p)) by
A3;
hence thesis;
end;
uniqueness
proof
let f1,f2 be
Function of (
TOP-REAL 2),
R^1 ;
assume that
A4: for p holds (f1
. p)
= (
tricord3 (p1,p2,p3,p)) and
A5: for p holds (f2
. p)
= (
tricord3 (p1,p2,p3,p));
A6: for x be
object st x
in (
dom f1) holds (f1
. x)
= (f2
. x)
proof
let x be
object;
assume x
in (
dom f1);
then
reconsider p0 = x as
Point of (
TOP-REAL 2) by
FUNCT_2:def 1;
(f1
. p0)
= (
tricord3 (p1,p2,p3,p0)) by
A4;
hence thesis by
A5;
end;
(
dom f1)
= the
carrier of (
TOP-REAL 2) by
FUNCT_2:def 1;
then (
dom f1)
= (
dom f2) by
FUNCT_2:def 1;
hence f1
= f2 by
A6,
FUNCT_1: 2;
end;
end
theorem ::
EUCLID_3:55
for p1, p2, p3, p st ((p2
- p1),(p3
- p1))
are_lindependent2 holds p
in (
outside_of_triangle (p1,p2,p3)) iff (
tricord1 (p1,p2,p3,p))
<
0 or (
tricord2 (p1,p2,p3,p))
<
0 or (
tricord3 (p1,p2,p3,p))
<
0
proof
let p1, p2, p3, p;
set i1 = (
tricord1 (p1,p2,p3,p)), i2 = (
tricord2 (p1,p2,p3,p)), i3 = (
tricord3 (p1,p2,p3,p));
assume
A1: ((p2
- p1),(p3
- p1))
are_lindependent2 ;
thus p
in (
outside_of_triangle (p1,p2,p3)) implies (
tricord1 (p1,p2,p3,p))
<
0 or (
tricord2 (p1,p2,p3,p))
<
0 or (
tricord3 (p1,p2,p3,p))
<
0
proof
assume
A2: p
in (
outside_of_triangle (p1,p2,p3));
p
in the
carrier of (
TOP-REAL 2);
then p
in (
REAL 2) by
EUCLID: 22;
then
A3: p
in (
plane (p1,p2,p3)) by
A1,
Th54;
consider p0 such that
A4: p0
= p and
A5: ex a1,a2,a3 be
Real st (
0
> a1 or
0
> a2 or
0
> a3) & ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A2;
ex a1,a2,a3 be
Real st (
0
> a1 or
0
> a2 or
0
> a3) & ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A5;
hence thesis by
A1,
A3,
Def11,
Def12,
Def13,
A4;
end;
p
in the
carrier of (
TOP-REAL 2);
then p
in (
REAL 2) by
EUCLID: 22;
then
A6: p
in (
plane (p1,p2,p3)) by
A1,
Th54;
then
consider a2,a3 be
Real such that
A7: ((i1
+ a2)
+ a3)
= 1 & p
= (((i1
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A1,
Def11;
assume
A8: (
tricord1 (p1,p2,p3,p))
<
0 or (
tricord2 (p1,p2,p3,p))
<
0 or (
tricord3 (p1,p2,p3,p))
<
0 ;
a2
= i2 & a3
= i3 by
A1,
A6,
A7,
Def12,
Def13;
hence thesis by
A8,
A7;
end;
theorem ::
EUCLID_3:56
Th56: for p1, p2, p3, p st ((p2
- p1),(p3
- p1))
are_lindependent2 holds p
in (
Triangle (p1,p2,p3)) iff (
tricord1 (p1,p2,p3,p))
>=
0 & (
tricord2 (p1,p2,p3,p))
>=
0 & (
tricord3 (p1,p2,p3,p))
>=
0 & ((
tricord1 (p1,p2,p3,p))
=
0 or (
tricord2 (p1,p2,p3,p))
=
0 or (
tricord3 (p1,p2,p3,p))
=
0 )
proof
let p1, p2, p3, p;
assume
A1: ((p2
- p1),(p3
- p1))
are_lindependent2 ;
A2: for p0 holds p0
in (
Triangle (p1,p2,p3)) iff p0
in (
LSeg (p1,p2)) or p0
in (
LSeg (p2,p3)) or p0
in (
LSeg (p3,p1))
proof
let p0;
p0
in (
Triangle (p1,p2,p3)) iff p0
in ((
LSeg (p1,p2))
\/ (
LSeg (p2,p3))) or p0
in (
LSeg (p3,p1)) by
XBOOLE_0:def 3;
hence thesis by
XBOOLE_0:def 3;
end;
thus p
in (
Triangle (p1,p2,p3)) implies (
tricord1 (p1,p2,p3,p))
>=
0 & (
tricord2 (p1,p2,p3,p))
>=
0 & (
tricord3 (p1,p2,p3,p))
>=
0 & ((
tricord1 (p1,p2,p3,p))
=
0 or (
tricord2 (p1,p2,p3,p))
=
0 or (
tricord3 (p1,p2,p3,p))
=
0 )
proof
set x = p;
assume
A3: p
in (
Triangle (p1,p2,p3));
A4:
now
per cases by
A2,
A3;
case x
in (
LSeg (p1,p2));
then
consider lambda be
Real such that
A5: x
= (((1
- lambda)
* p1)
+ (lambda
* p2)) and
A6:
0
<= lambda and
A7: lambda
<= 1;
A8: p
= ((((1
- lambda)
* p1)
+ (lambda
* p2))
+ (
0. (
TOP-REAL 2))) by
A5,
RLVECT_1: 4
.= ((((1
- lambda)
* p1)
+ (lambda
* p2))
+ (
0
* p3)) by
RLVECT_1: 10;
A9: (((1
- lambda)
+ lambda)
+
0 )
= 1;
(1
- lambda)
>=
0 by
A7,
XREAL_1: 48;
hence ex a1,a2,a3 be
Real st
0
<= a1 &
0
<= a2 &
0
<= a3 & ((a1
+ a2)
+ a3)
= 1 & (a1
=
0 or a2
=
0 or a3
=
0 ) & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A6,
A9,
A8;
end;
case x
in (
LSeg (p2,p3));
then
consider lambda be
Real such that
A10: x
= (((1
- lambda)
* p2)
+ (lambda
* p3)) and
A11:
0
<= lambda and
A12: lambda
<= 1;
A13: p
= (((
0. (
TOP-REAL 2))
+ ((1
- lambda)
* p2))
+ (lambda
* p3)) by
A10,
RLVECT_1: 4
.= (((
0
* p1)
+ ((1
- lambda)
* p2))
+ (lambda
* p3)) by
RLVECT_1: 10;
A14: ((
0
+ (1
- lambda))
+ lambda)
= 1;
(1
- lambda)
>=
0 by
A12,
XREAL_1: 48;
hence ex a1,a2,a3 be
Real st
0
<= a1 &
0
<= a2 &
0
<= a3 & ((a1
+ a2)
+ a3)
= 1 & (a1
=
0 or a2
=
0 or a3
=
0 ) & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A11,
A14,
A13;
end;
case x
in (
LSeg (p3,p1));
then
consider lambda be
Real such that
A15: x
= (((1
- lambda)
* p3)
+ (lambda
* p1)) and
A16:
0
<= lambda and
A17: lambda
<= 1;
A18: p
= (((lambda
* p1)
+ (
0. (
TOP-REAL 2)))
+ ((1
- lambda)
* p3)) by
A15,
RLVECT_1: 4
.= (((lambda
* p1)
+ (
0
* p2))
+ ((1
- lambda)
* p3)) by
RLVECT_1: 10;
A19: ((lambda
+
0 )
+ (1
- lambda))
= 1;
(1
- lambda)
>=
0 by
A17,
XREAL_1: 48;
hence ex a1,a2,a3 be
Real st
0
<= a1 &
0
<= a2 &
0
<= a3 & ((a1
+ a2)
+ a3)
= 1 & (a1
=
0 or a2
=
0 or a3
=
0 ) & p
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A16,
A19,
A18;
end;
end;
p
in the
carrier of (
TOP-REAL 2);
then p
in (
REAL 2) by
EUCLID: 22;
then p
in (
plane (p1,p2,p3)) by
A1,
Th54;
hence thesis by
A1,
A4,
Def11,
Def12,
Def13;
end;
thus (
tricord1 (p1,p2,p3,p))
>=
0 & (
tricord2 (p1,p2,p3,p))
>=
0 & (
tricord3 (p1,p2,p3,p))
>=
0 & ((
tricord1 (p1,p2,p3,p))
=
0 or (
tricord2 (p1,p2,p3,p))
=
0 or (
tricord3 (p1,p2,p3,p))
=
0 ) implies p
in (
Triangle (p1,p2,p3))
proof
set p0 = p;
assume that
A20: (
tricord1 (p1,p2,p3,p))
>=
0 and
A21: (
tricord2 (p1,p2,p3,p))
>=
0 and
A22: (
tricord3 (p1,p2,p3,p))
>=
0 and
A23: (
tricord1 (p1,p2,p3,p))
=
0 or (
tricord2 (p1,p2,p3,p))
=
0 or (
tricord3 (p1,p2,p3,p))
=
0 ;
set i01 = (
tricord1 (p1,p2,p3,p0)), i02 = (
tricord2 (p1,p2,p3,p0)), i03 = (
tricord3 (p1,p2,p3,p0));
p0
in the
carrier of (
TOP-REAL 2);
then p0
in (
REAL 2) by
EUCLID: 22;
then
A24: p0
in (
plane (p1,p2,p3)) by
A1,
Th54;
now
per cases by
A23;
case (
tricord1 (p1,p2,p3,p))
=
0 ;
then
consider a2,a3 be
Real such that
A25: ((
0
+ a2)
+ a3)
= 1 and
A26: p
= (((
0
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A1,
A24,
Def11;
a2
= i02 by
A1,
A24,
A25,
A26,
Def12;
then
A27: ((1
- a3)
+ a3)
>= (
0
+ a3) by
A21,
A25,
XREAL_1: 7;
A28: p
= (((
0. (
TOP-REAL 2))
+ (a2
* p2))
+ (a3
* p3)) by
A26,
RLVECT_1: 10
.= ((a2
* p2)
+ (a3
* p3)) by
RLVECT_1: 4;
a3
= i03 by
A1,
A24,
A25,
A26,
Def13;
hence p
in (
LSeg (p1,p2)) or p
in (
LSeg (p2,p3)) or p
in (
LSeg (p3,p1)) by
A22,
A25,
A28,
A27;
end;
case (
tricord2 (p1,p2,p3,p))
=
0 ;
then
consider a1,a3 be
Real such that
A29: ((a1
+
0 )
+ a3)
= 1 and
A30: p
= (((a1
* p1)
+ (
0
* p2))
+ (a3
* p3)) by
A1,
A24,
Def12;
a1
= i01 by
A1,
A24,
A29,
A30,
Def11;
then
A31: ((1
- a3)
+ a3)
>= (
0
+ a3) by
A20,
A29,
XREAL_1: 7;
A32: p
= (((a1
* p1)
+ (
0. (
TOP-REAL 2)))
+ (a3
* p3)) by
A30,
RLVECT_1: 10
.= ((a1
* p1)
+ (a3
* p3)) by
RLVECT_1: 4;
a3
= i03 by
A1,
A24,
A29,
A30,
Def13;
then p
in { (((1
- lambda)
* p1)
+ (lambda
* p3)) where lambda be
Real :
0
<= lambda & lambda
<= 1 } by
A22,
A29,
A32,
A31;
hence p
in (
LSeg (p1,p2)) or p
in (
LSeg (p2,p3)) or p
in (
LSeg (p3,p1)) by
RLTOPSP1:def 2;
end;
case (
tricord3 (p1,p2,p3,p))
=
0 ;
then
consider a1,a2 be
Real such that
A33: ((a1
+ a2)
+
0 )
= 1 and
A34: p
= (((a1
* p1)
+ (a2
* p2))
+ (
0
* p3)) by
A1,
A24,
Def13;
a1
= i01 by
A1,
A24,
A33,
A34,
Def11;
then
A35: ((1
- a2)
+ a2)
>= (
0
+ a2) by
A20,
A33,
XREAL_1: 7;
A36: p
= (((a1
* p1)
+ (a2
* p2))
+ (
0. (
TOP-REAL 2))) by
A34,
RLVECT_1: 10
.= ((a1
* p1)
+ (a2
* p2)) by
RLVECT_1: 4;
a2
= i02 by
A1,
A24,
A33,
A34,
Def12;
hence p
in (
LSeg (p1,p2)) or p
in (
LSeg (p2,p3)) or p
in (
LSeg (p3,p1)) by
A21,
A33,
A36,
A35;
end;
end;
hence thesis by
A2;
end;
end;
theorem ::
EUCLID_3:57
for p1, p2, p3, p st ((p2
- p1),(p3
- p1))
are_lindependent2 holds p
in (
Triangle (p1,p2,p3)) iff (
tricord1 (p1,p2,p3,p))
=
0 & (
tricord2 (p1,p2,p3,p))
>=
0 & (
tricord3 (p1,p2,p3,p))
>=
0 or (
tricord1 (p1,p2,p3,p))
>=
0 & (
tricord2 (p1,p2,p3,p))
=
0 & (
tricord3 (p1,p2,p3,p))
>=
0 or (
tricord1 (p1,p2,p3,p))
>=
0 & (
tricord2 (p1,p2,p3,p))
>=
0 & (
tricord3 (p1,p2,p3,p))
=
0 by
Th56;
theorem ::
EUCLID_3:58
Th58: for p1, p2, p3, p st ((p2
- p1),(p3
- p1))
are_lindependent2 holds p
in (
inside_of_triangle (p1,p2,p3)) iff (
tricord1 (p1,p2,p3,p))
>
0 & (
tricord2 (p1,p2,p3,p))
>
0 & (
tricord3 (p1,p2,p3,p))
>
0
proof
let p1, p2, p3, p;
assume
A1: ((p2
- p1),(p3
- p1))
are_lindependent2 ;
A2: (
inside_of_triangle (p1,p2,p3))
c= { p0 where p0 be
Point of (
TOP-REAL 2) : ex a1,a2,a3 be
Real st (
0
< a1 &
0
< a2 &
0
< a3) & ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) }
proof
let x be
object;
assume
A3: x
in (
inside_of_triangle (p1,p2,p3));
then
A4: not x
in (
Triangle (p1,p2,p3)) by
XBOOLE_0:def 5;
x
in (
closed_inside_of_triangle (p1,p2,p3)) by
A3,
XBOOLE_0:def 5;
then
consider p0 be
Point of (
TOP-REAL 2) such that
A5: p0
= x and
A6: ex a1,a2,a3 be
Real st
0
<= a1 &
0
<= a2 &
0
<= a3 & ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3));
reconsider i01 = (
tricord1 (p1,p2,p3,p0)), i02 = (
tricord2 (p1,p2,p3,p0)), i03 = (
tricord3 (p1,p2,p3,p0)) as
Real;
consider a1,a2,a3 be
Real such that
A7:
0
<= a1 and
A8:
0
<= a2 and
A9:
0
<= a3 and
A10: ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A6;
p0
in the
carrier of (
TOP-REAL 2);
then p0
in (
REAL 2) by
EUCLID: 22;
then
A11: p0
in (
plane (p1,p2,p3)) by
A1,
Th54;
then
A12: a1
= i01 by
A1,
A10,
Def11;
A13: a3
= i03 by
A1,
A10,
A11,
Def13;
then
A14: i02
<>
0 by
A1,
A4,
A5,
A7,
A9,
A12,
Th56;
A15: a2
= i02 by
A1,
A10,
A11,
Def12;
then
A16: i03
<>
0 by
A1,
A4,
A5,
A7,
A8,
A12,
Th56;
i01
<>
0 by
A1,
A4,
A5,
A8,
A9,
A15,
A13,
Th56;
hence thesis by
A5,
A7,
A8,
A9,
A10,
A12,
A15,
A13,
A14,
A16;
end;
thus p
in (
inside_of_triangle (p1,p2,p3)) implies (
tricord1 (p1,p2,p3,p))
>
0 & (
tricord2 (p1,p2,p3,p))
>
0 & (
tricord3 (p1,p2,p3,p))
>
0
proof
p
in the
carrier of (
TOP-REAL 2);
then p
in (
REAL 2) by
EUCLID: 22;
then
A17: p
in (
plane (p1,p2,p3)) by
A1,
Th54;
assume
A18: p
in (
inside_of_triangle (p1,p2,p3));
then p
in (
closed_inside_of_triangle (p1,p2,p3)) by
XBOOLE_0:def 5;
then
consider p0 be
Point of (
TOP-REAL 2) such that
A19: p0
= p and
A20: ex a1,a2,a3 be
Real st
0
<= a1 &
0
<= a2 &
0
<= a3 & ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3));
not p
in (
Triangle (p1,p2,p3)) by
A18,
XBOOLE_0:def 5;
then not ((
tricord1 (p1,p2,p3,p0))
>=
0 & (
tricord2 (p1,p2,p3,p0))
>=
0 & (
tricord3 (p1,p2,p3,p0))
>=
0 & ((
tricord1 (p1,p2,p3,p0))
=
0 or (
tricord2 (p1,p2,p3,p0))
=
0 or (
tricord3 (p1,p2,p3,p0))
=
0 )) by
A1,
A19,
Th56;
hence thesis by
A1,
A19,
A17,
A20,
Def11,
Def12,
Def13;
end;
{ p0 where p0 be
Point of (
TOP-REAL 2) : ex a1,a2,a3 be
Real st
0
< a1 &
0
< a2 &
0
< a3 & ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) }
c= (
inside_of_triangle (p1,p2,p3))
proof
let x be
object;
assume x
in { p0 where p0 be
Point of (
TOP-REAL 2) : ex a1,a2,a3 be
Real st (
0
< a1 &
0
< a2 &
0
< a3) & ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) };
then
consider p0 be
Point of (
TOP-REAL 2) such that
A21: x
= p0 and
A22: ex a1,a2,a3 be
Real st
0
< a1 &
0
< a2 &
0
< a3 & ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3));
A23: x
in (
closed_inside_of_triangle (p1,p2,p3)) by
A21,
A22;
set i01 = (
tricord1 (p1,p2,p3,p0)), i02 = (
tricord2 (p1,p2,p3,p0)), i03 = (
tricord3 (p1,p2,p3,p0));
consider a01,a02,a03 be
Real such that
A24:
0
< a01 &
0
< a02 &
0
< a03 and
A25: ((a01
+ a02)
+ a03)
= 1 & p0
= (((a01
* p1)
+ (a02
* p2))
+ (a03
* p3)) by
A22;
p0
in the
carrier of (
TOP-REAL 2);
then p0
in (
REAL 2) by
EUCLID: 22;
then
A26: p0
in (
plane (p1,p2,p3)) by
A1,
Th54;
then
A27: a03
= i03 by
A1,
A25,
Def13;
a01
= i01 & a02
= i02 by
A1,
A25,
A26,
Def11,
Def12;
then not x
in (
Triangle (p1,p2,p3)) by
A1,
A21,
A24,
A27,
Th56;
hence thesis by
A23,
XBOOLE_0:def 5;
end;
then
A28: (
inside_of_triangle (p1,p2,p3))
= { p0 where p0 be
Point of (
TOP-REAL 2) : ex a1,a2,a3 be
Real st (
0
< a1 &
0
< a2 &
0
< a3) & ((a1
+ a2)
+ a3)
= 1 & p0
= (((a1
* p1)
+ (a2
* p2))
+ (a3
* p3)) } by
A2;
thus (
tricord1 (p1,p2,p3,p))
>
0 & (
tricord2 (p1,p2,p3,p))
>
0 & (
tricord3 (p1,p2,p3,p))
>
0 implies p
in (
inside_of_triangle (p1,p2,p3))
proof
reconsider i1 = (
tricord1 (p1,p2,p3,p)), i2 = (
tricord2 (p1,p2,p3,p)), i3 = (
tricord3 (p1,p2,p3,p)) as
Real;
assume
A29: (
tricord1 (p1,p2,p3,p))
>
0 & (
tricord2 (p1,p2,p3,p))
>
0 & (
tricord3 (p1,p2,p3,p))
>
0 ;
p
in the
carrier of (
TOP-REAL 2);
then p
in (
REAL 2) by
EUCLID: 22;
then
A30: p
in (
plane (p1,p2,p3)) by
A1,
Th54;
then
consider a2,a3 be
Real such that
A31: ((i1
+ a2)
+ a3)
= 1 & p
= (((i1
* p1)
+ (a2
* p2))
+ (a3
* p3)) by
A1,
Def11;
a2
= i2 & a3
= i3 by
A1,
A30,
A31,
Def12,
Def13;
hence thesis by
A28,
A29,
A31;
end;
end;
theorem ::
EUCLID_3:59
for p1, p2, p3 st ((p2
- p1),(p3
- p1))
are_lindependent2 holds (
inside_of_triangle (p1,p2,p3)) is non
empty
proof
let p1, p2, p3;
assume
A1: ((p2
- p1),(p3
- p1))
are_lindependent2 ;
set p0 = ((((1
/ 3)
* p1)
+ ((1
/ 3)
* p2))
+ ((1
/ 3)
* p3));
set i01 = (
tricord1 (p1,p2,p3,p0)), i02 = (
tricord2 (p1,p2,p3,p0)), i03 = (
tricord3 (p1,p2,p3,p0));
p0
in the
carrier of (
TOP-REAL 2);
then p0
in (
REAL 2) by
EUCLID: 22;
then
A2: (((1
/ 3)
+ (1
/ 3))
+ (1
/ 3))
= 1 & p0
in (
plane (p1,p2,p3)) by
A1,
Th54;
then
A3: (1
/ 3)
= i03 by
A1,
Def13;
(1
/ 3)
= i01 & (1
/ 3)
= i02 by
A1,
A2,
Def11,
Def12;
hence thesis by
A1,
A3,
Th58;
end;