HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem znnen 8771
Description: The set of integers and the set of natural numbers are equinumerous. Exercise 1 of [Gleason] p. 140.
Assertion
Ref Expression
znnen |- ZZ ~~ NN

Proof of Theorem znnen
StepHypRef Expression
1 zex 7353 . . . 4 |- ZZ e. _V
2 elnn0z 7356 . . . . . . . 8 |- (x e. NN0 <-> (x e. ZZ /\ 0 <_ x))
3 2nn0 7324 . . . . . . . . 9 |- 2 e. NN0
4 nn0mulcl 7332 . . . . . . . . 9 |- ((2 e. NN0 /\ x e. NN0) -> (2 x. x) e. NN0)
53, 4mpan 759 . . . . . . . 8 |- (x e. NN0 -> (2 x. x) e. NN0)
62, 5sylbir 218 . . . . . . 7 |- ((x e. ZZ /\ 0 <_ x) -> (2 x. x) e. NN0)
7 iftrue 2989 . . . . . . . . 9 |- (0 <_ x -> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = (2 x. x))
87eleq1d 1963 . . . . . . . 8 |- (0 <_ x -> (if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) e. NN0 <-> (2 x. x) e. NN0))
98adantl 424 . . . . . . 7 |- ((x e. ZZ /\ 0 <_ x) -> (if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) e. NN0 <-> (2 x. x) e. NN0))
106, 9mpbird 213 . . . . . 6 |- ((x e. ZZ /\ 0 <_ x) -> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) e. NN0)
11 2z 7369 . . . . . . . . . . . 12 |- 2 e. ZZ
12 znegcl 7372 . . . . . . . . . . . 12 |- (2 e. ZZ -> -u2 e. ZZ)
1311, 12ax-mp 7 . . . . . . . . . . 11 |- -u2 e. ZZ
14 zmulcl 7389 . . . . . . . . . . 11 |- ((-u2 e. ZZ /\ x e. ZZ) -> (-u2 x. x) e. ZZ)
1513, 14mpan 759 . . . . . . . . . 10 |- (x e. ZZ -> (-u2 x. x) e. ZZ)
1615adantr 425 . . . . . . . . 9 |- ((x e. ZZ /\ -. 0 <_ x) -> (-u2 x. x) e. ZZ)
17 zre 7348 . . . . . . . . . . 11 |- (x e. ZZ -> x e. RR)
18 renegcl 6600 . . . . . . . . . . . . . 14 |- (x e. RR -> -ux e. RR)
19 2pos 7173 . . . . . . . . . . . . . . 15 |- 0 < 2
20 2re 7163 . . . . . . . . . . . . . . . 16 |- 2 e. RR
21 axmulgt0 6675 . . . . . . . . . . . . . . . 16 |- ((2 e. RR /\ -ux e. RR) -> ((0 < 2 /\ 0 < -ux) -> 0 < (2 x. -ux)))
2220, 21mpan 759 . . . . . . . . . . . . . . 15 |- (-ux e. RR -> ((0 < 2 /\ 0 < -ux) -> 0 < (2 x. -ux)))
2319, 22mpani 762 . . . . . . . . . . . . . 14 |- (-ux e. RR -> (0 < -ux -> 0 < (2 x. -ux)))
2418, 23syl 12 . . . . . . . . . . . . 13 |- (x e. RR -> (0 < -ux -> 0 < (2 x. -ux)))
25 0re 6603 . . . . . . . . . . . . . . 15 |- 0 e. RR
26 ltnle 6680 . . . . . . . . . . . . . . 15 |- ((x e. RR /\ 0 e. RR) -> (x < 0 <-> -. 0 <_ x))
2725, 26mpan2 760 . . . . . . . . . . . . . 14 |- (x e. RR -> (x < 0 <-> -. 0 <_ x))
28 lt0neg1 6857 . . . . . . . . . . . . . 14 |- (x e. RR -> (x < 0 <-> 0 < -ux))
2927, 28bitr3d 589 . . . . . . . . . . . . 13 |- (x e. RR -> (-. 0 <_ x <-> 0 < -ux))
30 mulneg12 6617 . . . . . . . . . . . . . . 15 |- ((2 e. CC /\ x e. CC) -> (-u2 x. x) = (2 x. -ux))
31 2cn 7164 . . . . . . . . . . . . . . 15 |- 2 e. CC
32 recn 6466 . . . . . . . . . . . . . . 15 |- (x e. RR -> x e. CC)
3330, 31, 32sylancr 526 . . . . . . . . . . . . . 14 |- (x e. RR -> (-u2 x. x) = (2 x. -ux))
3433breq2d 3350 . . . . . . . . . . . . 13 |- (x e. RR -> (0 < (-u2 x. x) <-> 0 < (2 x. -ux)))
3524, 29, 343imtr4d 602 . . . . . . . . . . . 12 |- (x e. RR -> (-. 0 <_ x -> 0 < (-u2 x. x)))
36 ltle 6690 . . . . . . . . . . . . 13 |- ((0 e. RR /\ (-u2 x. x) e. RR) -> (0 < (-u2 x. x) -> 0 <_ (-u2 x. x)))
3720renegcli 6576 . . . . . . . . . . . . . 14 |- -u2 e. RR
38 remulcl 6457 . . . . . . . . . . . . . 14 |- ((-u2 e. RR /\ x e. RR) -> (-u2 x. x) e. RR)
3937, 38mpan 759 . . . . . . . . . . . . 13 |- (x e. RR -> (-u2 x. x) e. RR)
4036, 25, 39sylancr 526 . . . . . . . . . . . 12 |- (x e. RR -> (0 < (-u2 x. x) -> 0 <_ (-u2 x. x)))
4135, 40syld 30 . . . . . . . . . . 11 |- (x e. RR -> (-. 0 <_ x -> 0 <_ (-u2 x. x)))
4217, 41syl 12 . . . . . . . . . 10 |- (x e. ZZ -> (-. 0 <_ x -> 0 <_ (-u2 x. x)))
4342imp 377 . . . . . . . . 9 |- ((x e. ZZ /\ -. 0 <_ x) -> 0 <_ (-u2 x. x))
4416, 43jca 310 . . . . . . . 8 |- ((x e. ZZ /\ -. 0 <_ x) -> ((-u2 x. x) e. ZZ /\ 0 <_ (-u2 x. x)))
45 elnn0z 7356 . . . . . . . . 9 |- ((-u2 x. x) e. NN0 <-> ((-u2 x. x) e. ZZ /\ 0 <_ (-u2 x. x)))
4645biimpri 169 . . . . . . . 8 |- (((-u2 x. x) e. ZZ /\ 0 <_ (-u2 x. x)) -> (-u2 x. x) e. NN0)
47 peano2nn0 7333 . . . . . . . 8 |- ((-u2 x. x) e. NN0 -> ((-u2 x. x) + 1) e. NN0)
4844, 46, 473syl 24 . . . . . . 7 |- ((x e. ZZ /\ -. 0 <_ x) -> ((-u2 x. x) + 1) e. NN0)
49 iffalse 2991 . . . . . . . . 9 |- (-. 0 <_ x -> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = ((-u2 x. x) + 1))
5049eleq1d 1963 . . . . . . . 8 |- (-. 0 <_ x -> (if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) e. NN0 <-> ((-u2 x. x) + 1) e. NN0))
5150adantl 424 . . . . . . 7 |- ((x e. ZZ /\ -. 0 <_ x) -> (if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) e. NN0 <-> ((-u2 x. x) + 1) e. NN0))
5248, 51mpbird 213 . . . . . 6 |- ((x e. ZZ /\ -. 0 <_ x) -> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) e. NN0)
5310, 52pm2.61dan 535 . . . . 5 |- (x e. ZZ -> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) e. NN0)
54 iftrue 2989 . . . . . . . . . . 11 |- (0 <_ y -> if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)) = (2 x. y))
557, 54eqeqan12d 1901 . . . . . . . . . 10 |- ((0 <_ x /\ 0 <_ y) -> (if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)) <-> (2 x. x) = (2 x. y)))
56 2ne0 7174 . . . . . . . . . . . . 13 |- 2 =/= 0
5756mulcant2i 6879 . . . . . . . . . . . 12 |- ((x e. CC /\ y e. CC /\ 2 e. CC) -> ((2 x. x) = (2 x. y) <-> x = y))
5831, 57mp3an3 1180 . . . . . . . . . . 11 |- ((x e. CC /\ y e. CC) -> ((2 x. x) = (2 x. y) <-> x = y))
59 zcn 7349 . . . . . . . . . . 11 |- (x e. ZZ -> x e. CC)
60 zcn 7349 . . . . . . . . . . 11 |- (y e. ZZ -> y e. CC)
6158, 59, 60syl2an 503 . . . . . . . . . 10 |- ((x e. ZZ /\ y e. ZZ) -> ((2 x. x) = (2 x. y) <-> x = y))
6255, 61sylan9bb 599 . . . . . . . . 9 |- (((0 <_ x /\ 0 <_ y) /\ (x e. ZZ /\ y e. ZZ)) -> (if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)) <-> x = y))
6362bicomd 580 . . . . . . . 8 |- (((0 <_ x /\ 0 <_ y) /\ (x e. ZZ /\ y e. ZZ)) -> (x = y <-> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1))))
6463ex 402 . . . . . . 7 |- ((0 <_ x /\ 0 <_ y) -> ((x e. ZZ /\ y e. ZZ) -> (x = y <-> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)))))
65 znnenlem 8770 . . . . . . . . 9 |- (((0 <_ x /\ -. 0 <_ y) /\ (x e. ZZ /\ y e. ZZ)) -> (x = y <-> (2 x. x) = ((-u2 x. y) + 1)))
66 iffalse 2991 . . . . . . . . . . 11 |- (-. 0 <_ y -> if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)) = ((-u2 x. y) + 1))
677, 66eqeqan12d 1901 . . . . . . . . . 10 |- ((0 <_ x /\ -. 0 <_ y) -> (if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)) <-> (2 x. x) = ((-u2 x. y) + 1)))
6867adantr 425 . . . . . . . . 9 |- (((0 <_ x /\ -. 0 <_ y) /\ (x e. ZZ /\ y e. ZZ)) -> (if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)) <-> (2 x. x) = ((-u2 x. y) + 1)))
6965, 68bitr4d 590 . . . . . . . 8 |- (((0 <_ x /\ -. 0 <_ y) /\ (x e. ZZ /\ y e. ZZ)) -> (x = y <-> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1))))
7069ex 402 . . . . . . 7 |- ((0 <_ x /\ -. 0 <_ y) -> ((x e. ZZ /\ y e. ZZ) -> (x = y <-> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)))))
71 znnenlem 8770 . . . . . . . . . . . 12 |- (((0 <_ y /\ -. 0 <_ x) /\ (y e. ZZ /\ x e. ZZ)) -> (y = x <-> (2 x. y) = ((-u2 x. x) + 1)))
72 equcom 1488 . . . . . . . . . . . 12 |- (x = y <-> y = x)
73 eqcom 1886 . . . . . . . . . . . 12 |- (((-u2 x. x) + 1) = (2 x. y) <-> (2 x. y) = ((-u2 x. x) + 1))
7471, 72, 733bitr4g 614 . . . . . . . . . . 11 |- (((0 <_ y /\ -. 0 <_ x) /\ (y e. ZZ /\ x e. ZZ)) -> (x = y <-> ((-u2 x. x) + 1) = (2 x. y)))
7574ancom2s 545 . . . . . . . . . 10 |- (((0 <_ y /\ -. 0 <_ x) /\ (x e. ZZ /\ y e. ZZ)) -> (x = y <-> ((-u2 x. x) + 1) = (2 x. y)))
7675ancom1s 548 . . . . . . . . 9 |- (((-. 0 <_ x /\ 0 <_ y) /\ (x e. ZZ /\ y e. ZZ)) -> (x = y <-> ((-u2 x. x) + 1) = (2 x. y)))
7749, 54eqeqan12d 1901 . . . . . . . . . 10 |- ((-. 0 <_ x /\ 0 <_ y) -> (if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)) <-> ((-u2 x. x) + 1) = (2 x. y)))
7877adantr 425 . . . . . . . . 9 |- (((-. 0 <_ x /\ 0 <_ y) /\ (x e. ZZ /\ y e. ZZ)) -> (if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)) <-> ((-u2 x. x) + 1) = (2 x. y)))
7976, 78bitr4d 590 . . . . . . . 8 |- (((-. 0 <_ x /\ 0 <_ y) /\ (x e. ZZ /\ y e. ZZ)) -> (x = y <-> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1))))
8079ex 402 . . . . . . 7 |- ((-. 0 <_ x /\ 0 <_ y) -> ((x e. ZZ /\ y e. ZZ) -> (x = y <-> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)))))
81 ax1cn 6422 . . . . . . . . . . . . 13 |- 1 e. CC
82 addcan2 6508 . . . . . . . . . . . . 13 |- (((-u2 x. x) e. CC /\ (-u2 x. y) e. CC /\ 1 e. CC) -> (((-u2 x. x) + 1) = ((-u2 x. y) + 1) <-> (-u2 x. x) = (-u2 x. y)))
8381, 82mp3an3 1180 . . . . . . . . . . . 12 |- (((-u2 x. x) e. CC /\ (-u2 x. y) e. CC) -> (((-u2 x. x) + 1) = ((-u2 x. y) + 1) <-> (-u2 x. x) = (-u2 x. y)))
8431negcli 6526 . . . . . . . . . . . . 13 |- -u2 e. CC
85 mulcl 6456 . . . . . . . . . . . . 13 |- ((-u2 e. CC /\ x e. CC) -> (-u2 x. x) e. CC)
8684, 85mpan 759 . . . . . . . . . . . 12 |- (x e. CC -> (-u2 x. x) e. CC)
87 mulcl 6456 . . . . . . . . . . . . 13 |- ((-u2 e. CC /\ y e. CC) -> (-u2 x. y) e. CC)
8884, 87mpan 759 . . . . . . . . . . . 12 |- (y e. CC -> (-u2 x. y) e. CC)
8983, 86, 88syl2an 503 . . . . . . . . . . 11 |- ((x e. CC /\ y e. CC) -> (((-u2 x. x) + 1) = ((-u2 x. y) + 1) <-> (-u2 x. x) = (-u2 x. y)))
9031, 56negne0i 6986 . . . . . . . . . . . . 13 |- -u2 =/= 0
9190mulcant2i 6879 . . . . . . . . . . . 12 |- ((x e. CC /\ y e. CC /\ -u2 e. CC) -> ((-u2 x. x) = (-u2 x. y) <-> x = y))
9284, 91mp3an3 1180 . . . . . . . . . . 11 |- ((x e. CC /\ y e. CC) -> ((-u2 x. x) = (-u2 x. y) <-> x = y))
9389, 92bitr2d 588 . . . . . . . . . 10 |- ((x e. CC /\ y e. CC) -> (x = y <-> ((-u2 x. x) + 1) = ((-u2 x. y) + 1)))
9493, 59, 60syl2an 503 . . . . . . . . 9 |- ((x e. ZZ /\ y e. ZZ) -> (x = y <-> ((-u2 x. x) + 1) = ((-u2 x. y) + 1)))
9549, 66eqeqan12d 1901 . . . . . . . . . 10 |- ((-. 0 <_ x /\ -. 0 <_ y) -> (if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)) <-> ((-u2 x. x) + 1) = ((-u2 x. y) + 1)))
9695bicomd 580 . . . . . . . . 9 |- ((-. 0 <_ x /\ -. 0 <_ y) -> (((-u2 x. x) + 1) = ((-u2 x. y) + 1) <-> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1))))
9794, 96sylan9bbr 600 . . . . . . . 8 |- (((-. 0 <_ x /\ -. 0 <_ y) /\ (x e. ZZ /\ y e. ZZ)) -> (x = y <-> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1))))
9897ex 402 . . . . . . 7 |- ((-. 0 <_ x /\ -. 0 <_ y) -> ((x e. ZZ /\ y e. ZZ) -> (x = y <-> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)))))
9964, 70, 80, 984cases 832 . . . . . 6 |- ((x e. ZZ /\ y e. ZZ) -> (x = y <-> if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1))))
10099bicomd 580 . . . . 5 |- ((x e. ZZ /\ y e. ZZ) -> (if(0 <_ x, (2 x. x), ((-u2 x. x) + 1)) = if(0 <_ y, (2 x. y), ((-u2 x. y) + 1)) <-> x = y))
10153, 100dom2 5464 . . . 4 |- (ZZ e. _V -> ZZ ~<_ NN0)
1021, 101ax-mp 7 . . 3 |- ZZ ~<_ NN0
103 nn0ex 7314 . . . 4 |- NN0 e. _V
104 nn0ssz 7361 . . . 4 |- NN0 C_ ZZ
105 ssdomg 5467 . . . 4 |- (NN0 e. _V -> (NN0 C_ ZZ -> NN0 ~<_ ZZ))
106103, 104, 105mp2 54 . . 3 |- NN0 ~<_ ZZ
107 sbth 5520 . . 3 |- ((ZZ ~<_ NN0 /\ NN0 ~<_ ZZ) -> ZZ ~~ NN0)
108102, 106, 107mp2an 761 . 2 |- ZZ ~~ NN0
109 nn0ennn 8766 . 2 |- NN0 ~~ NN
110108, 109entri 5475 1 |- ZZ ~~ NN
Colors of variables: wff set class
Syntax hints:  -. wn 2   -> wi 3   <-> wb 163   /\ wa 240   = wceq 1298   e. wcel 1300  _Vcvv 2292   C_ wss 2593  ifcif 2982   class class class wbr 3338  (class class class)co 4884   ~~ cen 5423   ~<_ cdom 5424  CCcc 6384  RRcr 6385  0cc0 6386  1c1 6387   + caddc 6389   x. cmul 6391  -ucneg 6446   <_ cle 6448  NNcn 6449  NN0cn0 6450  ZZcz 6451   < clt 6653  2c2 7145
This theorem is referenced by:  qnnen 8772
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 1304  ax-gen 1305  ax-8 1306  ax-9 1307  ax-10 1308  ax-11 1309  ax-12 1310  ax-13 1311  ax-14 1312  ax-17 1317  ax-4 1319  ax-5o 1321  ax-6o 1324  ax-9o 1481  ax-10o 1500  ax-16 1580  ax-11o 1588  ax-ext 1865  ax-rep 3428  ax-sep 3438  ax-nul 3445  ax-pow 3481  ax-pr 3524  ax-un 3790  ax-inf2 5731
This theorem depends on definitions:  df-bi 164  df-or 241  df-an 242  df-3or 859  df-3an 860  df-ex 1327  df-sb 1536  df-eu 1775  df-mo 1776  df-clab 1872  df-cleq 1877  df-clel 1880  df-ne 2019  df-nel 2020  df-ral 2109  df-rex 2110  df-reu 2111  df-rab 2112  df-v 2294  df-sbc 2454  df-csb 2541  df-dif 2597  df-un 2600  df-in 2603  df-ss 2605  df-pss 2607  df-nul 2876  df-if 2983  df-pw 3035  df-sn 3049  df-pr 3050  df-tp 3052  df-op 3053  df-uni 3178  df-int 3215  df-iun 3257  df-br 3339  df-opab 3396  df-tr 3412  df-eprel 3583  df-id 3586  df-po 3591  df-so 3604  df-fr 3625  df-we 3644  df-ord 3660  df-on 3661  df-lim 3662  df-suc 3663  df-om 3950  df-xp 4000  df-rel 4001  df-cnv 4002  df-co 4003  df-dm 4004  df-rn 4005  df-res 4006  df-ima 4007  df-fun 4008  df-fn 4009  df-f 4010  df-f1 4011  df-fo 4012  df-f1o 4013  df-fv 4014  df-opr 4886  df-oprab 4887  df-mpt 5006  df-1st 5020  df-2nd 5021  df-iota 5089  df-rdg 5140  df-1o 5177  df-oadd 5179  df-omul 5180  df-er 5318  df-ec 5320  df-qs 5323  df-en 5427  df-dom 5428  df-sdom 5429  df-undef 5556  df-riota 5560  df-ni 6152  df-pli 6153  df-mi 6154  df-lti 6155  df-plpq 6187  df-mpq 6188  df-enq 6189  df-nq 6190  df-plq 6191  df-mq 6192  df-rq 6193  df-ltq 6194  df-1q 6195  df-np 6238  df-1p 6239  df-plp 6240  df-mp 6241  df-ltp 6242  df-plpr 6316  df-mpr 6317  df-enr 6318  df-nr 6319  df-plr 6320  df-mr 6321  df-ltr 6322  df-0r 6323  df-1r 6324  df-m1r 6325  df-c 6392  df-0 6393  df-1 6394  df-i 6395  df-r 6396  df-plus 6397  df-mul 6398  df-lt 6399  df-sub 6511  df-neg 6513  df-pnf 6654  df-mnf 6655  df-xr 6656  df-ltxr 6657  df-le 6658  df-div 6892  df-n 7108  df-2 7154  df-n0 7309  df-z 7345
Copyright terms: Public domain