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

Theorem lawcos 22210
Description: Law of Cosines. Given three distinct points A, B, and C, prove a relationship between their segment lengths. This theorem is expressed using the complex number plane as a plane, where  F is the signed angle construct (as used in ang180 22208),  X is the distance of line segment BC,  Y is the distance of line segment AC,  Z is the distance of line segment AB, and  O is the signed angle m/_ BCA on the complex plane. We translate triangle ABC to move C to the origin (C-C), B to U=(B-C), and A to V=(A-C), then use lemma lawcoslem1 22209 to prove this algebraically simpler case. The metamath convention is to use a signed angle; in this case the sign doesn't matter because we use the cosine of the angle (see cosneg 13429). The Pythagorean Theorem pythag 22211 is a special case of the law of cosines. The theorem's expression and approach were suggested by Mario Carneiro. This is Metamath 100 proof #94. (Contributed by David A. Wheeler, 12-Jun-2015.)
Hypotheses
Ref Expression
lawcos.1  |-  F  =  ( x  e.  ( CC  \  { 0 } ) ,  y  e.  ( CC  \  { 0 } ) 
|->  ( Im `  ( log `  ( y  /  x ) ) ) )
lawcos.2  |-  X  =  ( abs `  ( B  -  C )
)
lawcos.3  |-  Y  =  ( abs `  ( A  -  C )
)
lawcos.4  |-  Z  =  ( abs `  ( A  -  B )
)
lawcos.5  |-  O  =  ( ( B  -  C ) F ( A  -  C ) )
Assertion
Ref Expression
lawcos  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( Z ^ 2 )  =  ( ( ( X ^ 2 )  +  ( Y ^ 2 ) )  -  (
2  x.  ( ( X  x.  Y )  x.  ( cos `  O
) ) ) ) )
Distinct variable groups:    x, y, A    x, B, y    x, C, y
Allowed substitution hints:    F( x, y)    O( x, y)    X( x, y)    Y( x, y)    Z( x, y)

