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 |
|
isperp.b |
|- ( ph -> B e. ran L ) |
8 |
|
df-br |
|- ( A ( perpG ` G ) B <-> <. A , B >. e. ( perpG ` G ) ) |
9 |
|
df-perpg |
|- perpG = ( g e. _V |-> { <. a , b >. | ( ( a e. ran ( LineG ` g ) /\ b e. ran ( LineG ` g ) ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` g ) ) } ) |
10 |
|
simpr |
|- ( ( ph /\ g = G ) -> g = G ) |
11 |
10
|
fveq2d |
|- ( ( ph /\ g = G ) -> ( LineG ` g ) = ( LineG ` G ) ) |
12 |
11 4
|
eqtr4di |
|- ( ( ph /\ g = G ) -> ( LineG ` g ) = L ) |
13 |
12
|
rneqd |
|- ( ( ph /\ g = G ) -> ran ( LineG ` g ) = ran L ) |
14 |
13
|
eleq2d |
|- ( ( ph /\ g = G ) -> ( a e. ran ( LineG ` g ) <-> a e. ran L ) ) |
15 |
13
|
eleq2d |
|- ( ( ph /\ g = G ) -> ( b e. ran ( LineG ` g ) <-> b e. ran L ) ) |
16 |
14 15
|
anbi12d |
|- ( ( ph /\ g = G ) -> ( ( a e. ran ( LineG ` g ) /\ b e. ran ( LineG ` g ) ) <-> ( a e. ran L /\ b e. ran L ) ) ) |
17 |
10
|
fveq2d |
|- ( ( ph /\ g = G ) -> ( raG ` g ) = ( raG ` G ) ) |
18 |
17
|
eleq2d |
|- ( ( ph /\ g = G ) -> ( <" u x v "> e. ( raG ` g ) <-> <" u x v "> e. ( raG ` G ) ) ) |
19 |
18
|
ralbidv |
|- ( ( ph /\ g = G ) -> ( A. v e. b <" u x v "> e. ( raG ` g ) <-> A. v e. b <" u x v "> e. ( raG ` G ) ) ) |
20 |
19
|
rexralbidv |
|- ( ( ph /\ g = G ) -> ( E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` g ) <-> E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) ) ) |
21 |
16 20
|
anbi12d |
|- ( ( ph /\ g = G ) -> ( ( ( a e. ran ( LineG ` g ) /\ b e. ran ( LineG ` g ) ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` g ) ) <-> ( ( a e. ran L /\ b e. ran L ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) ) ) ) |
22 |
21
|
opabbidv |
|- ( ( ph /\ g = G ) -> { <. a , b >. | ( ( a e. ran ( LineG ` g ) /\ b e. ran ( LineG ` g ) ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` g ) ) } = { <. a , b >. | ( ( a e. ran L /\ b e. ran L ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) ) } ) |
23 |
5
|
elexd |
|- ( ph -> G e. _V ) |
24 |
4
|
fvexi |
|- L e. _V |
25 |
|
rnexg |
|- ( L e. _V -> ran L e. _V ) |
26 |
24 25
|
mp1i |
|- ( ph -> ran L e. _V ) |
27 |
26 26
|
xpexd |
|- ( ph -> ( ran L X. ran L ) e. _V ) |
28 |
|
opabssxp |
|- { <. a , b >. | ( ( a e. ran L /\ b e. ran L ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) ) } C_ ( ran L X. ran L ) |
29 |
28
|
a1i |
|- ( ph -> { <. a , b >. | ( ( a e. ran L /\ b e. ran L ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) ) } C_ ( ran L X. ran L ) ) |
30 |
27 29
|
ssexd |
|- ( ph -> { <. a , b >. | ( ( a e. ran L /\ b e. ran L ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) ) } e. _V ) |
31 |
9 22 23 30
|
fvmptd2 |
|- ( ph -> ( perpG ` G ) = { <. a , b >. | ( ( a e. ran L /\ b e. ran L ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) ) } ) |
32 |
31
|
eleq2d |
|- ( ph -> ( <. A , B >. e. ( perpG ` G ) <-> <. A , B >. e. { <. a , b >. | ( ( a e. ran L /\ b e. ran L ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) ) } ) ) |
33 |
8 32
|
syl5bb |
|- ( ph -> ( A ( perpG ` G ) B <-> <. A , B >. e. { <. a , b >. | ( ( a e. ran L /\ b e. ran L ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) ) } ) ) |
34 |
|
ineq12 |
|- ( ( a = A /\ b = B ) -> ( a i^i b ) = ( A i^i B ) ) |
35 |
|
simpll |
|- ( ( ( a = A /\ b = B ) /\ x e. ( a i^i b ) ) -> a = A ) |
36 |
|
simpllr |
|- ( ( ( ( a = A /\ b = B ) /\ x e. ( a i^i b ) ) /\ u e. a ) -> b = B ) |
37 |
36
|
raleqdv |
|- ( ( ( ( a = A /\ b = B ) /\ x e. ( a i^i b ) ) /\ u e. a ) -> ( A. v e. b <" u x v "> e. ( raG ` G ) <-> A. v e. B <" u x v "> e. ( raG ` G ) ) ) |
38 |
35 37
|
raleqbidva |
|- ( ( ( a = A /\ b = B ) /\ x e. ( a i^i b ) ) -> ( A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) <-> A. u e. A A. v e. B <" u x v "> e. ( raG ` G ) ) ) |
39 |
34 38
|
rexeqbidva |
|- ( ( a = A /\ b = B ) -> ( E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) <-> E. x e. ( A i^i B ) A. u e. A A. v e. B <" u x v "> e. ( raG ` G ) ) ) |
40 |
39
|
opelopab2a |
|- ( ( A e. ran L /\ B e. ran L ) -> ( <. A , B >. e. { <. a , b >. | ( ( a e. ran L /\ b e. ran L ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) ) } <-> E. x e. ( A i^i B ) A. u e. A A. v e. B <" u x v "> e. ( raG ` G ) ) ) |
41 |
6 7 40
|
syl2anc |
|- ( ph -> ( <. A , B >. e. { <. a , b >. | ( ( a e. ran L /\ b e. ran L ) /\ E. x e. ( a i^i b ) A. u e. a A. v e. b <" u x v "> e. ( raG ` G ) ) } <-> E. x e. ( A i^i B ) A. u e. A A. v e. B <" u x v "> e. ( raG ` G ) ) ) |
42 |
33 41
|
bitrd |
|- ( ph -> ( A ( perpG ` G ) B <-> E. x e. ( A i^i B ) A. u e. A A. v e. B <" u x v "> e. ( raG ` G ) ) ) |