MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  perpln1 Structured version   Visualization version   Unicode version

Theorem perpln1 25605
Description: Derive a line from perpendicularity. (Contributed by Thierry Arnoux, 27-Nov-2019.)
Hypotheses
Ref Expression
perpln.l  |-  L  =  (LineG `  G )
perpln.1  |-  ( ph  ->  G  e. TarskiG )
perpln.2  |-  ( ph  ->  A (⟂G `  G
) B )
Assertion
Ref Expression
perpln1  |-  ( ph  ->  A  e.  ran  L
)

Proof of Theorem perpln1
Dummy variables  a 
b  g  u  v  x are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-perpg 25591 . . . . . . 7  |- ⟂G  =  ( 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.  (∟G `  g )
) } )
21a1i 11 . . . . . 6  |-  ( ph  -> ⟂G  =  ( 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.  (∟G `  g
) ) } ) )
3 simpr 477 . . . . . . . . . . . . 13  |-  ( (
ph  /\  g  =  G )  ->  g  =  G )
43fveq2d 6195 . . . . . . . . . . . 12  |-  ( (
ph  /\  g  =  G )  ->  (LineG `  g )  =  (LineG `  G ) )
5 perpln.l . . . . . . . . . . . 12  |-  L  =  (LineG `  G )
64, 5syl6eqr 2674 . . . . . . . . . . 11  |-  ( (
ph  /\  g  =  G )  ->  (LineG `  g )  =  L )
76rneqd 5353 . . . . . . . . . 10  |-  ( (
ph  /\  g  =  G )  ->  ran  (LineG `  g )  =  ran  L )
87eleq2d 2687 . . . . . . . . 9  |-  ( (
ph  /\  g  =  G )  ->  (
a  e.  ran  (LineG `  g )  <->  a  e.  ran  L ) )
97eleq2d 2687 . . . . . . . . 9  |-  ( (
ph  /\  g  =  G )  ->  (
b  e.  ran  (LineG `  g )  <->  b  e.  ran  L ) )
108, 9anbi12d 747 . . . . . . . 8  |-  ( (
ph  /\  g  =  G )  ->  (
( a  e.  ran  (LineG `  g )  /\  b  e.  ran  (LineG `  g ) )  <->  ( a  e.  ran  L  /\  b  e.  ran  L ) ) )
113fveq2d 6195 . . . . . . . . . . 11  |-  ( (
ph  /\  g  =  G )  ->  (∟G `  g )  =  (∟G `  G ) )
1211eleq2d 2687 . . . . . . . . . 10  |-  ( (
ph  /\  g  =  G )  ->  ( <" u x v ">  e.  (∟G `  g )  <->  <" u x v ">  e.  (∟G `  G )
) )
1312ralbidv 2986 . . . . . . . . 9  |-  ( (
ph  /\  g  =  G )  ->  ( A. v  e.  b  <" u x v ">  e.  (∟G `  g )  <->  A. v  e.  b  <" u x v ">  e.  (∟G `  G )
) )
1413rexralbidv 3058 . . . . . . . 8  |-  ( (
ph  /\  g  =  G )  ->  ( E. x  e.  (
a  i^i  b ) A. u  e.  a  A. v  e.  b  <" u x v ">  e.  (∟G `  g )  <->  E. x  e.  ( a  i^i  b
) A. u  e.  a  A. v  e.  b  <" u x v ">  e.  (∟G `  G ) ) )
1510, 14anbi12d 747 . . . . . . 7  |-  ( (
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.  (∟G `  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.  (∟G `  G
) ) ) )
1615opabbidv 4716 . . . . . 6  |-  ( (
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.  (∟G `  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.  (∟G `  G ) ) } )
17 perpln.1 . . . . . . 7  |-  ( ph  ->  G  e. TarskiG )
18 elex 3212 . . . . . . 7  |-  ( G  e. TarskiG  ->  G  e.  _V )
1917, 18syl 17 . . . . . 6  |-  ( ph  ->  G  e.  _V )
20 fvex 6201 . . . . . . . . . 10  |-  (LineG `  G )  e.  _V
215, 20eqeltri 2697 . . . . . . . . 9  |-  L  e. 
_V
22 rnexg 7098 . . . . . . . . 9  |-  ( L  e.  _V  ->  ran  L  e.  _V )
2321, 22mp1i 13 . . . . . . . 8  |-  ( ph  ->  ran  L  e.  _V )
24 xpexg 6960 . . . . . . . 8  |-  ( ( ran  L  e.  _V  /\ 
ran  L  e.  _V )  ->  ( ran  L  X.  ran  L )  e. 
_V )
2523, 23, 24syl2anc 693 . . . . . . 7  |-  ( ph  ->  ( ran  L  X.  ran  L )  e.  _V )
26 opabssxp 5193 . . . . . . . 8  |-  { <. 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.  (∟G `  G ) ) }  C_  ( ran  L  X.  ran  L )
2726a1i 11 . . . . . . 7  |-  ( 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.  (∟G `  G ) ) }  C_  ( ran  L  X.  ran  L ) )
2825, 27ssexd 4805 . . . . . 6  |-  ( 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.  (∟G `  G ) ) }  e.  _V )
292, 16, 19, 28fvmptd 6288 . . . . 5  |-  ( ph  ->  (⟂G `  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.  (∟G `  G ) ) } )
30 anass 681 . . . . . 6  |-  ( ( ( 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.  (∟G `  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.  (∟G `  G ) ) ) )
3130opabbii 4717 . . . . 5  |-  { <. 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.  (∟G `  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.  (∟G `  G ) ) ) }
3229, 31syl6eq 2672 . . . 4  |-  ( ph  ->  (⟂G `  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.  (∟G `  G ) ) ) } )
3332dmeqd 5326 . . 3  |-  ( ph  ->  dom  (⟂G `  G )  =  dom  { <. 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.  (∟G `  G ) ) ) } )
34 dmopabss 5336 . . 3  |-  dom  { <. 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.  (∟G `  G ) ) ) }  C_  ran  L
3533, 34syl6eqss 3655 . 2  |-  ( ph  ->  dom  (⟂G `  G )  C_ 
ran  L )
36 relopab 5247 . . . . . 6  |-  Rel  { <. 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.  (∟G `  G ) ) }
3729releqd 5203 . . . . . 6  |-  ( ph  ->  ( Rel  (⟂G `  G
)  <->  Rel  { <. 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.  (∟G `  G ) ) } ) )
3836, 37mpbiri 248 . . . . 5  |-  ( ph  ->  Rel  (⟂G `  G )
)
39 perpln.2 . . . . 5  |-  ( ph  ->  A (⟂G `  G
) B )
40 brrelex12 5155 . . . . 5  |-  ( ( Rel  (⟂G `  G )  /\  A (⟂G `  G
) B )  -> 
( A  e.  _V  /\  B  e.  _V )
)
4138, 39, 40syl2anc 693 . . . 4  |-  ( ph  ->  ( A  e.  _V  /\  B  e.  _V )
)
4241simpld 475 . . 3  |-  ( ph  ->  A  e.  _V )
4341simprd 479 . . 3  |-  ( ph  ->  B  e.  _V )
44 breldmg 5330 . . 3  |-  ( ( A  e.  _V  /\  B  e.  _V  /\  A
(⟂G `  G ) B )  ->  A  e.  dom  (⟂G `  G )
)
4542, 43, 39, 44syl3anc 1326 . 2  |-  ( ph  ->  A  e.  dom  (⟂G `  G ) )
4635, 45sseldd 3604 1  |-  ( ph  ->  A  e.  ran  L
)
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    /\ wa 384    = wceq 1483    e. wcel 1990   A.wral 2912   E.wrex 2913   _Vcvv 3200    i^i cin 3573    C_ wss 3574   class class class wbr 4653   {copab 4712    |-> cmpt 4729    X. cxp 5112   dom cdm 5114   ran crn 5115   Rel wrel 5119   ` cfv 5888   <"cs3 13587  TarskiGcstrkg 25329  LineGclng 25336  ∟Gcrag 25588  ⟂Gcperpg 25590
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-sep 4781  ax-nul 4789  ax-pow 4843  ax-pr 4906  ax-un 6949
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ral 2917  df-rex 2918  df-rab 2921  df-v 3202  df-sbc 3436  df-csb 3534  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-nul 3916  df-if 4087  df-pw 4160  df-sn 4178  df-pr 4180  df-op 4184  df-uni 4437  df-br 4654  df-opab 4713  df-mpt 4730  df-id 5024  df-xp 5120  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-rn 5125  df-iota 5851  df-fun 5890  df-fv 5896  df-perpg 25591
This theorem is referenced by:  footne  25615  footeq  25616  perpdragALT  25619  perpdrag  25620  colperp  25621  midex  25629  opphl  25646  lmieu  25676  lnperpex  25695  trgcopy  25696
  Copyright terms: Public domain W3C validator