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

Theorem bitsf1 15785
Description: The bits function is an injection from to 𝒫 ℕ0. It is obviously not a bijection (by Cantor's theorem canth2 8659), and in fact its range is the set of finite and cofinite subsets of 0. (Contributed by Mario Carneiro, 22-Sep-2016.)
Assertion
Ref Expression
bitsf1 bits:ℤ–1-1→𝒫 ℕ0

Proof of Theorem bitsf1
Dummy variables 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 bitsf 15766 . 2 bits:ℤ⟶𝒫 ℕ0
2 simpl 483 . . . . . . . 8 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → 𝑥 ∈ ℤ)
32zcnd 12077 . . . . . . 7 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → 𝑥 ∈ ℂ)
43adantr 481 . . . . . 6 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → 𝑥 ∈ ℂ)
5 simpr 485 . . . . . . . 8 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → 𝑦 ∈ ℤ)
65zcnd 12077 . . . . . . 7 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → 𝑦 ∈ ℂ)
76adantr 481 . . . . . 6 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → 𝑦 ∈ ℂ)
84negcld 10973 . . . . . . 7 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → -𝑥 ∈ ℂ)
97negcld 10973 . . . . . . 7 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → -𝑦 ∈ ℂ)
10 1cnd 10625 . . . . . . 7 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → 1 ∈ ℂ)
11 simprr 769 . . . . . . . . . . 11 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (bits‘𝑥) = (bits‘𝑦))
1211difeq2d 4103 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (ℕ0 ∖ (bits‘𝑥)) = (ℕ0 ∖ (bits‘𝑦)))
13 bitscmp 15777 . . . . . . . . . . 11 (𝑥 ∈ ℤ → (ℕ0 ∖ (bits‘𝑥)) = (bits‘(-𝑥 − 1)))
1413ad2antrr 722 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (ℕ0 ∖ (bits‘𝑥)) = (bits‘(-𝑥 − 1)))
15 bitscmp 15777 . . . . . . . . . . 11 (𝑦 ∈ ℤ → (ℕ0 ∖ (bits‘𝑦)) = (bits‘(-𝑦 − 1)))
1615ad2antlr 723 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (ℕ0 ∖ (bits‘𝑦)) = (bits‘(-𝑦 − 1)))
1712, 14, 163eqtr3d 2869 . . . . . . . . 9 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (bits‘(-𝑥 − 1)) = (bits‘(-𝑦 − 1)))
18 nnm1nn0 11927 . . . . . . . . . . 11 (-𝑥 ∈ ℕ → (-𝑥 − 1) ∈ ℕ0)
1918ad2antrl 724 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (-𝑥 − 1) ∈ ℕ0)
2019fvresd 6687 . . . . . . . . 9 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → ((bits ↾ ℕ0)‘(-𝑥 − 1)) = (bits‘(-𝑥 − 1)))
21 ominf 8719 . . . . . . . . . . . . . . . . 17 ¬ ω ∈ Fin
22 nn0ennn 13337 . . . . . . . . . . . . . . . . . . 19 0 ≈ ℕ
23 nnenom 13338 . . . . . . . . . . . . . . . . . . 19 ℕ ≈ ω
2422, 23entr2i 8553 . . . . . . . . . . . . . . . . . 18 ω ≈ ℕ0
25 enfii 8724 . . . . . . . . . . . . . . . . . 18 ((ℕ0 ∈ Fin ∧ ω ≈ ℕ0) → ω ∈ Fin)
2624, 25mpan2 687 . . . . . . . . . . . . . . . . 17 (ℕ0 ∈ Fin → ω ∈ Fin)
2721, 26mto 198 . . . . . . . . . . . . . . . 16 ¬ ℕ0 ∈ Fin
28 difinf 8777 . . . . . . . . . . . . . . . 16 ((¬ ℕ0 ∈ Fin ∧ (bits‘𝑥) ∈ Fin) → ¬ (ℕ0 ∖ (bits‘𝑥)) ∈ Fin)
2927, 28mpan 686 . . . . . . . . . . . . . . 15 ((bits‘𝑥) ∈ Fin → ¬ (ℕ0 ∖ (bits‘𝑥)) ∈ Fin)
30 bitsfi 15776 . . . . . . . . . . . . . . . . 17 ((-𝑥 − 1) ∈ ℕ0 → (bits‘(-𝑥 − 1)) ∈ Fin)
3119, 30syl 17 . . . . . . . . . . . . . . . 16 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (bits‘(-𝑥 − 1)) ∈ Fin)
3214, 31eqeltrd 2918 . . . . . . . . . . . . . . 15 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (ℕ0 ∖ (bits‘𝑥)) ∈ Fin)
3329, 32nsyl3 140 . . . . . . . . . . . . . 14 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ (bits‘𝑥) ∈ Fin)
3411, 33eqneltrrd 2938 . . . . . . . . . . . . 13 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ (bits‘𝑦) ∈ Fin)
35 bitsfi 15776 . . . . . . . . . . . . 13 (𝑦 ∈ ℕ0 → (bits‘𝑦) ∈ Fin)
3634, 35nsyl 142 . . . . . . . . . . . 12 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ 𝑦 ∈ ℕ0)
375znegcld 12078 . . . . . . . . . . . . . . . 16 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → -𝑦 ∈ ℤ)
38 elznn 11986 . . . . . . . . . . . . . . . . 17 (-𝑦 ∈ ℤ ↔ (-𝑦 ∈ ℝ ∧ (-𝑦 ∈ ℕ ∨ --𝑦 ∈ ℕ0)))
3938simprbi 497 . . . . . . . . . . . . . . . 16 (-𝑦 ∈ ℤ → (-𝑦 ∈ ℕ ∨ --𝑦 ∈ ℕ0))
4037, 39syl 17 . . . . . . . . . . . . . . 15 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (-𝑦 ∈ ℕ ∨ --𝑦 ∈ ℕ0))
416negnegd 10977 . . . . . . . . . . . . . . . . 17 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → --𝑦 = 𝑦)
4241eleq1d 2902 . . . . . . . . . . . . . . . 16 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (--𝑦 ∈ ℕ0𝑦 ∈ ℕ0))
4342orbi2d 911 . . . . . . . . . . . . . . 15 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → ((-𝑦 ∈ ℕ ∨ --𝑦 ∈ ℕ0) ↔ (-𝑦 ∈ ℕ ∨ 𝑦 ∈ ℕ0)))
4440, 43mpbid 233 . . . . . . . . . . . . . 14 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (-𝑦 ∈ ℕ ∨ 𝑦 ∈ ℕ0))
4544adantr 481 . . . . . . . . . . . . 13 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (-𝑦 ∈ ℕ ∨ 𝑦 ∈ ℕ0))
4645ord 860 . . . . . . . . . . . 12 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (¬ -𝑦 ∈ ℕ → 𝑦 ∈ ℕ0))
4736, 46mt3d 150 . . . . . . . . . . 11 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → -𝑦 ∈ ℕ)
48 nnm1nn0 11927 . . . . . . . . . . 11 (-𝑦 ∈ ℕ → (-𝑦 − 1) ∈ ℕ0)
4947, 48syl 17 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (-𝑦 − 1) ∈ ℕ0)
5049fvresd 6687 . . . . . . . . 9 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → ((bits ↾ ℕ0)‘(-𝑦 − 1)) = (bits‘(-𝑦 − 1)))
5117, 20, 503eqtr4d 2871 . . . . . . . 8 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → ((bits ↾ ℕ0)‘(-𝑥 − 1)) = ((bits ↾ ℕ0)‘(-𝑦 − 1)))
52 bitsf1o 15784 . . . . . . . . . . 11 (bits ↾ ℕ0):ℕ01-1-onto→(𝒫 ℕ0 ∩ Fin)
53 f1of1 6611 . . . . . . . . . . 11 ((bits ↾ ℕ0):ℕ01-1-onto→(𝒫 ℕ0 ∩ Fin) → (bits ↾ ℕ0):ℕ01-1→(𝒫 ℕ0 ∩ Fin))
5452, 53ax-mp 5 . . . . . . . . . 10 (bits ↾ ℕ0):ℕ01-1→(𝒫 ℕ0 ∩ Fin)
55 f1fveq 7014 . . . . . . . . . 10 (((bits ↾ ℕ0):ℕ01-1→(𝒫 ℕ0 ∩ Fin) ∧ ((-𝑥 − 1) ∈ ℕ0 ∧ (-𝑦 − 1) ∈ ℕ0)) → (((bits ↾ ℕ0)‘(-𝑥 − 1)) = ((bits ↾ ℕ0)‘(-𝑦 − 1)) ↔ (-𝑥 − 1) = (-𝑦 − 1)))
5654, 55mpan 686 . . . . . . . . 9 (((-𝑥 − 1) ∈ ℕ0 ∧ (-𝑦 − 1) ∈ ℕ0) → (((bits ↾ ℕ0)‘(-𝑥 − 1)) = ((bits ↾ ℕ0)‘(-𝑦 − 1)) ↔ (-𝑥 − 1) = (-𝑦 − 1)))
5719, 49, 56syl2anc 584 . . . . . . . 8 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (((bits ↾ ℕ0)‘(-𝑥 − 1)) = ((bits ↾ ℕ0)‘(-𝑦 − 1)) ↔ (-𝑥 − 1) = (-𝑦 − 1)))
5851, 57mpbid 233 . . . . . . 7 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (-𝑥 − 1) = (-𝑦 − 1))
598, 9, 10, 58subcan2d 11028 . . . . . 6 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → -𝑥 = -𝑦)
604, 7, 59neg11d 10998 . . . . 5 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → 𝑥 = 𝑦)
6160expr 457 . . . 4 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ -𝑥 ∈ ℕ) → ((bits‘𝑥) = (bits‘𝑦) → 𝑥 = 𝑦))
623negnegd 10977 . . . . . . 7 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → --𝑥 = 𝑥)
6362eleq1d 2902 . . . . . 6 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (--𝑥 ∈ ℕ0𝑥 ∈ ℕ0))
6463biimpa 477 . . . . 5 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ --𝑥 ∈ ℕ0) → 𝑥 ∈ ℕ0)
65 simprr 769 . . . . . . . 8 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (bits‘𝑥) = (bits‘𝑦))
66 fvres 6686 . . . . . . . . 9 (𝑥 ∈ ℕ0 → ((bits ↾ ℕ0)‘𝑥) = (bits‘𝑥))
6766ad2antrl 724 . . . . . . . 8 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ((bits ↾ ℕ0)‘𝑥) = (bits‘𝑥))
6815ad2antlr 723 . . . . . . . . . . . . 13 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (ℕ0 ∖ (bits‘𝑦)) = (bits‘(-𝑦 − 1)))
69 bitsfi 15776 . . . . . . . . . . . . . . . 16 (𝑥 ∈ ℕ0 → (bits‘𝑥) ∈ Fin)
7069ad2antrl 724 . . . . . . . . . . . . . . 15 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (bits‘𝑥) ∈ Fin)
7165, 70eqeltrrd 2919 . . . . . . . . . . . . . 14 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (bits‘𝑦) ∈ Fin)
72 difinf 8777 . . . . . . . . . . . . . 14 ((¬ ℕ0 ∈ Fin ∧ (bits‘𝑦) ∈ Fin) → ¬ (ℕ0 ∖ (bits‘𝑦)) ∈ Fin)
7327, 71, 72sylancr 587 . . . . . . . . . . . . 13 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ (ℕ0 ∖ (bits‘𝑦)) ∈ Fin)
7468, 73eqneltrrd 2938 . . . . . . . . . . . 12 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ (bits‘(-𝑦 − 1)) ∈ Fin)
75 bitsfi 15776 . . . . . . . . . . . 12 ((-𝑦 − 1) ∈ ℕ0 → (bits‘(-𝑦 − 1)) ∈ Fin)
7674, 75nsyl 142 . . . . . . . . . . 11 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ (-𝑦 − 1) ∈ ℕ0)
7776, 48nsyl 142 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ -𝑦 ∈ ℕ)
7844adantr 481 . . . . . . . . . . 11 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (-𝑦 ∈ ℕ ∨ 𝑦 ∈ ℕ0))
7978ord 860 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (¬ -𝑦 ∈ ℕ → 𝑦 ∈ ℕ0))
8077, 79mpd 15 . . . . . . . . 9 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → 𝑦 ∈ ℕ0)
8180fvresd 6687 . . . . . . . 8 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ((bits ↾ ℕ0)‘𝑦) = (bits‘𝑦))
8265, 67, 813eqtr4d 2871 . . . . . . 7 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ((bits ↾ ℕ0)‘𝑥) = ((bits ↾ ℕ0)‘𝑦))
83 simprl 767 . . . . . . . 8 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → 𝑥 ∈ ℕ0)
84 f1fveq 7014 . . . . . . . . 9 (((bits ↾ ℕ0):ℕ01-1→(𝒫 ℕ0 ∩ Fin) ∧ (𝑥 ∈ ℕ0𝑦 ∈ ℕ0)) → (((bits ↾ ℕ0)‘𝑥) = ((bits ↾ ℕ0)‘𝑦) ↔ 𝑥 = 𝑦))
8554, 84mpan 686 . . . . . . . 8 ((𝑥 ∈ ℕ0𝑦 ∈ ℕ0) → (((bits ↾ ℕ0)‘𝑥) = ((bits ↾ ℕ0)‘𝑦) ↔ 𝑥 = 𝑦))
8683, 80, 85syl2anc 584 . . . . . . 7 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (((bits ↾ ℕ0)‘𝑥) = ((bits ↾ ℕ0)‘𝑦) ↔ 𝑥 = 𝑦))
8782, 86mpbid 233 . . . . . 6 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → 𝑥 = 𝑦)
8887expr 457 . . . . 5 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ 𝑥 ∈ ℕ0) → ((bits‘𝑥) = (bits‘𝑦) → 𝑥 = 𝑦))
8964, 88syldan 591 . . . 4 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ --𝑥 ∈ ℕ0) → ((bits‘𝑥) = (bits‘𝑦) → 𝑥 = 𝑦))
902znegcld 12078 . . . . 5 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → -𝑥 ∈ ℤ)
91 elznn 11986 . . . . . 6 (-𝑥 ∈ ℤ ↔ (-𝑥 ∈ ℝ ∧ (-𝑥 ∈ ℕ ∨ --𝑥 ∈ ℕ0)))
9291simprbi 497 . . . . 5 (-𝑥 ∈ ℤ → (-𝑥 ∈ ℕ ∨ --𝑥 ∈ ℕ0))
9390, 92syl 17 . . . 4 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (-𝑥 ∈ ℕ ∨ --𝑥 ∈ ℕ0))
9461, 89, 93mpjaodan 954 . . 3 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → ((bits‘𝑥) = (bits‘𝑦) → 𝑥 = 𝑦))
9594rgen2 3208 . 2 𝑥 ∈ ℤ ∀𝑦 ∈ ℤ ((bits‘𝑥) = (bits‘𝑦) → 𝑥 = 𝑦)
96 dff13 7007 . 2 (bits:ℤ–1-1→𝒫 ℕ0 ↔ (bits:ℤ⟶𝒫 ℕ0 ∧ ∀𝑥 ∈ ℤ ∀𝑦 ∈ ℤ ((bits‘𝑥) = (bits‘𝑦) → 𝑥 = 𝑦)))
971, 95, 96mpbir2an 707 1 bits:ℤ–1-1→𝒫 ℕ0
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 207  wa 396  wo 843   = wceq 1530  wcel 2107  wral 3143  cdif 3937  cin 3939  𝒫 cpw 4542   class class class wbr 5063  cres 5556  wf 6348  1-1wf1 6349  1-1-ontowf1o 6351  cfv 6352  (class class class)co 7148  ωcom 7568  cen 8495  Fincfn 8498  cc 10524  cr 10525  1c1 10527  cmin 10859  -cneg 10860  cn 11627  0cn0 11886  cz 11970  bitscbits 15758
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1789  ax-4 1803  ax-5 1904  ax-6 1963  ax-7 2008  ax-8 2109  ax-9 2117  ax-10 2138  ax-11 2153  ax-12 2169  ax-ext 2798  ax-rep 5187  ax-sep 5200  ax-nul 5207  ax-pow 5263  ax-pr 5326  ax-un 7451  ax-inf2 9093  ax-cnex 10582  ax-resscn 10583  ax-1cn 10584  ax-icn 10585  ax-addcl 10586  ax-addrcl 10587  ax-mulcl 10588  ax-mulrcl 10589  ax-mulcom 10590  ax-addass 10591  ax-mulass 10592  ax-distr 10593  ax-i2m1 10594  ax-1ne0 10595  ax-1rid 10596  ax-rnegex 10597  ax-rrecex 10598  ax-cnre 10599  ax-pre-lttri 10600  ax-pre-lttrn 10601  ax-pre-ltadd 10602  ax-pre-mulgt0 10603  ax-pre-sup 10604
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 844  df-3or 1082  df-3an 1083  df-tru 1533  df-fal 1543  df-ex 1774  df-nf 1778  df-sb 2063  df-mo 2620  df-eu 2652  df-clab 2805  df-cleq 2819  df-clel 2898  df-nfc 2968  df-ne 3022  df-nel 3129  df-ral 3148  df-rex 3149  df-reu 3150  df-rmo 3151  df-rab 3152  df-v 3502  df-sbc 3777  df-csb 3888  df-dif 3943  df-un 3945  df-in 3947  df-ss 3956  df-pss 3958  df-nul 4296  df-if 4471  df-pw 4544  df-sn 4565  df-pr 4567  df-tp 4569  df-op 4571  df-uni 4838  df-int 4875  df-iun 4919  df-disj 5029  df-br 5064  df-opab 5126  df-mpt 5144  df-tr 5170  df-id 5459  df-eprel 5464  df-po 5473  df-so 5474  df-fr 5513  df-se 5514  df-we 5515  df-xp 5560  df-rel 5561  df-cnv 5562  df-co 5563  df-dm 5564  df-rn 5565  df-res 5566  df-ima 5567  df-pred 6146  df-ord 6192  df-on 6193  df-lim 6194  df-suc 6195  df-iota 6312  df-fun 6354  df-fn 6355  df-f 6356  df-f1 6357  df-fo 6358  df-f1o 6359  df-fv 6360  df-isom 6361  df-riota 7106  df-ov 7151  df-oprab 7152  df-mpo 7153  df-om 7569  df-1st 7680  df-2nd 7681  df-wrecs 7938  df-recs 7999  df-rdg 8037  df-1o 8093  df-2o 8094  df-oadd 8097  df-er 8279  df-map 8398  df-pm 8399  df-en 8499  df-dom 8500  df-sdom 8501  df-fin 8502  df-sup 8895  df-inf 8896  df-oi 8963  df-dju 9319  df-card 9357  df-pnf 10666  df-mnf 10667  df-xr 10668  df-ltxr 10669  df-le 10670  df-sub 10861  df-neg 10862  df-div 11287  df-nn 11628  df-2 11689  df-3 11690  df-n0 11887  df-xnn0 11957  df-z 11971  df-uz 12233  df-rp 12380  df-fz 12883  df-fzo 13024  df-fl 13152  df-mod 13228  df-seq 13360  df-exp 13420  df-hash 13681  df-cj 14448  df-re 14449  df-im 14450  df-sqrt 14584  df-abs 14585  df-clim 14835  df-sum 15033  df-dvds 15598  df-bits 15761
This theorem is referenced by:  bitsuz  15813  eulerpartlemmf  31519
  Copyright terms: Public domain W3C validator