Users' Mathboxes Mathbox for Thierry Arnoux < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  eulerpartlemgh Structured version   Visualization version   GIF version

Theorem eulerpartlemgh 30908
Description: Lemma for eulerpart 30912: The 𝐹 function is a bijection on the 𝑈 subsets. (Contributed by Thierry Arnoux, 15-Aug-2018.)
Hypotheses
Ref Expression
eulerpart.p 𝑃 = {𝑓 ∈ (ℕ0𝑚 ℕ) ∣ ((𝑓 “ ℕ) ∈ Fin ∧ Σ𝑘 ∈ ℕ ((𝑓𝑘) · 𝑘) = 𝑁)}
eulerpart.o 𝑂 = {𝑔𝑃 ∣ ∀𝑛 ∈ (𝑔 “ ℕ) ¬ 2 ∥ 𝑛}
eulerpart.d 𝐷 = {𝑔𝑃 ∣ ∀𝑛 ∈ ℕ (𝑔𝑛) ≤ 1}
eulerpart.j 𝐽 = {𝑧 ∈ ℕ ∣ ¬ 2 ∥ 𝑧}
eulerpart.f 𝐹 = (𝑥𝐽, 𝑦 ∈ ℕ0 ↦ ((2↑𝑦) · 𝑥))
eulerpart.h 𝐻 = {𝑟 ∈ ((𝒫 ℕ0 ∩ Fin) ↑𝑚 𝐽) ∣ (𝑟 supp ∅) ∈ Fin}
eulerpart.m 𝑀 = (𝑟𝐻 ↦ {⟨𝑥, 𝑦⟩ ∣ (𝑥𝐽𝑦 ∈ (𝑟𝑥))})
eulerpart.r 𝑅 = {𝑓 ∣ (𝑓 “ ℕ) ∈ Fin}
eulerpart.t 𝑇 = {𝑓 ∈ (ℕ0𝑚 ℕ) ∣ (𝑓 “ ℕ) ⊆ 𝐽}
eulerpart.g 𝐺 = (𝑜 ∈ (𝑇𝑅) ↦ ((𝟭‘ℕ)‘(𝐹 “ (𝑀‘(bits ∘ (𝑜𝐽))))))
eulerpartlemgh.1 𝑈 = 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡)))
Assertion
Ref Expression
eulerpartlemgh (𝐴 ∈ (𝑇𝑅) → (𝐹𝑈):𝑈1-1-onto→{𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚})
Distinct variable groups:   𝑧,𝑡   𝑓,𝑔,𝑘,𝑛,𝑡,𝐴   𝑓,𝐽,𝑛,𝑡   𝑓,𝑁,𝑘,𝑛,𝑡   𝑛,𝑂,𝑡   𝑃,𝑔,𝑘   𝑅,𝑓,𝑘,𝑛,𝑡   𝑇,𝑛,𝑡   𝑥,𝑡,𝑦,𝑧   𝑓,𝑚,𝑥,𝑔,𝑘,𝑛,𝑡,𝐴   𝑛,𝐹,𝑡,𝑥   𝑦,𝑓,𝑛   𝑥,𝐽,𝑦   𝑡,𝑃
Allowed substitution hints:   𝐴(𝑦,𝑧,𝑜,𝑟)   𝐷(𝑥,𝑦,𝑧,𝑡,𝑓,𝑔,𝑘,𝑚,𝑛,𝑜,𝑟)   𝑃(𝑥,𝑦,𝑧,𝑓,𝑚,𝑛,𝑜,𝑟)   𝑅(𝑥,𝑦,𝑧,𝑔,𝑚,𝑜,𝑟)   𝑇(𝑥,𝑦,𝑧,𝑓,𝑔,𝑘,𝑚,𝑜,𝑟)   𝑈(𝑥,𝑦,𝑧,𝑡,𝑓,𝑔,𝑘,𝑚,𝑛,𝑜,𝑟)   𝐹(𝑦,𝑧,𝑓,𝑔,𝑘,𝑚,𝑜,𝑟)   𝐺(𝑥,𝑦,𝑧,𝑡,𝑓,𝑔,𝑘,𝑚,𝑛,𝑜,𝑟)   𝐻(𝑥,𝑦,𝑧,𝑡,𝑓,𝑔,𝑘,𝑚,𝑛,𝑜,𝑟)   𝐽(𝑧,𝑔,𝑘,𝑚,𝑜,𝑟)   𝑀(𝑥,𝑦,𝑧,𝑡,𝑓,𝑔,𝑘,𝑚,𝑛,𝑜,𝑟)   𝑁(𝑥,𝑦,𝑧,𝑔,𝑚,𝑜,𝑟)   𝑂(𝑥,𝑦,𝑧,𝑓,𝑔,𝑘,𝑚,𝑜,𝑟)

