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

Theorem crt 14179
Description: The Chinese Remainder Theorem: the function that maps  x to its remainder classes  mod  M and  mod  N is 1-1 and onto when  M and  N are coprime. (Contributed by Mario Carneiro, 24-Feb-2014.) (Proof shortened by Mario Carneiro, 2-May-2016.)
Hypotheses
Ref Expression
crt.1  |-  S  =  ( 0..^ ( M  x.  N ) )
crt.2  |-  T  =  ( ( 0..^ M )  X.  ( 0..^ N ) )
crt.3  |-  F  =  ( x  e.  S  |-> 
<. ( x  mod  M
) ,  ( x  mod  N ) >.
)
crt.4  |-  ( ph  ->  ( M  e.  NN  /\  N  e.  NN  /\  ( M  gcd  N )  =  1 ) )
Assertion
Ref Expression
crt  |-  ( ph  ->  F : S -1-1-onto-> T )
Distinct variable groups:    x, M    ph, x    x, S    x, T    x, N
Allowed substitution hint:    F( x)

Proof of Theorem crt
Dummy variables  y 
z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 elfzoelz 11807 . . . . . 6  |-  ( x  e.  ( 0..^ ( M  x.  N ) )  ->  x  e.  ZZ )
2 crt.1 . . . . . 6  |-  S  =  ( 0..^ ( M  x.  N ) )
31, 2eleq2s 2575 . . . . 5  |-  ( x  e.  S  ->  x  e.  ZZ )
4 simpr 461 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ZZ )  ->  x  e.  ZZ )
5 crt.4 . . . . . . . . . 10  |-  ( ph  ->  ( M  e.  NN  /\  N  e.  NN  /\  ( M  gcd  N )  =  1 ) )
65simp1d 1008 . . . . . . . . 9  |-  ( ph  ->  M  e.  NN )
76adantr 465 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ZZ )  ->  M  e.  NN )
8 zmodfzo 11996 . . . . . . . 8  |-  ( ( x  e.  ZZ  /\  M  e.  NN )  ->  ( x  mod  M
)  e.  ( 0..^ M ) )
94, 7, 8syl2anc 661 . . . . . . 7  |-  ( (
ph  /\  x  e.  ZZ )  ->  ( x  mod  M )  e.  ( 0..^ M ) )
105simp2d 1009 . . . . . . . . 9  |-  ( ph  ->  N  e.  NN )
1110adantr 465 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ZZ )  ->  N  e.  NN )
12 zmodfzo 11996 . . . . . . . 8  |-  ( ( x  e.  ZZ  /\  N  e.  NN )  ->  ( x  mod  N
)  e.  ( 0..^ N ) )
134, 11, 12syl2anc 661 . . . . . . 7  |-  ( (
ph  /\  x  e.  ZZ )  ->  ( x  mod  N )  e.  ( 0..^ N ) )
14 opelxpi 5036 . . . . . . 7  |-  ( ( ( x  mod  M
)  e.  ( 0..^ M )  /\  (
x  mod  N )  e.  ( 0..^ N ) )  ->  <. ( x  mod  M ) ,  ( x  mod  N
) >.  e.  ( ( 0..^ M )  X.  ( 0..^ N ) ) )
159, 13, 14syl2anc 661 . . . . . 6  |-  ( (
ph  /\  x  e.  ZZ )  ->  <. (
x  mod  M ) ,  ( x  mod  N ) >.  e.  (
( 0..^ M )  X.  ( 0..^ N ) ) )
16 crt.2 . . . . . 6  |-  T  =  ( ( 0..^ M )  X.  ( 0..^ N ) )
1715, 16syl6eleqr 2566 . . . . 5  |-  ( (
ph  /\  x  e.  ZZ )  ->  <. (
x  mod  M ) ,  ( x  mod  N ) >.  e.  T
)
183, 17sylan2 474 . . . 4  |-  ( (
ph  /\  x  e.  S )  ->  <. (
x  mod  M ) ,  ( x  mod  N ) >.  e.  T
)
19 crt.3 . . . 4  |-  F  =  ( x  e.  S  |-> 
<. ( x  mod  M
) ,  ( x  mod  N ) >.
)
2018, 19fmptd 6055 . . 3  |-  ( ph  ->  F : S --> T )
21 oveq1 6301 . . . . . . . . . 10  |-  ( x  =  y  ->  (
x  mod  M )  =  ( y  mod 
M ) )
22 oveq1 6301 . . . . . . . . . 10  |-  ( x  =  y  ->  (
x  mod  N )  =  ( y  mod 
N ) )
2321, 22opeq12d 4226 . . . . . . . . 9  |-  ( x  =  y  ->  <. (
x  mod  M ) ,  ( x  mod  N ) >.  =  <. ( y  mod  M ) ,  ( y  mod 
N ) >. )
24 opex 4716 . . . . . . . . 9  |-  <. (
y  mod  M ) ,  ( y  mod 
N ) >.  e.  _V
2523, 19, 24fvmpt 5956 . . . . . . . 8  |-  ( y  e.  S  ->  ( F `  y )  =  <. ( y  mod 
M ) ,  ( y  mod  N )
>. )
2625ad2antrl 727 . . . . . . 7  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( F `  y
)  =  <. (
y  mod  M ) ,  ( y  mod 
N ) >. )
27 oveq1 6301 . . . . . . . . . 10  |-  ( x  =  z  ->  (
x  mod  M )  =  ( z  mod 
M ) )
28 oveq1 6301 . . . . . . . . . 10  |-  ( x  =  z  ->  (
x  mod  N )  =  ( z  mod 
N ) )
2927, 28opeq12d 4226 . . . . . . . . 9  |-  ( x  =  z  ->  <. (
x  mod  M ) ,  ( x  mod  N ) >.  =  <. ( z  mod  M ) ,  ( z  mod 
N ) >. )
30 opex 4716 . . . . . . . . 9  |-  <. (
z  mod  M ) ,  ( z  mod 
N ) >.  e.  _V
3129, 19, 30fvmpt 5956 . . . . . . . 8  |-  ( z  e.  S  ->  ( F `  z )  =  <. ( z  mod 
M ) ,  ( z  mod  N )
>. )
3231ad2antll 728 . . . . . . 7  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( F `  z
)  =  <. (
z  mod  M ) ,  ( z  mod 
N ) >. )
3326, 32eqeq12d 2489 . . . . . 6  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( ( F `  y )  =  ( F `  z )  <->  <. ( y  mod  M
) ,  ( y  mod  N ) >.  =  <. ( z  mod 
M ) ,  ( z  mod  N )
>. ) )
34 ovex 6319 . . . . . . 7  |-  ( y  mod  M )  e. 
_V
35 ovex 6319 . . . . . . 7  |-  ( y  mod  N )  e. 
_V
3634, 35opth 4726 . . . . . 6  |-  ( <.
( y  mod  M
) ,  ( y  mod  N ) >.  =  <. ( z  mod 
M ) ,  ( z  mod  N )
>. 
<->  ( ( y  mod 
M )  =  ( z  mod  M )  /\  ( y  mod 
N )  =  ( z  mod  N ) ) )
3733, 36syl6bb 261 . . . . 5  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( ( F `  y )  =  ( F `  z )  <-> 
( ( y  mod 
M )  =  ( z  mod  M )  /\  ( y  mod 
N )  =  ( z  mod  N ) ) ) )
386adantr 465 . . . . . . . 8  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  ->  M  e.  NN )
3938nnzd 10975 . . . . . . 7  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  ->  M  e.  ZZ )
4010adantr 465 . . . . . . . 8  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  ->  N  e.  NN )
4140nnzd 10975 . . . . . . 7  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  ->  N  e.  ZZ )
42 simprl 755 . . . . . . . . . 10  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
y  e.  S )
4342, 2syl6eleq 2565 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
y  e.  ( 0..^ ( M  x.  N
) ) )
44 elfzoelz 11807 . . . . . . . . 9  |-  ( y  e.  ( 0..^ ( M  x.  N ) )  ->  y  e.  ZZ )
4543, 44syl 16 . . . . . . . 8  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
y  e.  ZZ )
46 simprr 756 . . . . . . . . . 10  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
z  e.  S )
4746, 2syl6eleq 2565 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
z  e.  ( 0..^ ( M  x.  N
) ) )
48 elfzoelz 11807 . . . . . . . . 9  |-  ( z  e.  ( 0..^ ( M  x.  N ) )  ->  z  e.  ZZ )
4947, 48syl 16 . . . . . . . 8  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
z  e.  ZZ )
5045, 49zsubcld 10981 . . . . . . 7  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( y  -  z
)  e.  ZZ )
515simp3d 1010 . . . . . . . 8  |-  ( ph  ->  ( M  gcd  N
)  =  1 )
5251adantr 465 . . . . . . 7  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( M  gcd  N
)  =  1 )
53 coprmdvds2 14115 . . . . . . 7  |-  ( ( ( M  e.  ZZ  /\  N  e.  ZZ  /\  ( y  -  z
)  e.  ZZ )  /\  ( M  gcd  N )  =  1 )  ->  ( ( M 
||  ( y  -  z )  /\  N  ||  ( y  -  z
) )  ->  ( M  x.  N )  ||  ( y  -  z
) ) )
5439, 41, 50, 52, 53syl31anc 1231 . . . . . 6  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( ( M  ||  ( y  -  z
)  /\  N  ||  (
y  -  z ) )  ->  ( M  x.  N )  ||  (
y  -  z ) ) )
55 moddvds 13866 . . . . . . . 8  |-  ( ( M  e.  NN  /\  y  e.  ZZ  /\  z  e.  ZZ )  ->  (
( y  mod  M
)  =  ( z  mod  M )  <->  M  ||  (
y  -  z ) ) )
5638, 45, 49, 55syl3anc 1228 . . . . . . 7  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( ( y  mod 
M )  =  ( z  mod  M )  <-> 
M  ||  ( y  -  z ) ) )
57 moddvds 13866 . . . . . . . 8  |-  ( ( N  e.  NN  /\  y  e.  ZZ  /\  z  e.  ZZ )  ->  (
( y  mod  N
)  =  ( z  mod  N )  <->  N  ||  (
y  -  z ) ) )
5840, 45, 49, 57syl3anc 1228 . . . . . . 7  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( ( y  mod 
N )  =  ( z  mod  N )  <-> 
N  ||  ( y  -  z ) ) )
5956, 58anbi12d 710 . . . . . 6  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( ( ( y  mod  M )  =  ( z  mod  M
)  /\  ( y  mod  N )  =  ( z  mod  N ) )  <->  ( M  ||  ( y  -  z
)  /\  N  ||  (
y  -  z ) ) ) )
6045zred 10976 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
y  e.  RR )
6138, 40nnmulcld 10593 . . . . . . . . . 10  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( M  x.  N
)  e.  NN )
6261nnrpd 11265 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( M  x.  N
)  e.  RR+ )
63 elfzole1 11814 . . . . . . . . . 10  |-  ( y  e.  ( 0..^ ( M  x.  N ) )  ->  0  <_  y )
6443, 63syl 16 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
0  <_  y )
65 elfzolt2 11815 . . . . . . . . . 10  |-  ( y  e.  ( 0..^ ( M  x.  N ) )  ->  y  <  ( M  x.  N ) )
6643, 65syl 16 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
y  <  ( M  x.  N ) )
67 modid 11998 . . . . . . . . 9  |-  ( ( ( y  e.  RR  /\  ( M  x.  N
)  e.  RR+ )  /\  ( 0  <_  y  /\  y  <  ( M  x.  N ) ) )  ->  ( y  mod  ( M  x.  N
) )  =  y )
6860, 62, 64, 66, 67syl22anc 1229 . . . . . . . 8  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( y  mod  ( M  x.  N )
)  =  y )
6949zred 10976 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
z  e.  RR )
70 elfzole1 11814 . . . . . . . . . 10  |-  ( z  e.  ( 0..^ ( M  x.  N ) )  ->  0  <_  z )
7147, 70syl 16 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
0  <_  z )
72 elfzolt2 11815 . . . . . . . . . 10  |-  ( z  e.  ( 0..^ ( M  x.  N ) )  ->  z  <  ( M  x.  N ) )
7347, 72syl 16 . . . . . . . . 9  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
z  <  ( M  x.  N ) )
74 modid 11998 . . . . . . . . 9  |-  ( ( ( z  e.  RR  /\  ( M  x.  N
)  e.  RR+ )  /\  ( 0  <_  z  /\  z  <  ( M  x.  N ) ) )  ->  ( z  mod  ( M  x.  N
) )  =  z )
7569, 62, 71, 73, 74syl22anc 1229 . . . . . . . 8  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( z  mod  ( M  x.  N )
)  =  z )
7668, 75eqeq12d 2489 . . . . . . 7  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( ( y  mod  ( M  x.  N
) )  =  ( z  mod  ( M  x.  N ) )  <-> 
y  =  z ) )
77 moddvds 13866 . . . . . . . 8  |-  ( ( ( M  x.  N
)  e.  NN  /\  y  e.  ZZ  /\  z  e.  ZZ )  ->  (
( y  mod  ( M  x.  N )
)  =  ( z  mod  ( M  x.  N ) )  <->  ( M  x.  N )  ||  (
y  -  z ) ) )
7861, 45, 49, 77syl3anc 1228 . . . . . . 7  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( ( y  mod  ( M  x.  N
) )  =  ( z  mod  ( M  x.  N ) )  <-> 
( M  x.  N
)  ||  ( y  -  z ) ) )
7976, 78bitr3d 255 . . . . . 6  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( y  =  z  <-> 
( M  x.  N
)  ||  ( y  -  z ) ) )
8054, 59, 793imtr4d 268 . . . . 5  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( ( ( y  mod  M )  =  ( z  mod  M
)  /\  ( y  mod  N )  =  ( z  mod  N ) )  ->  y  =  z ) )
8137, 80sylbid 215 . . . 4  |-  ( (
ph  /\  ( y  e.  S  /\  z  e.  S ) )  -> 
( ( F `  y )  =  ( F `  z )  ->  y  =  z ) )
8281ralrimivva 2888 . . 3  |-  ( ph  ->  A. y  e.  S  A. z  e.  S  ( ( F `  y )  =  ( F `  z )  ->  y  =  z ) )
83 dff13 6164 . . 3  |-  ( F : S -1-1-> T  <->  ( F : S --> T  /\  A. y  e.  S  A. z  e.  S  (
( F `  y
)  =  ( F `
 z )  -> 
y  =  z ) ) )
8420, 82, 83sylanbrc 664 . 2  |-  ( ph  ->  F : S -1-1-> T
)
85 nnnn0 10812 . . . . . 6  |-  ( M  e.  NN  ->  M  e.  NN0 )
86 nnnn0 10812 . . . . . 6  |-  ( N  e.  NN  ->  N  e.  NN0 )
87 nn0mulcl 10842 . . . . . . . . 9  |-  ( ( M  e.  NN0  /\  N  e.  NN0 )  -> 
( M  x.  N
)  e.  NN0 )
88 hashfzo0 12463 . . . . . . . . 9  |-  ( ( M  x.  N )  e.  NN0  ->  ( # `  ( 0..^ ( M  x.  N ) ) )  =  ( M  x.  N ) )
8987, 88syl 16 . . . . . . . 8  |-  ( ( M  e.  NN0  /\  N  e.  NN0 )  -> 
( # `  ( 0..^ ( M  x.  N
) ) )  =  ( M  x.  N
) )
90 fzofi 12062 . . . . . . . . . 10  |-  ( 0..^ M )  e.  Fin
91 fzofi 12062 . . . . . . . . . 10  |-  ( 0..^ N )  e.  Fin
92 hashxp 12468 . . . . . . . . . 10  |-  ( ( ( 0..^ M )  e.  Fin  /\  (
0..^ N )  e. 
Fin )  ->  ( # `
 ( ( 0..^ M )  X.  (
0..^ N ) ) )  =  ( (
# `  ( 0..^ M ) )  x.  ( # `  (
0..^ N ) ) ) )
9390, 91, 92mp2an 672 . . . . . . . . 9  |-  ( # `  ( ( 0..^ M )  X.  ( 0..^ N ) ) )  =  ( ( # `  ( 0..^ M ) )  x.  ( # `  ( 0..^ N ) ) )
94 hashfzo0 12463 . . . . . . . . . 10  |-  ( M  e.  NN0  ->  ( # `  ( 0..^ M ) )  =  M )
95 hashfzo0 12463 . . . . . . . . . 10  |-  ( N  e.  NN0  ->  ( # `  ( 0..^ N ) )  =  N )
9694, 95oveqan12d 6313 . . . . . . . . 9  |-  ( ( M  e.  NN0  /\  N  e.  NN0 )  -> 
( ( # `  (
0..^ M ) )  x.  ( # `  (
0..^ N ) ) )  =  ( M  x.  N ) )
9793, 96syl5eq 2520 . . . . . . . 8  |-  ( ( M  e.  NN0  /\  N  e.  NN0 )  -> 
( # `  ( ( 0..^ M )  X.  ( 0..^ N ) ) )  =  ( M  x.  N ) )
9889, 97eqtr4d 2511 . . . . . . 7  |-  ( ( M  e.  NN0  /\  N  e.  NN0 )  -> 
( # `  ( 0..^ ( M  x.  N
) ) )  =  ( # `  (
( 0..^ M )  X.  ( 0..^ N ) ) ) )
99 fzofi 12062 . . . . . . . 8  |-  ( 0..^ ( M  x.  N
) )  e.  Fin
100 xpfi 7801 . . . . . . . . 9  |-  ( ( ( 0..^ M )  e.  Fin  /\  (
0..^ N )  e. 
Fin )  ->  (
( 0..^ M )  X.  ( 0..^ N ) )  e.  Fin )
10190, 91, 100mp2an 672 . . . . . . . 8  |-  ( ( 0..^ M )  X.  ( 0..^ N ) )  e.  Fin
102 hashen 12398 . . . . . . . 8  |-  ( ( ( 0..^ ( M  x.  N ) )  e.  Fin  /\  (
( 0..^ M )  X.  ( 0..^ N ) )  e.  Fin )  ->  ( ( # `  ( 0..^ ( M  x.  N ) ) )  =  ( # `  ( ( 0..^ M )  X.  ( 0..^ N ) ) )  <-> 
( 0..^ ( M  x.  N ) ) 
~~  ( ( 0..^ M )  X.  (
0..^ N ) ) ) )
10399, 101, 102mp2an 672 . . . . . . 7  |-  ( (
# `  ( 0..^ ( M  x.  N
) ) )  =  ( # `  (
( 0..^ M )  X.  ( 0..^ N ) ) )  <->  ( 0..^ ( M  x.  N
) )  ~~  (
( 0..^ M )  X.  ( 0..^ N ) ) )
10498, 103sylib 196 . . . . . 6  |-  ( ( M  e.  NN0  /\  N  e.  NN0 )  -> 
( 0..^ ( M  x.  N ) ) 
~~  ( ( 0..^ M )  X.  (
0..^ N ) ) )
10585, 86, 104syl2an 477 . . . . 5  |-  ( ( M  e.  NN  /\  N  e.  NN )  ->  ( 0..^ ( M  x.  N ) ) 
~~  ( ( 0..^ M )  X.  (
0..^ N ) ) )
1066, 10, 105syl2anc 661 . . . 4  |-  ( ph  ->  ( 0..^ ( M  x.  N ) ) 
~~  ( ( 0..^ M )  X.  (
0..^ N ) ) )
107106, 2, 163brtr4g 4484 . . 3  |-  ( ph  ->  S  ~~  T )
10816, 101eqeltri 2551 . . 3  |-  T  e. 
Fin
109 f1finf1o 7756 . . 3  |-  ( ( S  ~~  T  /\  T  e.  Fin )  ->  ( F : S -1-1-> T  <-> 
F : S -1-1-onto-> T ) )
110107, 108, 109sylancl 662 . 2  |-  ( ph  ->  ( F : S -1-1-> T  <-> 
F : S -1-1-onto-> T ) )
11184, 110mpbid 210 1  |-  ( ph  ->  F : S -1-1-onto-> T )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 184    /\ wa 369    /\ w3a 973    = wceq 1379    e. wcel 1767   A.wral 2817   <.cop 4038   class class class wbr 4452    |-> cmpt 4510    X. cxp 5002   -->wf 5589   -1-1->wf1 5590   -1-1-onto->wf1o 5592   ` cfv 5593  (class class class)co 6294    ~~ cen 7523   Fincfn 7526   RRcr 9501   0cc0 9502   1c1 9503    x. cmul 9507    < clt 9638    <_ cle 9639    - cmin 9815   NNcn 10546   NN0cn0 10805   ZZcz 10874   RR+crp 11230  ..^cfzo 11802    mod cmo 11974   #chash 12383    || cdivides 13859    gcd cgcd 14015
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1601  ax-4 1612  ax-5 1680  ax-6 1719  ax-7 1739  ax-8 1769  ax-9 1771  ax-10 1786  ax-11 1791  ax-12 1803  ax-13 1968  ax-ext 2445  ax-rep 4563  ax-sep 4573  ax-nul 4581  ax-pow 4630  ax-pr 4691  ax-un 6586  ax-cnex 9558  ax-resscn 9559  ax-1cn 9560  ax-icn 9561  ax-addcl 9562  ax-addrcl 9563  ax-mulcl 9564  ax-mulrcl 9565  ax-mulcom 9566  ax-addass 9567  ax-mulass 9568  ax-distr 9569  ax-i2m1 9570  ax-1ne0 9571  ax-1rid 9572  ax-rnegex 9573  ax-rrecex 9574  ax-cnre 9575  ax-pre-lttri 9576  ax-pre-lttrn 9577  ax-pre-ltadd 9578  ax-pre-mulgt0 9579  ax-pre-sup 9580
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 974  df-3an 975  df-tru 1382  df-ex 1597  df-nf 1600  df-sb 1712  df-eu 2279  df-mo 2280  df-clab 2453  df-cleq 2459  df-clel 2462  df-nfc 2617  df-ne 2664  df-nel 2665  df-ral 2822  df-rex 2823  df-reu 2824  df-rmo 2825  df-rab 2826  df-v 3120  df-sbc 3337  df-csb 3441  df-dif 3484  df-un 3486  df-in 3488  df-ss 3495  df-pss 3497  df-nul 3791  df-if 3945  df-pw 4017  df-sn 4033  df-pr 4035  df-tp 4037  df-op 4039  df-uni 4251  df-int 4288  df-iun 4332  df-br 4453  df-opab 4511  df-mpt 4512  df-tr 4546  df-eprel 4796  df-id 4800  df-po 4805  df-so 4806  df-fr 4843  df-we 4845  df-ord 4886  df-on 4887  df-lim 4888  df-suc 4889  df-xp 5010  df-rel 5011  df-cnv 5012  df-co 5013  df-dm 5014  df-rn 5015  df-res 5016  df-ima 5017  df-iota 5556  df-fun 5595  df-fn 5596  df-f 5597  df-f1 5598  df-fo 5599  df-f1o 5600  df-fv 5601  df-riota 6255  df-ov 6297  df-oprab 6298  df-mpt2 6299  df-om 6695  df-1st 6794  df-2nd 6795  df-recs 7052  df-rdg 7086  df-1o 7140  df-oadd 7144  df-er 7321  df-map 7432  df-en 7527  df-dom 7528  df-sdom 7529  df-fin 7530  df-sup 7911  df-card 8330  df-cda 8558  df-pnf 9640  df-mnf 9641  df-xr 9642  df-ltxr 9643  df-le 9644  df-sub 9817  df-neg 9818  df-div 10217  df-nn 10547  df-2 10604  df-3 10605  df-n0 10806  df-z 10875  df-uz 11093  df-rp 11231  df-fz 11683  df-fzo 11803  df-fl 11907  df-mod 11975  df-seq 12086  df-exp 12145  df-hash 12384  df-cj 12907  df-re 12908  df-im 12909  df-sqrt 13043  df-abs 13044  df-dvds 13860  df-gcd 14016
This theorem is referenced by:  phimullem  14180
  Copyright terms: Public domain W3C validator