Step |
Hyp |
Ref |
Expression |
1 |
|
isperp.p |
|- P = ( Base ` G ) |
2 |
|
isperp.d |
|- .- = ( dist ` G ) |
3 |
|
isperp.i |
|- I = ( Itv ` G ) |
4 |
|
isperp.l |
|- L = ( LineG ` G ) |
5 |
|
isperp.g |
|- ( ph -> G e. TarskiG ) |
6 |
|
isperp.a |
|- ( ph -> A e. ran L ) |
7 |
|
ragperp.b |
|- ( ph -> B e. ran L ) |
8 |
|
ragperp.x |
|- ( ph -> X e. ( A i^i B ) ) |
9 |
|
ragperp.u |
|- ( ph -> U e. A ) |
10 |
|
ragperp.v |
|- ( ph -> V e. B ) |
11 |
|
ragperp.1 |
|- ( ph -> U =/= X ) |
12 |
|
ragperp.2 |
|- ( ph -> V =/= X ) |
13 |
|
ragperp.r |
|- ( ph -> <" U X V "> e. ( raG ` G ) ) |
14 |
|
eqid |
|- ( pInvG ` G ) = ( pInvG ` G ) |
15 |
5
|
adantr |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> G e. TarskiG ) |
16 |
7
|
adantr |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> B e. ran L ) |
17 |
|
simprr |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> v e. B ) |
18 |
1 4 3 15 16 17
|
tglnpt |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> v e. P ) |
19 |
6
|
adantr |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> A e. ran L ) |
20 |
8
|
elin1d |
|- ( ph -> X e. A ) |
21 |
20
|
adantr |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> X e. A ) |
22 |
1 4 3 15 19 21
|
tglnpt |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> X e. P ) |
23 |
|
simprl |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> u e. A ) |
24 |
1 4 3 15 19 23
|
tglnpt |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> u e. P ) |
25 |
10
|
adantr |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> V e. B ) |
26 |
1 4 3 15 16 25
|
tglnpt |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> V e. P ) |
27 |
9
|
adantr |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> U e. A ) |
28 |
1 4 3 15 19 27
|
tglnpt |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> U e. P ) |
29 |
13
|
adantr |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> <" U X V "> e. ( raG ` G ) ) |
30 |
11
|
adantr |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> U =/= X ) |
31 |
9
|
ad2antrr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = u ) -> U e. A ) |
32 |
5
|
ad2antrr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = u ) -> G e. TarskiG ) |
33 |
22
|
adantr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = u ) -> X e. P ) |
34 |
24
|
adantr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = u ) -> u e. P ) |
35 |
|
simpr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = u ) -> -. X = u ) |
36 |
35
|
neqned |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = u ) -> X =/= u ) |
37 |
6
|
ad2antrr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = u ) -> A e. ran L ) |
38 |
20
|
ad2antrr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = u ) -> X e. A ) |
39 |
23
|
adantr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = u ) -> u e. A ) |
40 |
1 3 4 32 33 34 36 36 37 38 39
|
tglinethru |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = u ) -> A = ( X L u ) ) |
41 |
31 40
|
eleqtrd |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = u ) -> U e. ( X L u ) ) |
42 |
41
|
ex |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> ( -. X = u -> U e. ( X L u ) ) ) |
43 |
42
|
orrd |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> ( X = u \/ U e. ( X L u ) ) ) |
44 |
43
|
orcomd |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> ( U e. ( X L u ) \/ X = u ) ) |
45 |
1 2 3 4 14 15 28 22 26 24 29 30 44
|
ragcol |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> <" u X V "> e. ( raG ` G ) ) |
46 |
1 2 3 4 14 15 24 22 26 45
|
ragcom |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> <" V X u "> e. ( raG ` G ) ) |
47 |
12
|
adantr |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> V =/= X ) |
48 |
10
|
ad2antrr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = v ) -> V e. B ) |
49 |
5
|
ad2antrr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = v ) -> G e. TarskiG ) |
50 |
22
|
adantr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = v ) -> X e. P ) |
51 |
18
|
adantr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = v ) -> v e. P ) |
52 |
|
simpr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = v ) -> -. X = v ) |
53 |
52
|
neqned |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = v ) -> X =/= v ) |
54 |
7
|
ad2antrr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = v ) -> B e. ran L ) |
55 |
8
|
elin2d |
|- ( ph -> X e. B ) |
56 |
55
|
ad2antrr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = v ) -> X e. B ) |
57 |
17
|
adantr |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = v ) -> v e. B ) |
58 |
1 3 4 49 50 51 53 53 54 56 57
|
tglinethru |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = v ) -> B = ( X L v ) ) |
59 |
48 58
|
eleqtrd |
|- ( ( ( ph /\ ( u e. A /\ v e. B ) ) /\ -. X = v ) -> V e. ( X L v ) ) |
60 |
59
|
ex |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> ( -. X = v -> V e. ( X L v ) ) ) |
61 |
60
|
orrd |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> ( X = v \/ V e. ( X L v ) ) ) |
62 |
61
|
orcomd |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> ( V e. ( X L v ) \/ X = v ) ) |
63 |
1 2 3 4 14 15 26 22 24 18 46 47 62
|
ragcol |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> <" v X u "> e. ( raG ` G ) ) |
64 |
1 2 3 4 14 15 18 22 24 63
|
ragcom |
|- ( ( ph /\ ( u e. A /\ v e. B ) ) -> <" u X v "> e. ( raG ` G ) ) |
65 |
64
|
ralrimivva |
|- ( ph -> A. u e. A A. v e. B <" u X v "> e. ( raG ` G ) ) |
66 |
1 2 3 4 5 6 7 8
|
isperp2 |
|- ( ph -> ( A ( perpG ` G ) B <-> A. u e. A A. v e. B <" u X v "> e. ( raG ` G ) ) ) |
67 |
65 66
|
mpbird |
|- ( ph -> A ( perpG ` G ) B ) |