Proof of Theorem eulerpartlemgh
Dummy variable 𝑝 is distinct from all other variables.
StepHypRef Expression
1 eulerpart.j . . . . 5 𝐽 = {𝑧 ∈ ℕ ∣ ¬ 2 ∥ 𝑧}
2 eulerpart.f . . . . 5 𝐹 = (𝑥𝐽, 𝑦 ∈ ℕ0 ↦ ((2↑𝑦) · 𝑥))
31, 2oddpwdc 30884 . . . 4 𝐹:(𝐽 × ℕ0)–1-1-onto→ℕ
4 f1of1 6323 . . . 4 (𝐹:(𝐽 × ℕ0)–1-1-onto→ℕ → 𝐹:(𝐽 × ℕ0)–1-1→ℕ)
53, 4ax-mp 5 . . 3 𝐹:(𝐽 × ℕ0)–1-1→ℕ
6 eulerpartlemgh.1 . . . 4 𝑈 = 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡)))
7 iunss 4719 . . . . 5 ( 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0) ↔ ∀𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0))
8 inss2 3995 . . . . . . . 8 ((𝐴 “ ℕ) ∩ 𝐽) ⊆ 𝐽
98sseli 3759 . . . . . . 7 (𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽) → 𝑡𝐽)
109snssd 4496 . . . . . 6 (𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽) → {𝑡} ⊆ 𝐽)
11 bitsss 15443 . . . . . 6 (bits‘(𝐴𝑡)) ⊆ ℕ0
12 xpss12 5294 . . . . . 6 (({𝑡} ⊆ 𝐽 ∧ (bits‘(𝐴𝑡)) ⊆ ℕ0) → ({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0))
1310, 11, 12sylancl 580 . . . . 5 (𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽) → ({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0))
147, 13mprgbir 3074 . . . 4 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0)
156, 14eqsstri 3797 . . 3 𝑈 ⊆ (𝐽 × ℕ0)
16 f1ores 6338 . . 3 ((𝐹:(𝐽 × ℕ0)–1-1→ℕ ∧ 𝑈 ⊆ (𝐽 × ℕ0)) → (𝐹𝑈):𝑈1-1-onto→(𝐹𝑈))
175, 15, 16mp2an 683 . 2 (𝐹𝑈):𝑈1-1-onto→(𝐹𝑈)
18 simpr 477 . . . . . . . . . . 11 ((((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) ∧ ((2↑𝑛) · 𝑡) = 𝑝) → ((2↑𝑛) · 𝑡) = 𝑝)
19 2nn 11349 . . . . . . . . . . . . . . 15 2 ∈ ℕ
2019a1i 11 . . . . . . . . . . . . . 14 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) → 2 ∈ ℕ)
2111sseli 3759 . . . . . . . . . . . . . . 15 (𝑛 ∈ (bits‘(𝐴𝑡)) → 𝑛 ∈ ℕ0)
2221adantl 473 . . . . . . . . . . . . . 14 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) → 𝑛 ∈ ℕ0)
2320, 22nnexpcld 13242 . . . . . . . . . . . . 13 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) → (2↑𝑛) ∈ ℕ)
24 simplr 785 . . . . . . . . . . . . 13 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) → 𝑡 ∈ ℕ)
2523, 24nnmulcld 11329 . . . . . . . . . . . 12 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) → ((2↑𝑛) · 𝑡) ∈ ℕ)
2625adantr 472 . . . . . . . . . . 11 ((((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) ∧ ((2↑𝑛) · 𝑡) = 𝑝) → ((2↑𝑛) · 𝑡) ∈ ℕ)
2718, 26eqeltrrd 2845 . . . . . . . . . 10 ((((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) ∧ ((2↑𝑛) · 𝑡) = 𝑝) → 𝑝 ∈ ℕ)
2827exp31 410 . . . . . . . . 9 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) → (𝑛 ∈ (bits‘(𝐴𝑡)) → (((2↑𝑛) · 𝑡) = 𝑝𝑝 ∈ ℕ)))
2928rexlimdv 3177 . . . . . . . 8 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) → (∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝𝑝 ∈ ℕ))
3029rexlimdva 3178 . . . . . . 7 (𝐴 ∈ (𝑇𝑅) → (∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝𝑝 ∈ ℕ))
3130pm4.71rd 558 . . . . . 6 (𝐴 ∈ (𝑇𝑅) → (∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 ↔ (𝑝 ∈ ℕ ∧ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)))
32 rex0 4104 . . . . . . . . . . . . . . 15 ¬ ∃𝑛 ∈ ∅ ((2↑𝑛) · 𝑡) = 𝑝
33 simplr 785 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → 𝑡 ∈ ℕ)
34 simpr 477 . . . . . . . . . . . . . . . . . . . . . 22 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → ¬ 𝑡 ∈ (𝐴 “ ℕ))
35 eulerpart.p . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝑃 = {𝑓 ∈ (ℕ0𝑚 ℕ) ∣ ((𝑓 “ ℕ) ∈ Fin ∧ Σ𝑘 ∈ ℕ ((𝑓𝑘) · 𝑘) = 𝑁)}
36 eulerpart.o . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝑂 = {𝑔𝑃 ∣ ∀𝑛 ∈ (𝑔 “ ℕ) ¬ 2 ∥ 𝑛}
37 eulerpart.d . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝐷 = {𝑔𝑃 ∣ ∀𝑛 ∈ ℕ (𝑔𝑛) ≤ 1}
38 eulerpart.h . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝐻 = {𝑟 ∈ ((𝒫 ℕ0 ∩ Fin) ↑𝑚 𝐽) ∣ (𝑟 supp ∅) ∈ Fin}
39 eulerpart.m . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝑀 = (𝑟𝐻 ↦ {⟨𝑥, 𝑦⟩ ∣ (𝑥𝐽𝑦 ∈ (𝑟𝑥))})
40 eulerpart.r . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝑅 = {𝑓 ∣ (𝑓 “ ℕ) ∈ Fin}
41 eulerpart.t . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝑇 = {𝑓 ∈ (ℕ0𝑚 ℕ) ∣ (𝑓 “ ℕ) ⊆ 𝐽}
4235, 36, 37, 1, 2, 38, 39, 40, 41eulerpartlemt0 30899 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝐴 ∈ (𝑇𝑅) ↔ (𝐴 ∈ (ℕ0𝑚 ℕ) ∧ (𝐴 “ ℕ) ∈ Fin ∧ (𝐴 “ ℕ) ⊆ 𝐽))
4342simp1bi 1175 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝐴 ∈ (𝑇𝑅) → 𝐴 ∈ (ℕ0𝑚 ℕ))
44 elmapi 8086 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝐴 ∈ (ℕ0𝑚 ℕ) → 𝐴:ℕ⟶ℕ0)
4543, 44syl 17 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝐴 ∈ (𝑇𝑅) → 𝐴:ℕ⟶ℕ0)
4645ad2antrr 717 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → 𝐴:ℕ⟶ℕ0)
47 ffn 6225 . . . . . . . . . . . . . . . . . . . . . . 23 (𝐴:ℕ⟶ℕ0𝐴 Fn ℕ)
48 elpreima 6531 . . . . . . . . . . . . . . . . . . . . . . 23 (𝐴 Fn ℕ → (𝑡 ∈ (𝐴 “ ℕ) ↔ (𝑡 ∈ ℕ ∧ (𝐴𝑡) ∈ ℕ)))
4946, 47, 483syl 18 . . . . . . . . . . . . . . . . . . . . . 22 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (𝑡 ∈ (𝐴 “ ℕ) ↔ (𝑡 ∈ ℕ ∧ (𝐴𝑡) ∈ ℕ)))
5034, 49mtbid 315 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → ¬ (𝑡 ∈ ℕ ∧ (𝐴𝑡) ∈ ℕ))
51 imnan 388 . . . . . . . . . . . . . . . . . . . . 21 ((𝑡 ∈ ℕ → ¬ (𝐴𝑡) ∈ ℕ) ↔ ¬ (𝑡 ∈ ℕ ∧ (𝐴𝑡) ∈ ℕ))
5250, 51sylibr 225 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (𝑡 ∈ ℕ → ¬ (𝐴𝑡) ∈ ℕ))
5333, 52mpd 15 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → ¬ (𝐴𝑡) ∈ ℕ)
5446, 33ffvelrnd 6554 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (𝐴𝑡) ∈ ℕ0)
55 elnn0 11544 . . . . . . . . . . . . . . . . . . . 20 ((𝐴𝑡) ∈ ℕ0 ↔ ((𝐴𝑡) ∈ ℕ ∨ (𝐴𝑡) = 0))
5654, 55sylib 209 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → ((𝐴𝑡) ∈ ℕ ∨ (𝐴𝑡) = 0))
57 orel1 912 . . . . . . . . . . . . . . . . . . 19 (¬ (𝐴𝑡) ∈ ℕ → (((𝐴𝑡) ∈ ℕ ∨ (𝐴𝑡) = 0) → (𝐴𝑡) = 0))
5853, 56, 57sylc 65 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (𝐴𝑡) = 0)
5958fveq2d 6383 . . . . . . . . . . . . . . . . 17 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (bits‘(𝐴𝑡)) = (bits‘0))
60 0bits 15456 . . . . . . . . . . . . . . . . 17 (bits‘0) = ∅
6159, 60syl6eq 2815 . . . . . . . . . . . . . . . 16 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (bits‘(𝐴𝑡)) = ∅)
6261rexeqdv 3293 . . . . . . . . . . . . . . 15 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 ↔ ∃𝑛 ∈ ∅ ((2↑𝑛) · 𝑡) = 𝑝))
6332, 62mtbiri 318 . . . . . . . . . . . . . 14 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → ¬ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)
6463ex 401 . . . . . . . . . . . . 13 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) → (¬ 𝑡 ∈ (𝐴 “ ℕ) → ¬ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
6564con4d 115 . . . . . . . . . . . 12 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) → (∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝𝑡 ∈ (𝐴 “ ℕ)))
6665impr 446 . . . . . . . . . . 11 ((𝐴 ∈ (𝑇𝑅) ∧ (𝑡 ∈ ℕ ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)) → 𝑡 ∈ (𝐴 “ ℕ))
67 eldif 3744 . . . . . . . . . . . . . . . . . . . 20 (𝑡 ∈ (ℕ ∖ 𝐽) ↔ (𝑡 ∈ ℕ ∧ ¬ 𝑡𝐽))
6835, 36, 37, 1, 2, 38, 39, 40, 41eulerpartlemf 30900 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ (ℕ ∖ 𝐽)) → (𝐴𝑡) = 0)
6967, 68sylan2br 588 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ (𝑇𝑅) ∧ (𝑡 ∈ ℕ ∧ ¬ 𝑡𝐽)) → (𝐴𝑡) = 0)
7069anassrs 459 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡𝐽) → (𝐴𝑡) = 0)
7170fveq2d 6383 . . . . . . . . . . . . . . . . 17 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡𝐽) → (bits‘(𝐴𝑡)) = (bits‘0))
7271, 60syl6eq 2815 . . . . . . . . . . . . . . . 16 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡𝐽) → (bits‘(𝐴𝑡)) = ∅)
7372rexeqdv 3293 . . . . . . . . . . . . . . 15 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡𝐽) → (∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 ↔ ∃𝑛 ∈ ∅ ((2↑𝑛) · 𝑡) = 𝑝))
7432, 73mtbiri 318 . . . . . . . . . . . . . 14 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡𝐽) → ¬ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)
7574ex 401 . . . . . . . . . . . . 13 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) → (¬ 𝑡𝐽 → ¬ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
7675con4d 115 . . . . . . . . . . . 12 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) → (∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝𝑡𝐽))
7776impr 446 . . . . . . . . . . 11 ((𝐴 ∈ (𝑇𝑅) ∧ (𝑡 ∈ ℕ ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)) → 𝑡𝐽)
7866, 77elind 3962 . . . . . . . . . 10 ((𝐴 ∈ (𝑇𝑅) ∧ (𝑡 ∈ ℕ ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)) → 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽))
79 simprr 789 . . . . . . . . . 10 ((𝐴 ∈ (𝑇𝑅) ∧ (𝑡 ∈ ℕ ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)) → ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)
8078, 79jca 507 . . . . . . . . 9 ((𝐴 ∈ (𝑇𝑅) ∧ (𝑡 ∈ ℕ ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)) → (𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽) ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
8180ex 401 . . . . . . . 8 (𝐴 ∈ (𝑇𝑅) → ((𝑡 ∈ ℕ ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝) → (𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽) ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)))
8281reximdv2 3160 . . . . . . 7 (𝐴 ∈ (𝑇𝑅) → (∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 → ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
83 ssrab2 3849 . . . . . . . . . 10 {𝑧 ∈ ℕ ∣ ¬ 2 ∥ 𝑧} ⊆ ℕ
841, 83eqsstri 3797 . . . . . . . . 9 𝐽 ⊆ ℕ
858, 84sstri 3772 . . . . . . . 8 ((𝐴 “ ℕ) ∩ 𝐽) ⊆ ℕ
86 ssrexv 3829 . . . . . . . 8 (((𝐴 “ ℕ) ∩ 𝐽) ⊆ ℕ → (∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 → ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
8785, 86mp1i 13 . . . . . . 7 (𝐴 ∈ (𝑇𝑅) → (∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 → ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
8882, 87impbid 203 . . . . . 6 (𝐴 ∈ (𝑇𝑅) → (∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 ↔ ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
8931, 88bitr3d 272 . . . . 5 (𝐴 ∈ (𝑇𝑅) → ((𝑝 ∈ ℕ ∧ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝) ↔ ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
90 eqeq2 2776 . . . . . . . 8 (𝑚 = 𝑝 → (((2↑𝑛) · 𝑡) = 𝑚 ↔ ((2↑𝑛) · 𝑡) = 𝑝))
91902rexbidv 3204 . . . . . . 7 (𝑚 = 𝑝 → (∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚 ↔ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
9291elrab 3521 . . . . . 6 (𝑝 ∈ {𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚} ↔ (𝑝 ∈ ℕ ∧ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
9392a1i 11 . . . . 5 (𝐴 ∈ (𝑇𝑅) → (𝑝 ∈ {𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚} ↔ (𝑝 ∈ ℕ ∧ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)))
946imaeq2i 5648 . . . . . . . . 9 (𝐹𝑈) = (𝐹 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡))))
95 imaiun 6699 . . . . . . . . 9 (𝐹 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡)))) = 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)(𝐹 “ ({𝑡} × (bits‘(𝐴𝑡))))
9694, 95eqtri 2787 . . . . . . . 8 (𝐹𝑈) = 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)(𝐹 “ ({𝑡} × (bits‘(𝐴𝑡))))
9796eleq2i 2836 . . . . . . 7 (𝑝 ∈ (𝐹𝑈) ↔ 𝑝 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)(𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))))
98 eliun 4682 . . . . . . 7 (𝑝 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)(𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))))
99 f1ofn 6325 . . . . . . . . . . . . 13 (𝐹:(𝐽 × ℕ0)–1-1-onto→ℕ → 𝐹 Fn (𝐽 × ℕ0))
1003, 99ax-mp 5 . . . . . . . . . . . 12 𝐹 Fn (𝐽 × ℕ0)
101 snssi 4495 . . . . . . . . . . . . 13 (𝑡𝐽 → {𝑡} ⊆ 𝐽)
102101, 11, 12sylancl 580 . . . . . . . . . . . 12 (𝑡𝐽 → ({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0))
103 ovelimab 7014 . . . . . . . . . . . 12 ((𝐹 Fn (𝐽 × ℕ0) ∧ ({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0)) → (𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑥 ∈ {𝑡}∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑥𝐹𝑛)))
104100, 102, 103sylancr 581 . . . . . . . . . . 11 (𝑡𝐽 → (𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑥 ∈ {𝑡}∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑥𝐹𝑛)))
105 vex 3353 . . . . . . . . . . . 12 𝑡 ∈ V
106 oveq1 6853 . . . . . . . . . . . . . 14 (𝑥 = 𝑡 → (𝑥𝐹𝑛) = (𝑡𝐹𝑛))
107106eqeq2d 2775 . . . . . . . . . . . . 13 (𝑥 = 𝑡 → (𝑝 = (𝑥𝐹𝑛) ↔ 𝑝 = (𝑡𝐹𝑛)))
108107rexbidv 3199 . . . . . . . . . . . 12 (𝑥 = 𝑡 → (∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑥𝐹𝑛) ↔ ∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑡𝐹𝑛)))
109105, 108rexsn 4382 . . . . . . . . . . 11 (∃𝑥 ∈ {𝑡}∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑥𝐹𝑛) ↔ ∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑡𝐹𝑛))
110104, 109syl6bb 278 . . . . . . . . . 10 (𝑡𝐽 → (𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑡𝐹𝑛)))
111 df-ov 6849 . . . . . . . . . . . . . . 15 (𝑡𝐹𝑛) = (𝐹‘⟨𝑡, 𝑛⟩)
112111eqeq1i 2770 . . . . . . . . . . . . . 14 ((𝑡𝐹𝑛) = 𝑝 ↔ (𝐹‘⟨𝑡, 𝑛⟩) = 𝑝)
113 eqcom 2772 . . . . . . . . . . . . . 14 ((𝑡𝐹𝑛) = 𝑝𝑝 = (𝑡𝐹𝑛))
114112, 113bitr3i 268 . . . . . . . . . . . . 13 ((𝐹‘⟨𝑡, 𝑛⟩) = 𝑝𝑝 = (𝑡𝐹𝑛))
115 opelxpi 5316 . . . . . . . . . . . . . . 15 ((𝑡𝐽𝑛 ∈ ℕ0) → ⟨𝑡, 𝑛⟩ ∈ (𝐽 × ℕ0))
1161, 2oddpwdcv 30885 . . . . . . . . . . . . . . . 16 (⟨𝑡, 𝑛⟩ ∈ (𝐽 × ℕ0) → (𝐹‘⟨𝑡, 𝑛⟩) = ((2↑(2nd ‘⟨𝑡, 𝑛⟩)) · (1st ‘⟨𝑡, 𝑛⟩)))
117 vex 3353 . . . . . . . . . . . . . . . . . . 19 𝑛 ∈ V
118105, 117op2nd 7379 . . . . . . . . . . . . . . . . . 18 (2nd ‘⟨𝑡, 𝑛⟩) = 𝑛
119118oveq2i 6857 . . . . . . . . . . . . . . . . 17 (2↑(2nd ‘⟨𝑡, 𝑛⟩)) = (2↑𝑛)
120105, 117op1st 7378 . . . . . . . . . . . . . . . . 17 (1st ‘⟨𝑡, 𝑛⟩) = 𝑡
121119, 120oveq12i 6858 . . . . . . . . . . . . . . . 16 ((2↑(2nd ‘⟨𝑡, 𝑛⟩)) · (1st ‘⟨𝑡, 𝑛⟩)) = ((2↑𝑛) · 𝑡)
122116, 121syl6eq 2815 . . . . . . . . . . . . . . 15 (⟨𝑡, 𝑛⟩ ∈ (𝐽 × ℕ0) → (𝐹‘⟨𝑡, 𝑛⟩) = ((2↑𝑛) · 𝑡))
123115, 122syl 17 . . . . . . . . . . . . . 14 ((𝑡𝐽𝑛 ∈ ℕ0) → (𝐹‘⟨𝑡, 𝑛⟩) = ((2↑𝑛) · 𝑡))
124123eqeq1d 2767 . . . . . . . . . . . . 13 ((𝑡𝐽𝑛 ∈ ℕ0) → ((𝐹‘⟨𝑡, 𝑛⟩) = 𝑝 ↔ ((2↑𝑛) · 𝑡) = 𝑝))
125114, 124syl5bbr 276 . . . . . . . . . . . 12 ((𝑡𝐽𝑛 ∈ ℕ0) → (𝑝 = (𝑡𝐹𝑛) ↔ ((2↑𝑛) · 𝑡) = 𝑝))
12621, 125sylan2 586 . . . . . . . . . . 11 ((𝑡𝐽𝑛 ∈ (bits‘(𝐴𝑡))) → (𝑝 = (𝑡𝐹𝑛) ↔ ((2↑𝑛) · 𝑡) = 𝑝))
127126rexbidva 3196 . . . . . . . . . 10 (𝑡𝐽 → (∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑡𝐹𝑛) ↔ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
128110, 127bitrd 270 . . . . . . . . 9 (𝑡𝐽 → (𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
1299, 128syl 17 . . . . . . . 8 (𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽) → (𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
130129rexbiia 3187 . . . . . . 7 (∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)
13197, 98, 1303bitri 288 . . . . . 6 (𝑝 ∈ (𝐹𝑈) ↔ ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)
132131a1i 11 . . . . 5 (𝐴 ∈ (𝑇𝑅) → (𝑝 ∈ (𝐹𝑈) ↔ ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
13389, 93, 1323bitr4rd 303 . . . 4 (𝐴 ∈ (𝑇𝑅) → (𝑝 ∈ (𝐹𝑈) ↔ 𝑝 ∈ {𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚}))
134133eqrdv 2763 . . 3 (𝐴 ∈ (𝑇𝑅) → (𝐹𝑈) = {𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚})
135 f1oeq3 6316 . . 3 ((𝐹𝑈) = {𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚} → ((𝐹𝑈):𝑈1-1-onto→(𝐹𝑈) ↔ (𝐹𝑈):𝑈1-1-onto→{𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚}))
136134, 135syl 17 . 2 (𝐴 ∈ (𝑇𝑅) → ((𝐹𝑈):𝑈1-1-onto→(𝐹𝑈) ↔ (𝐹𝑈):𝑈1-1-onto→{𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚}))
13717, 136mpbii 224 1 (𝐴 ∈ (𝑇𝑅) → (𝐹𝑈):𝑈1-1-onto→{𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚})
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 197  wa 384  wo 873   = wceq 1652  wcel 2155  {cab 2751  wral 3055  wrex 3056  {crab 3059  cdif 3731  cin 3733  wss 3734  c0 4081  𝒫 cpw 4317  {csn 4336  cop 4342   ciun 4678   class class class wbr 4811  {copab 4873  cmpt 4890   × cxp 5277  ccnv 5278  cres 5281  cima 5282  ccom 5283   Fn wfn 6065  wf 6066  1-1wf1 6067  1-1-ontowf1o 6069  cfv 6070  (class class class)co 6846  cmpt2 6848  1st c1st 7368  2nd c2nd 7369   supp csupp 7501  𝑚 cmap 8064  Fincfn 8164  0cc0 10193  1c1 10194   · cmul 10198  cle 10333  cn 11278  2c2 11331  0cn0 11542  cexp 13072  Σcsu 14715  cdvds 15279  bitscbits 15436  𝟭cind 30540
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1890  ax-4 1904  ax-5 2005  ax-6 2070  ax-7 2105  ax-8 2157  ax-9 2164  ax-10 2183  ax-11 2198  ax-12 2211  ax-13 2352  ax-ext 2743  ax-sep 4943  ax-nul 4951  ax-pow 5003  ax-pr 5064  ax-un 7151  ax-cnex 10249  ax-resscn 10250  ax-1cn 10251  ax-icn 10252  ax-addcl 10253  ax-addrcl 10254  ax-mulcl 10255  ax-mulrcl 10256  ax-mulcom 10257  ax-addass 10258  ax-mulass 10259  ax-distr 10260  ax-i2m1 10261  ax-1ne0 10262  ax-1rid 10263  ax-rnegex 10264  ax-rrecex 10265  ax-cnre 10266  ax-pre-lttri 10267  ax-pre-lttrn 10268  ax-pre-ltadd 10269  ax-pre-mulgt0 10270  ax-pre-sup 10271
This theorem depends on definitions:  df-bi 198  df-an 385  df-or 874  df-3or 1108  df-3an 1109  df-tru 1656  df-fal 1666  df-ex 1875  df-nf 1879  df-sb 2063  df-mo 2565  df-eu 2582  df-clab 2752  df-cleq 2758  df-clel 2761  df-nfc 2896  df-ne 2938  df-nel 3041  df-ral 3060  df-rex 3061  df-reu 3062  df-rmo 3063  df-rab 3064  df-v 3352  df-sbc 3599  df-csb 3694  df-dif 3737  df-un 3739  df-in 3741  df-ss 3748  df-pss 3750  df-nul 4082  df-if 4246  df-pw 4319  df-sn 4337  df-pr 4339  df-tp 4341  df-op 4343  df-uni 4597  df-iun 4680  df-br 4812  df-opab 4874  df-mpt 4891  df-tr 4914  df-id 5187  df-eprel 5192  df-po 5200  df-so 5201  df-fr 5238  df-we 5240  df-xp 5285  df-rel 5286  df-cnv 5287  df-co 5288  df-dm 5289  df-rn 5290  df-res 5291  df-ima 5292  df-pred 5867  df-ord 5913  df-on 5914  df-lim 5915  df-suc 5916  df-iota 6033  df-fun 6072  df-fn 6073  df-f 6074  df-f1 6075  df-fo 6076  df-f1o 6077  df-fv 6078  df-riota 6807  df-ov 6849  df-oprab 6850  df-mpt2 6851  df-om 7268  df-1st 7370  df-2nd 7371  df-wrecs 7614  df-recs 7676  df-rdg 7714  df-1o 7768  df-er 7951  df-map 8066  df-en 8165  df-dom 8166  df-sdom 8167  df-fin 8168  df-sup 8559  df-inf 8560  df-pnf 10334  df-mnf 10335  df-xr 10336  df-ltxr 10337  df-le 10338  df-sub 10526  df-neg 10527  df-div 10943  df-nn 11279  df-2 11339  df-n0 11543  df-z 11629  df-uz 11892  df-rp 12034  df-fz 12539  df-fzo 12679  df-fl 12806  df-seq 13014  df-exp 13073  df-dvds 15280  df-bits 15439
This theorem is referenced by:  eulerpartlemgs2  30910
  Copyright terms: Public domain W3C validator