Proof of Theorem lawcos
StepHypRef Expression
1 subcl 9607 . . . . 5  |-  ( ( A  e.  CC  /\  C  e.  CC )  ->  ( A  -  C
)  e.  CC )
213adant2 1007 . . . 4  |-  ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  ->  ( A  -  C )  e.  CC )
32adantr 465 . . 3  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( A  -  C )  e.  CC )
4 subcl 9607 . . . . 5  |-  ( ( B  e.  CC  /\  C  e.  CC )  ->  ( B  -  C
)  e.  CC )
543adant1 1006 . . . 4  |-  ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  ->  ( B  -  C )  e.  CC )
65adantr 465 . . 3  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( B  -  C )  e.  CC )
7 subeq0 9633 . . . . . . . 8  |-  ( ( A  e.  CC  /\  C  e.  CC )  ->  ( ( A  -  C )  =  0  <-> 
A  =  C ) )
87necon3bid 2641 . . . . . . 7  |-  ( ( A  e.  CC  /\  C  e.  CC )  ->  ( ( A  -  C )  =/=  0  <->  A  =/=  C ) )
98bicomd 201 . . . . . 6  |-  ( ( A  e.  CC  /\  C  e.  CC )  ->  ( A  =/=  C  <->  ( A  -  C )  =/=  0 ) )
1093adant2 1007 . . . . 5  |-  ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  ->  ( A  =/=  C  <->  ( A  -  C )  =/=  0
) )
1110biimpa 484 . . . 4  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  A  =/=  C
)  ->  ( A  -  C )  =/=  0
)
1211adantrr 716 . . 3  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( A  -  C )  =/=  0 )
13 subeq0 9633 . . . . . . . 8  |-  ( ( B  e.  CC  /\  C  e.  CC )  ->  ( ( B  -  C )  =  0  <-> 
B  =  C ) )
1413necon3bid 2641 . . . . . . 7  |-  ( ( B  e.  CC  /\  C  e.  CC )  ->  ( ( B  -  C )  =/=  0  <->  B  =/=  C ) )
1514bicomd 201 . . . . . 6  |-  ( ( B  e.  CC  /\  C  e.  CC )  ->  ( B  =/=  C  <->  ( B  -  C )  =/=  0 ) )
16153adant1 1006 . . . . 5  |-  ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  ->  ( B  =/=  C  <->  ( B  -  C )  =/=  0
) )
1716biimpa 484 . . . 4  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  B  =/=  C
)  ->  ( B  -  C )  =/=  0
)
1817adantrl 715 . . 3  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( B  -  C )  =/=  0 )
193, 6, 12, 18lawcoslem1 22209 . 2  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
( abs `  (
( A  -  C
)  -  ( B  -  C ) ) ) ^ 2 )  =  ( ( ( ( abs `  ( A  -  C )
) ^ 2 )  +  ( ( abs `  ( B  -  C
) ) ^ 2 ) )  -  (
2  x.  ( ( ( abs `  ( A  -  C )
)  x.  ( abs `  ( B  -  C
) ) )  x.  ( ( Re `  ( ( A  -  C )  /  ( B  -  C )
) )  /  ( abs `  ( ( A  -  C )  / 
( B  -  C
) ) ) ) ) ) ) )
20 nnncan2 9644 . . . . . 6  |-  ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  ->  (
( A  -  C
)  -  ( B  -  C ) )  =  ( A  -  B ) )
2120fveq2d 5693 . . . . 5  |-  ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  ->  ( abs `  ( ( A  -  C )  -  ( B  -  C
) ) )  =  ( abs `  ( A  -  B )
) )
22 lawcos.4 . . . . 5  |-  Z  =  ( abs `  ( A  -  B )
)
2321, 22syl6reqr 2492 . . . 4  |-  ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  ->  Z  =  ( abs `  (
( A  -  C
)  -  ( B  -  C ) ) ) )
2423oveq1d 6104 . . 3  |-  ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  ->  ( Z ^ 2 )  =  ( ( abs `  (
( A  -  C
)  -  ( B  -  C ) ) ) ^ 2 ) )
2524adantr 465 . 2  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( Z ^ 2 )  =  ( ( abs `  (
( A  -  C
)  -  ( B  -  C ) ) ) ^ 2 ) )
263abscld 12920 . . . . . . 7  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( abs `  ( A  -  C ) )  e.  RR )
2726recnd 9410 . . . . . 6  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( abs `  ( A  -  C ) )  e.  CC )
2827sqcld 12004 . . . . 5  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
( abs `  ( A  -  C )
) ^ 2 )  e.  CC )
296abscld 12920 . . . . . . 7  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( abs `  ( B  -  C ) )  e.  RR )
3029recnd 9410 . . . . . 6  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( abs `  ( B  -  C ) )  e.  CC )
3130sqcld 12004 . . . . 5  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
( abs `  ( B  -  C )
) ^ 2 )  e.  CC )
3228, 31addcomd 9569 . . . 4  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
( ( abs `  ( A  -  C )
) ^ 2 )  +  ( ( abs `  ( B  -  C
) ) ^ 2 ) )  =  ( ( ( abs `  ( B  -  C )
) ^ 2 )  +  ( ( abs `  ( A  -  C
) ) ^ 2 ) ) )
33 lawcos.2 . . . . . 6  |-  X  =  ( abs `  ( B  -  C )
)
3433oveq1i 6099 . . . . 5  |-  ( X ^ 2 )  =  ( ( abs `  ( B  -  C )
) ^ 2 )
35 lawcos.3 . . . . . 6  |-  Y  =  ( abs `  ( A  -  C )
)
3635oveq1i 6099 . . . . 5  |-  ( Y ^ 2 )  =  ( ( abs `  ( A  -  C )
) ^ 2 )
3734, 36oveq12i 6101 . . . 4  |-  ( ( X ^ 2 )  +  ( Y ^
2 ) )  =  ( ( ( abs `  ( B  -  C
) ) ^ 2 )  +  ( ( abs `  ( A  -  C ) ) ^ 2 ) )
3832, 37syl6reqr 2492 . . 3  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
( X ^ 2 )  +  ( Y ^ 2 ) )  =  ( ( ( abs `  ( A  -  C ) ) ^ 2 )  +  ( ( abs `  ( B  -  C )
) ^ 2 ) ) )
3927, 30mulcomd 9405 . . . . . 6  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
( abs `  ( A  -  C )
)  x.  ( abs `  ( B  -  C
) ) )  =  ( ( abs `  ( B  -  C )
)  x.  ( abs `  ( A  -  C
) ) ) )
4033, 35oveq12i 6101 . . . . . 6  |-  ( X  x.  Y )  =  ( ( abs `  ( B  -  C )
)  x.  ( abs `  ( A  -  C
) ) )
4139, 40syl6reqr 2492 . . . . 5  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( X  x.  Y )  =  ( ( abs `  ( A  -  C
) )  x.  ( abs `  ( B  -  C ) ) ) )
42 lawcos.5 . . . . . . . . 9  |-  O  =  ( ( B  -  C ) F ( A  -  C ) )
4342fveq2i 5692 . . . . . . . 8  |-  ( cos `  O )  =  ( cos `  ( ( B  -  C ) F ( A  -  C ) ) )
44 lawcos.1 . . . . . . . . . 10  |-  F  =  ( x  e.  ( CC  \  { 0 } ) ,  y  e.  ( CC  \  { 0 } ) 
|->  ( Im `  ( log `  ( y  /  x ) ) ) )
4544, 6, 18, 3, 12angvald 22198 . . . . . . . . 9  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
( B  -  C
) F ( A  -  C ) )  =  ( Im `  ( log `  ( ( A  -  C )  /  ( B  -  C ) ) ) ) )
4645fveq2d 5693 . . . . . . . 8  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( cos `  ( ( B  -  C ) F ( A  -  C
) ) )  =  ( cos `  (
Im `  ( log `  ( ( A  -  C )  /  ( B  -  C )
) ) ) ) )
4743, 46syl5eq 2485 . . . . . . 7  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( cos `  O )  =  ( cos `  (
Im `  ( log `  ( ( A  -  C )  /  ( B  -  C )
) ) ) ) )
483, 6, 18divcld 10105 . . . . . . . . . 10  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
( A  -  C
)  /  ( B  -  C ) )  e.  CC )
493, 6, 12, 18divne0d 10121 . . . . . . . . . 10  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
( A  -  C
)  /  ( B  -  C ) )  =/=  0 )
5048, 49logcld 22020 . . . . . . . . 9  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( log `  ( ( A  -  C )  / 
( B  -  C
) ) )  e.  CC )
5150imcld 12682 . . . . . . . 8  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
Im `  ( log `  ( ( A  -  C )  /  ( B  -  C )
) ) )  e.  RR )
52 recosval 13418 . . . . . . . 8  |-  ( ( Im `  ( log `  ( ( A  -  C )  /  ( B  -  C )
) ) )  e.  RR  ->  ( cos `  ( Im `  ( log `  ( ( A  -  C )  / 
( B  -  C
) ) ) ) )  =  ( Re
`  ( exp `  (
_i  x.  ( Im `  ( log `  (
( A  -  C
)  /  ( B  -  C ) ) ) ) ) ) ) )
5351, 52syl 16 . . . . . . 7  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( cos `  ( Im `  ( log `  ( ( A  -  C )  /  ( B  -  C ) ) ) ) )  =  ( Re `  ( exp `  ( _i  x.  (
Im `  ( log `  ( ( A  -  C )  /  ( B  -  C )
) ) ) ) ) ) )
5447, 53eqtrd 2473 . . . . . 6  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( cos `  O )  =  ( Re `  ( exp `  ( _i  x.  ( Im `  ( log `  ( ( A  -  C )  /  ( B  -  C )
) ) ) ) ) ) )
55 efiarg 22054 . . . . . . . 8  |-  ( ( ( ( A  -  C )  /  ( B  -  C )
)  e.  CC  /\  ( ( A  -  C )  /  ( B  -  C )
)  =/=  0 )  ->  ( exp `  (
_i  x.  ( Im `  ( log `  (
( A  -  C
)  /  ( B  -  C ) ) ) ) ) )  =  ( ( ( A  -  C )  /  ( B  -  C ) )  / 
( abs `  (
( A  -  C
)  /  ( B  -  C ) ) ) ) )
5648, 49, 55syl2anc 661 . . . . . . 7  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( exp `  ( _i  x.  ( Im `  ( log `  ( ( A  -  C )  /  ( B  -  C )
) ) ) ) )  =  ( ( ( A  -  C
)  /  ( B  -  C ) )  /  ( abs `  (
( A  -  C
)  /  ( B  -  C ) ) ) ) )
5756fveq2d 5693 . . . . . 6  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
Re `  ( exp `  ( _i  x.  (
Im `  ( log `  ( ( A  -  C )  /  ( B  -  C )
) ) ) ) ) )  =  ( Re `  ( ( ( A  -  C
)  /  ( B  -  C ) )  /  ( abs `  (
( A  -  C
)  /  ( B  -  C ) ) ) ) ) )
5848abscld 12920 . . . . . . 7  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( abs `  ( ( A  -  C )  / 
( B  -  C
) ) )  e.  RR )
5948, 49absne0d 12931 . . . . . . 7  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( abs `  ( ( A  -  C )  / 
( B  -  C
) ) )  =/=  0 )
6058, 48, 59redivd 12716 . . . . . 6  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
Re `  ( (
( A  -  C
)  /  ( B  -  C ) )  /  ( abs `  (
( A  -  C
)  /  ( B  -  C ) ) ) ) )  =  ( ( Re `  ( ( A  -  C )  /  ( B  -  C )
) )  /  ( abs `  ( ( A  -  C )  / 
( B  -  C
) ) ) ) )
6154, 57, 603eqtrd 2477 . . . . 5  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( cos `  O )  =  ( ( Re `  ( ( A  -  C )  /  ( B  -  C )
) )  /  ( abs `  ( ( A  -  C )  / 
( B  -  C
) ) ) ) )
6241, 61oveq12d 6107 . . . 4  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
( X  x.  Y
)  x.  ( cos `  O ) )  =  ( ( ( abs `  ( A  -  C
) )  x.  ( abs `  ( B  -  C ) ) )  x.  ( ( Re
`  ( ( A  -  C )  / 
( B  -  C
) ) )  / 
( abs `  (
( A  -  C
)  /  ( B  -  C ) ) ) ) ) )
6362oveq2d 6105 . . 3  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
2  x.  ( ( X  x.  Y )  x.  ( cos `  O
) ) )  =  ( 2  x.  (
( ( abs `  ( A  -  C )
)  x.  ( abs `  ( B  -  C
) ) )  x.  ( ( Re `  ( ( A  -  C )  /  ( B  -  C )
) )  /  ( abs `  ( ( A  -  C )  / 
( B  -  C
) ) ) ) ) ) )
6438, 63oveq12d 6107 . 2  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  (
( ( X ^
2 )  +  ( Y ^ 2 ) )  -  ( 2  x.  ( ( X  x.  Y )  x.  ( cos `  O
) ) ) )  =  ( ( ( ( abs `  ( A  -  C )
) ^ 2 )  +  ( ( abs `  ( B  -  C
) ) ^ 2 ) )  -  (
2  x.  ( ( ( abs `  ( A  -  C )
)  x.  ( abs `  ( B  -  C
) ) )  x.  ( ( Re `  ( ( A  -  C )  /  ( B  -  C )
) )  /  ( abs `  ( ( A  -  C )  / 
( B  -  C
) ) ) ) ) ) ) )
6519, 25, 643eqtr4d 2483 1  |-  ( ( ( A  e.  CC  /\  B  e.  CC  /\  C  e.  CC )  /\  ( A  =/=  C  /\  B  =/=  C
) )  ->  ( Z ^ 2 )  =  ( ( ( X ^ 2 )  +  ( Y ^ 2 ) )  -  (
2  x.  ( ( X  x.  Y )  x.  ( cos `  O
) ) ) ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 184    /\ wa 369    /\ w3a 965    = wceq 1369    e. wcel 1756    =/= wne 2604    \ cdif 3323   {csn 3875   ` cfv 5416  (class class class)co 6089    e. cmpt2 6091   CCcc 9278   RRcr 9279   0cc0 9280   _ici 9282    + caddc 9283    x. cmul 9285    - cmin 9593    / cdiv 9991   2c2 10369   ^cexp 11863   Recre 12584   Imcim 12585   abscabs 12721   expce 13345   cosccos 13348   logclog 22004
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1591  ax-4 1602  ax-5 1670  ax-6 1708  ax-7 1728  ax-8 1758  ax-9 1760  ax-10 1775  ax-11 1780  ax-12 1792  ax-13 1943  ax-ext 2422  ax-rep 4401  ax-sep 4411  ax-nul 4419  ax-pow 4468  ax-pr 4529  ax-un 6370  ax-inf2 7845  ax-cnex 9336  ax-resscn 9337  ax-1cn 9338  ax-icn 9339  ax-addcl 9340  ax-addrcl 9341  ax-mulcl 9342  ax-mulrcl 9343  ax-mulcom 9344  ax-addass 9345  ax-mulass 9346  ax-distr 9347  ax-i2m1 9348  ax-1ne0 9349  ax-1rid 9350  ax-rnegex 9351  ax-rrecex 9352  ax-cnre 9353  ax-pre-lttri 9354  ax-pre-lttrn 9355  ax-pre-ltadd 9356  ax-pre-mulgt0 9357  ax-pre-sup 9358  ax-addf 9359  ax-mulf 9360
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 966  df-3an 967  df-tru 1372  df-fal 1375  df-ex 1587  df-nf 1590  df-sb 1701  df-eu 2257  df-mo 2258  df-clab 2428  df-cleq 2434  df-clel 2437  df-nfc 2566  df-ne 2606  df-nel 2607  df-ral 2718  df-rex 2719  df-reu 2720  df-rmo 2721  df-rab 2722  df-v 2972  df-sbc 3185  df-csb 3287  df-dif 3329  df-un 3331  df-in 3333  df-ss 3340  df-pss 3342  df-nul 3636  df-if 3790  df-pw 3860  df-sn 3876  df-pr 3878  df-tp 3880  df-op 3882  df-uni 4090  df-int 4127  df-iun 4171  df-iin 4172  df-br 4291  df-opab 4349  df-mpt 4350  df-tr 4384  df-eprel 4630  df-id 4634  df-po 4639  df-so 4640  df-fr 4677  df-se 4678  df-we 4679  df-ord 4720  df-on 4721  df-lim 4722  df-suc 4723  df-xp 4844  df-rel 4845  df-cnv 4846  df-co 4847  df-dm 4848  df-rn 4849  df-res 4850  df-ima 4851  df-iota 5379  df-fun 5418  df-fn 5419  df-f 5420  df-f1 5421  df-fo 5422  df-f1o 5423  df-fv 5424  df-isom 5425  df-riota 6050  df-ov 6092  df-oprab 6093  df-mpt2 6094  df-of 6318  df-om 6475  df-1st 6575  df-2nd 6576  df-supp 6689  df-recs 6830  df-rdg 6864  df-1o 6918  df-2o 6919  df-oadd 6922  df-er 7099  df-map 7214  df-pm 7215  df-ixp 7262  df-en 7309  df-dom 7310  df-sdom 7311  df-fin 7312  df-fsupp 7619  df-fi 7659  df-sup 7689  df-oi 7722  df-card 8107  df-cda 8335  df-pnf 9418  df-mnf 9419  df-xr 9420  df-ltxr 9421  df-le 9422  df-sub 9595  df-neg 9596  df-div 9992  df-nn 10321  df-2 10378  df-3 10379  df-4 10380  df-5 10381  df-6 10382  df-7 10383  df-8 10384  df-9 10385  df-10 10386  df-n0 10578  df-z 10645  df-dec 10754  df-uz 10860  df-q 10952  df-rp 10990  df-xneg 11087  df-xadd 11088  df-xmul 11089  df-ioo 11302  df-ioc 11303  df-ico 11304  df-icc 11305  df-fz 11436  df-fzo 11547  df-fl 11640  df-mod 11707  df-seq 11805  df-exp 11864  df-fac 12050  df-bc 12077  df-hash 12102  df-shft 12554  df-cj 12586  df-re 12587  df-im 12588  df-sqr 12722  df-abs 12723  df-limsup 12947  df-clim 12964  df-rlim 12965  df-sum 13162  df-ef 13351  df-sin 13353  df-cos 13354  df-pi 13356  df-struct 14174  df-ndx 14175  df-slot 14176  df-base 14177  df-sets 14178  df-ress 14179  df-plusg 14249  df-mulr 14250  df-starv 14251  df-sca 14252  df-vsca 14253  df-ip 14254  df-tset 14255  df-ple 14256  df-ds 14258  df-unif 14259  df-hom 14260  df-cco 14261  df-rest 14359  df-topn 14360  df-0g 14378  df-gsum 14379  df-topgen 14380  df-pt 14381  df-prds 14384  df-xrs 14438  df-qtop 14443  df-imas 14444  df-xps 14446  df-mre 14522  df-mrc 14523  df-acs 14525  df-mnd 15413  df-submnd 15463  df-mulg 15546  df-cntz 15833  df-cmn 16277  df-psmet 17807  df-xmet 17808  df-met 17809  df-bl 17810  df-mopn 17811  df-fbas 17812  df-fg 17813  df-cnfld 17817  df-top 18501  df-bases 18503  df-topon 18504  df-topsp 18505  df-cld 18621  df-ntr 18622  df-cls 18623  df-nei 18700  df-lp 18738  df-perf 18739  df-cn 18829  df-cnp 18830  df-haus 18917  df-tx 19133  df-hmeo 19326  df-fil 19417  df-fm 19509  df-flim 19510  df-flf 19511  df-xms 19893  df-ms 19894  df-tms 19895  df-cncf 20452  df-limc 21339  df-dv 21340  df-log 22006
This theorem is referenced by:  pythag  22211  ssscongptld  22218  heron  22231
  Copyright terms: Public domain W3C validator