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

Theorem bitsf1 15397
Description: The bits function is an injection from to 𝒫 ℕ0. It is obviously not a bijection (by Cantor's theorem canth2 8290), 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 15378 . 2 bits:ℤ⟶𝒫 ℕ0
2 simpl 469 . . . . . . . 8 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → 𝑥 ∈ ℤ)
32zcnd 11707 . . . . . . 7 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → 𝑥 ∈ ℂ)
43adantr 467 . . . . . 6 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → 𝑥 ∈ ℂ)
5 simpr 472 . . . . . . . 8 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → 𝑦 ∈ ℤ)
65zcnd 11707 . . . . . . 7 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → 𝑦 ∈ ℂ)
76adantr 467 . . . . . 6 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → 𝑦 ∈ ℂ)
84negcld 10602 . . . . . . 7 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → -𝑥 ∈ ℂ)
97negcld 10602 . . . . . . 7 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → -𝑦 ∈ ℂ)
10 1cnd 10279 . . . . . . 7 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → 1 ∈ ℂ)
11 simprr 778 . . . . . . . . . . 11 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (bits‘𝑥) = (bits‘𝑦))
1211difeq2d 3886 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (ℕ0 ∖ (bits‘𝑥)) = (ℕ0 ∖ (bits‘𝑦)))
13 bitscmp 15389 . . . . . . . . . . 11 (𝑥 ∈ ℤ → (ℕ0 ∖ (bits‘𝑥)) = (bits‘(-𝑥 − 1)))
1413ad2antrr 706 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (ℕ0 ∖ (bits‘𝑥)) = (bits‘(-𝑥 − 1)))
15 bitscmp 15389 . . . . . . . . . . 11 (𝑦 ∈ ℤ → (ℕ0 ∖ (bits‘𝑦)) = (bits‘(-𝑦 − 1)))
1615ad2antlr 707 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (ℕ0 ∖ (bits‘𝑦)) = (bits‘(-𝑦 − 1)))
1712, 14, 163eqtr3d 2816 . . . . . . . . 9 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (bits‘(-𝑥 − 1)) = (bits‘(-𝑦 − 1)))
18 nnm1nn0 11558 . . . . . . . . . . 11 (-𝑥 ∈ ℕ → (-𝑥 − 1) ∈ ℕ0)
1918ad2antrl 708 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (-𝑥 − 1) ∈ ℕ0)
20 fvres 6365 . . . . . . . . . 10 ((-𝑥 − 1) ∈ ℕ0 → ((bits ↾ ℕ0)‘(-𝑥 − 1)) = (bits‘(-𝑥 − 1)))
2119, 20syl 17 . . . . . . . . 9 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → ((bits ↾ ℕ0)‘(-𝑥 − 1)) = (bits‘(-𝑥 − 1)))
22 ominf 8349 . . . . . . . . . . . . . . . . 17 ¬ ω ∈ Fin
23 nn0ennn 13008 . . . . . . . . . . . . . . . . . . 19 0 ≈ ℕ
24 nnenom 13009 . . . . . . . . . . . . . . . . . . 19 ℕ ≈ ω
2523, 24entr2i 8185 . . . . . . . . . . . . . . . . . 18 ω ≈ ℕ0
26 enfii 8354 . . . . . . . . . . . . . . . . . 18 ((ℕ0 ∈ Fin ∧ ω ≈ ℕ0) → ω ∈ Fin)
2725, 26mpan2 672 . . . . . . . . . . . . . . . . 17 (ℕ0 ∈ Fin → ω ∈ Fin)
2822, 27mto 188 . . . . . . . . . . . . . . . 16 ¬ ℕ0 ∈ Fin
29 difinf 8407 . . . . . . . . . . . . . . . 16 ((¬ ℕ0 ∈ Fin ∧ (bits‘𝑥) ∈ Fin) → ¬ (ℕ0 ∖ (bits‘𝑥)) ∈ Fin)
3028, 29mpan 671 . . . . . . . . . . . . . . 15 ((bits‘𝑥) ∈ Fin → ¬ (ℕ0 ∖ (bits‘𝑥)) ∈ Fin)
31 bitsfi 15388 . . . . . . . . . . . . . . . . 17 ((-𝑥 − 1) ∈ ℕ0 → (bits‘(-𝑥 − 1)) ∈ Fin)
3219, 31syl 17 . . . . . . . . . . . . . . . 16 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (bits‘(-𝑥 − 1)) ∈ Fin)
3314, 32eqeltrd 2853 . . . . . . . . . . . . . . 15 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (ℕ0 ∖ (bits‘𝑥)) ∈ Fin)
3430, 33nsyl3 135 . . . . . . . . . . . . . 14 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ (bits‘𝑥) ∈ Fin)
3511, 34eqneltrrd 2873 . . . . . . . . . . . . 13 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ (bits‘𝑦) ∈ Fin)
36 bitsfi 15388 . . . . . . . . . . . . 13 (𝑦 ∈ ℕ0 → (bits‘𝑦) ∈ Fin)
3735, 36nsyl 137 . . . . . . . . . . . 12 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ 𝑦 ∈ ℕ0)
385znegcld 11708 . . . . . . . . . . . . . . . 16 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → -𝑦 ∈ ℤ)
39 elznn 11617 . . . . . . . . . . . . . . . . 17 (-𝑦 ∈ ℤ ↔ (-𝑦 ∈ ℝ ∧ (-𝑦 ∈ ℕ ∨ --𝑦 ∈ ℕ0)))
4039simprbi 485 . . . . . . . . . . . . . . . 16 (-𝑦 ∈ ℤ → (-𝑦 ∈ ℕ ∨ --𝑦 ∈ ℕ0))
4138, 40syl 17 . . . . . . . . . . . . . . 15 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (-𝑦 ∈ ℕ ∨ --𝑦 ∈ ℕ0))
426negnegd 10606 . . . . . . . . . . . . . . . . 17 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → --𝑦 = 𝑦)
4342eleq1d 2838 . . . . . . . . . . . . . . . 16 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (--𝑦 ∈ ℕ0𝑦 ∈ ℕ0))
4443orbi2d 928 . . . . . . . . . . . . . . 15 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → ((-𝑦 ∈ ℕ ∨ --𝑦 ∈ ℕ0) ↔ (-𝑦 ∈ ℕ ∨ 𝑦 ∈ ℕ0)))
4541, 44mpbid 223 . . . . . . . . . . . . . 14 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (-𝑦 ∈ ℕ ∨ 𝑦 ∈ ℕ0))
4645adantr 467 . . . . . . . . . . . . 13 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (-𝑦 ∈ ℕ ∨ 𝑦 ∈ ℕ0))
4746ord 880 . . . . . . . . . . . 12 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (¬ -𝑦 ∈ ℕ → 𝑦 ∈ ℕ0))
4837, 47mt3d 142 . . . . . . . . . . 11 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → -𝑦 ∈ ℕ)
49 nnm1nn0 11558 . . . . . . . . . . 11 (-𝑦 ∈ ℕ → (-𝑦 − 1) ∈ ℕ0)
5048, 49syl 17 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (-𝑦 − 1) ∈ ℕ0)
51 fvres 6365 . . . . . . . . . 10 ((-𝑦 − 1) ∈ ℕ0 → ((bits ↾ ℕ0)‘(-𝑦 − 1)) = (bits‘(-𝑦 − 1)))
5250, 51syl 17 . . . . . . . . 9 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → ((bits ↾ ℕ0)‘(-𝑦 − 1)) = (bits‘(-𝑦 − 1)))
5317, 21, 523eqtr4d 2818 . . . . . . . 8 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → ((bits ↾ ℕ0)‘(-𝑥 − 1)) = ((bits ↾ ℕ0)‘(-𝑦 − 1)))
54 bitsf1o 15396 . . . . . . . . . . 11 (bits ↾ ℕ0):ℕ01-1-onto→(𝒫 ℕ0 ∩ Fin)
55 f1of1 6292 . . . . . . . . . . 11 ((bits ↾ ℕ0):ℕ01-1-onto→(𝒫 ℕ0 ∩ Fin) → (bits ↾ ℕ0):ℕ01-1→(𝒫 ℕ0 ∩ Fin))
5654, 55ax-mp 5 . . . . . . . . . 10 (bits ↾ ℕ0):ℕ01-1→(𝒫 ℕ0 ∩ Fin)
57 f1fveq 6681 . . . . . . . . . 10 (((bits ↾ ℕ0):ℕ01-1→(𝒫 ℕ0 ∩ Fin) ∧ ((-𝑥 − 1) ∈ ℕ0 ∧ (-𝑦 − 1) ∈ ℕ0)) → (((bits ↾ ℕ0)‘(-𝑥 − 1)) = ((bits ↾ ℕ0)‘(-𝑦 − 1)) ↔ (-𝑥 − 1) = (-𝑦 − 1)))
5856, 57mpan 671 . . . . . . . . 9 (((-𝑥 − 1) ∈ ℕ0 ∧ (-𝑦 − 1) ∈ ℕ0) → (((bits ↾ ℕ0)‘(-𝑥 − 1)) = ((bits ↾ ℕ0)‘(-𝑦 − 1)) ↔ (-𝑥 − 1) = (-𝑦 − 1)))
5919, 50, 58syl2anc 574 . . . . . . . 8 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (((bits ↾ ℕ0)‘(-𝑥 − 1)) = ((bits ↾ ℕ0)‘(-𝑦 − 1)) ↔ (-𝑥 − 1) = (-𝑦 − 1)))
6053, 59mpbid 223 . . . . . . 7 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → (-𝑥 − 1) = (-𝑦 − 1))
618, 9, 10, 60subcan2d 10657 . . . . . 6 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → -𝑥 = -𝑦)
624, 7, 61neg11d 10627 . . . . 5 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (-𝑥 ∈ ℕ ∧ (bits‘𝑥) = (bits‘𝑦))) → 𝑥 = 𝑦)
6362expr 445 . . . 4 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ -𝑥 ∈ ℕ) → ((bits‘𝑥) = (bits‘𝑦) → 𝑥 = 𝑦))
643negnegd 10606 . . . . . . 7 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → --𝑥 = 𝑥)
6564eleq1d 2838 . . . . . 6 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (--𝑥 ∈ ℕ0𝑥 ∈ ℕ0))
6665biimpa 463 . . . . 5 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ --𝑥 ∈ ℕ0) → 𝑥 ∈ ℕ0)
67 simprr 778 . . . . . . . 8 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (bits‘𝑥) = (bits‘𝑦))
68 fvres 6365 . . . . . . . . 9 (𝑥 ∈ ℕ0 → ((bits ↾ ℕ0)‘𝑥) = (bits‘𝑥))
6968ad2antrl 708 . . . . . . . 8 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ((bits ↾ ℕ0)‘𝑥) = (bits‘𝑥))
7015ad2antlr 707 . . . . . . . . . . . . 13 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (ℕ0 ∖ (bits‘𝑦)) = (bits‘(-𝑦 − 1)))
71 bitsfi 15388 . . . . . . . . . . . . . . . 16 (𝑥 ∈ ℕ0 → (bits‘𝑥) ∈ Fin)
7271ad2antrl 708 . . . . . . . . . . . . . . 15 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (bits‘𝑥) ∈ Fin)
7367, 72eqeltrrd 2854 . . . . . . . . . . . . . 14 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (bits‘𝑦) ∈ Fin)
74 difinf 8407 . . . . . . . . . . . . . 14 ((¬ ℕ0 ∈ Fin ∧ (bits‘𝑦) ∈ Fin) → ¬ (ℕ0 ∖ (bits‘𝑦)) ∈ Fin)
7528, 73, 74sylancr 576 . . . . . . . . . . . . 13 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ (ℕ0 ∖ (bits‘𝑦)) ∈ Fin)
7670, 75eqneltrrd 2873 . . . . . . . . . . . 12 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ (bits‘(-𝑦 − 1)) ∈ Fin)
77 bitsfi 15388 . . . . . . . . . . . 12 ((-𝑦 − 1) ∈ ℕ0 → (bits‘(-𝑦 − 1)) ∈ Fin)
7876, 77nsyl 137 . . . . . . . . . . 11 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ (-𝑦 − 1) ∈ ℕ0)
7978, 49nsyl 137 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ¬ -𝑦 ∈ ℕ)
8045adantr 467 . . . . . . . . . . 11 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (-𝑦 ∈ ℕ ∨ 𝑦 ∈ ℕ0))
8180ord 880 . . . . . . . . . 10 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (¬ -𝑦 ∈ ℕ → 𝑦 ∈ ℕ0))
8279, 81mpd 15 . . . . . . . . 9 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → 𝑦 ∈ ℕ0)
83 fvres 6365 . . . . . . . . 9 (𝑦 ∈ ℕ0 → ((bits ↾ ℕ0)‘𝑦) = (bits‘𝑦))
8482, 83syl 17 . . . . . . . 8 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ((bits ↾ ℕ0)‘𝑦) = (bits‘𝑦))
8567, 69, 843eqtr4d 2818 . . . . . . 7 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → ((bits ↾ ℕ0)‘𝑥) = ((bits ↾ ℕ0)‘𝑦))
86 simprl 776 . . . . . . . 8 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → 𝑥 ∈ ℕ0)
87 f1fveq 6681 . . . . . . . . 9 (((bits ↾ ℕ0):ℕ01-1→(𝒫 ℕ0 ∩ Fin) ∧ (𝑥 ∈ ℕ0𝑦 ∈ ℕ0)) → (((bits ↾ ℕ0)‘𝑥) = ((bits ↾ ℕ0)‘𝑦) ↔ 𝑥 = 𝑦))
8856, 87mpan 671 . . . . . . . 8 ((𝑥 ∈ ℕ0𝑦 ∈ ℕ0) → (((bits ↾ ℕ0)‘𝑥) = ((bits ↾ ℕ0)‘𝑦) ↔ 𝑥 = 𝑦))
8986, 82, 88syl2anc 574 . . . . . . 7 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → (((bits ↾ ℕ0)‘𝑥) = ((bits ↾ ℕ0)‘𝑦) ↔ 𝑥 = 𝑦))
9085, 89mpbid 223 . . . . . 6 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ (𝑥 ∈ ℕ0 ∧ (bits‘𝑥) = (bits‘𝑦))) → 𝑥 = 𝑦)
9190expr 445 . . . . 5 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ 𝑥 ∈ ℕ0) → ((bits‘𝑥) = (bits‘𝑦) → 𝑥 = 𝑦))
9266, 91syldan 580 . . . 4 (((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) ∧ --𝑥 ∈ ℕ0) → ((bits‘𝑥) = (bits‘𝑦) → 𝑥 = 𝑦))
932znegcld 11708 . . . . 5 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → -𝑥 ∈ ℤ)
94 elznn 11617 . . . . . 6 (-𝑥 ∈ ℤ ↔ (-𝑥 ∈ ℝ ∧ (-𝑥 ∈ ℕ ∨ --𝑥 ∈ ℕ0)))
9594simprbi 485 . . . . 5 (-𝑥 ∈ ℤ → (-𝑥 ∈ ℕ ∨ --𝑥 ∈ ℕ0))
9693, 95syl 17 . . . 4 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (-𝑥 ∈ ℕ ∨ --𝑥 ∈ ℕ0))
9763, 92, 96mpjaodan 970 . . 3 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → ((bits‘𝑥) = (bits‘𝑦) → 𝑥 = 𝑦))
9897rgen2a 3129 . 2 𝑥 ∈ ℤ ∀𝑦 ∈ ℤ ((bits‘𝑥) = (bits‘𝑦) → 𝑥 = 𝑦)
99 dff13 6674 . 2 (bits:ℤ–1-1→𝒫 ℕ0 ↔ (bits:ℤ⟶𝒫 ℕ0 ∧ ∀𝑥 ∈ ℤ ∀𝑦 ∈ ℤ ((bits‘𝑥) = (bits‘𝑦) → 𝑥 = 𝑦)))
1001, 98, 99mpbir2an 691 1 bits:ℤ–1-1→𝒫 ℕ0
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 197  wa 383  wo 863   = wceq 1634  wcel 2148  wral 3064  cdif 3726  cin 3728  𝒫 cpw 4307   class class class wbr 4797  cres 5265  wf 6038  1-1wf1 6039  1-1-ontowf1o 6041  cfv 6042  (class class class)co 6812  ωcom 7233  cen 8127  Fincfn 8130  cc 10157  cr 10158  1c1 10160  cmin 10489  -cneg 10490  cn 11243  0cn0 11516  cz 11601  bitscbits 15370
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1873  ax-4 1888  ax-5 1994  ax-6 2060  ax-7 2096  ax-8 2150  ax-9 2157  ax-10 2177  ax-11 2193  ax-12 2206  ax-13 2411  ax-ext 2754  ax-rep 4917  ax-sep 4928  ax-nul 4936  ax-pow 4988  ax-pr 5048  ax-un 7117  ax-inf2 8723  ax-cnex 10215  ax-resscn 10216  ax-1cn 10217  ax-icn 10218  ax-addcl 10219  ax-addrcl 10220  ax-mulcl 10221  ax-mulrcl 10222  ax-mulcom 10223  ax-addass 10224  ax-mulass 10225  ax-distr 10226  ax-i2m1 10227  ax-1ne0 10228  ax-1rid 10229  ax-rnegex 10230  ax-rrecex 10231  ax-cnre 10232  ax-pre-lttri 10233  ax-pre-lttrn 10234  ax-pre-ltadd 10235  ax-pre-mulgt0 10236  ax-pre-sup 10237
This theorem depends on definitions:  df-bi 198  df-an 384  df-or 864  df-3or 1099  df-3an 1100  df-tru 1637  df-fal 1640  df-ex 1856  df-nf 1861  df-sb 2053  df-eu 2625  df-mo 2626  df-clab 2761  df-cleq 2767  df-clel 2770  df-nfc 2905  df-ne 2947  df-nel 3050  df-ral 3069  df-rex 3070  df-reu 3071  df-rmo 3072  df-rab 3073  df-v 3357  df-sbc 3594  df-csb 3689  df-dif 3732  df-un 3734  df-in 3736  df-ss 3743  df-pss 3745  df-nul 4074  df-if 4236  df-pw 4309  df-sn 4327  df-pr 4329  df-tp 4331  df-op 4333  df-uni 4586  df-int 4623  df-iun 4667  df-disj 4766  df-br 4798  df-opab 4860  df-mpt 4877  df-tr 4900  df-id 5171  df-eprel 5176  df-po 5184  df-so 5185  df-fr 5222  df-se 5223  df-we 5224  df-xp 5269  df-rel 5270  df-cnv 5271  df-co 5272  df-dm 5273  df-rn 5274  df-res 5275  df-ima 5276  df-pred 5834  df-ord 5880  df-on 5881  df-lim 5882  df-suc 5883  df-iota 6005  df-fun 6044  df-fn 6045  df-f 6046  df-f1 6047  df-fo 6048  df-f1o 6049  df-fv 6050  df-isom 6051  df-riota 6773  df-ov 6815  df-oprab 6816  df-mpt2 6817  df-om 7234  df-1st 7336  df-2nd 7337  df-wrecs 7580  df-recs 7642  df-rdg 7680  df-1o 7734  df-2o 7735  df-oadd 7738  df-er 7917  df-map 8032  df-pm 8033  df-en 8131  df-dom 8132  df-sdom 8133  df-fin 8134  df-sup 8525  df-inf 8526  df-oi 8592  df-card 8986  df-cda 9213  df-pnf 10299  df-mnf 10300  df-xr 10301  df-ltxr 10302  df-le 10303  df-sub 10491  df-neg 10492  df-div 10908  df-nn 11244  df-2 11302  df-3 11303  df-n0 11517  df-xnn0 11588  df-z 11602  df-uz 11911  df-rp 12053  df-fz 12556  df-fzo 12696  df-fl 12823  df-mod 12899  df-seq 13031  df-exp 13090  df-hash 13344  df-cj 14069  df-re 14070  df-im 14071  df-sqrt 14205  df-abs 14206  df-clim 14449  df-sum 14647  df-dvds 15212  df-bits 15373
This theorem is referenced by:  bitsuz  15425  eulerpartlemmf  30794
  Copyright terms: Public domain W3C validator