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 34876
Description: Lemma for eulerpart 34880: The 𝐹 function is a bijection on the 𝑈 subsets. (Contributed by Thierry Arnoux, 15-Aug-2018.)
Hypotheses
Ref Expression
eulerpart.p 𝑃 = {𝑓 ∈ (ℕ0m ℕ) ∣ ((𝑓 “ ℕ) ∈ Fin ∧ Σ𝑘 ∈ ℕ ((𝑓𝑘) · 𝑘) = 𝑁)}
eulerpart.o 𝑂 = {𝑔𝑃 ∣ ∀𝑛 ∈ (𝑔 “ ℕ) ¬ 2 ∥ 𝑛}
eulerpart.d 𝐷 = {𝑔𝑃 ∣ ∀𝑛 ∈ ℕ (𝑔𝑛) ≤ 1}
eulerpart.j 𝐽 = {𝑧 ∈ ℕ ∣ ¬ 2 ∥ 𝑧}
eulerpart.f 𝐹 = (𝑥𝐽, 𝑦 ∈ ℕ0 ↦ ((2↑𝑦) · 𝑥))
eulerpart.h 𝐻 = {𝑟 ∈ ((𝒫 ℕ0 ∩ Fin) ↑m 𝐽) ∣ (𝑟 supp ∅) ∈ Fin}
eulerpart.m 𝑀 = (𝑟𝐻 ↦ {⟨𝑥, 𝑦⟩ ∣ (𝑥𝐽𝑦 ∈ (𝑟𝑥))})
eulerpart.r 𝑅 = {𝑓 ∣ (𝑓 “ ℕ) ∈ Fin}
eulerpart.t 𝑇 = {𝑓 ∈ (ℕ0m ℕ) ∣ (𝑓 “ ℕ) ⊆ 𝐽}
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 34852 . . . 4 𝐹:(𝐽 × ℕ0)–1-1-onto→ℕ
4 f1of1 6820 . . . 4 (𝐹:(𝐽 × ℕ0)–1-1-onto→ℕ → 𝐹:(𝐽 × ℕ0)–1-1→ℕ)
53, 4ax-mp 5 . . 3 𝐹:(𝐽 × ℕ0)–1-1→ℕ
6 eulerpartlemgh.1 . . . 4 𝑈 = 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡)))
7 iunss 5007 . . . . 5 ( 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0) ↔ ∀𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0))
8 inss2 4186 . . . . . . . 8 ((𝐴 “ ℕ) ∩ 𝐽) ⊆ 𝐽
98sseli 3930 . . . . . . 7 (𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽) → 𝑡𝐽)
109snssd 4750 . . . . . 6 (𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽) → {𝑡} ⊆ 𝐽)
11 bitsss 16520 . . . . . 6 (bits‘(𝐴𝑡)) ⊆ ℕ0
12 xpss12 5674 . . . . . 6 (({𝑡} ⊆ 𝐽 ∧ (bits‘(𝐴𝑡)) ⊆ ℕ0) → ({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0))
1310, 11, 12sylancl 598 . . . . 5 (𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽) → ({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0))
147, 13mprgbir 3085 . . . 4 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0)
156, 14eqsstri 3980 . . 3 𝑈 ⊆ (𝐽 × ℕ0)
16 f1ores 6836 . . 3 ((𝐹:(𝐽 × ℕ0)–1-1→ℕ ∧ 𝑈 ⊆ (𝐽 × ℕ0)) → (𝐹𝑈):𝑈1-1-onto→(𝐹𝑈))
175, 15, 16mp2an 705 . 2 (𝐹𝑈):𝑈1-1-onto→(𝐹𝑈)
18 simpr 490 . . . . . . . . . 10 ((((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) ∧ ((2↑𝑛) · 𝑡) = 𝑝) → ((2↑𝑛) · 𝑡) = 𝑝)
19 2nn 12341 . . . . . . . . . . . . . 14 2 ∈ ℕ
2019a1i 11 . . . . . . . . . . . . 13 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) → 2 ∈ ℕ)
2111sseli 3930 . . . . . . . . . . . . . 14 (𝑛 ∈ (bits‘(𝐴𝑡)) → 𝑛 ∈ ℕ0)
2221adantl 487 . . . . . . . . . . . . 13 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) → 𝑛 ∈ ℕ0)
2320, 22nnexpcld 14311 . . . . . . . . . . . 12 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) → (2↑𝑛) ∈ ℕ)
24 simplr 781 . . . . . . . . . . . 12 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) → 𝑡 ∈ ℕ)
2523, 24nnmulcld 12316 . . . . . . . . . . 11 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) → ((2↑𝑛) · 𝑡) ∈ ℕ)
2625adantr 486 . . . . . . . . . 10 ((((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) ∧ ((2↑𝑛) · 𝑡) = 𝑝) → ((2↑𝑛) · 𝑡) ∈ ℕ)
2718, 26eqeltrrd 2863 . . . . . . . . 9 ((((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ 𝑛 ∈ (bits‘(𝐴𝑡))) ∧ ((2↑𝑛) · 𝑡) = 𝑝) → 𝑝 ∈ ℕ)
2827rexlimdva2 3167 . . . . . . . 8 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) → (∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝𝑝 ∈ ℕ))
2928rexlimdva 3165 . . . . . . 7 (𝐴 ∈ (𝑇𝑅) → (∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝𝑝 ∈ ℕ))
3029pm4.71rd 572 . . . . . 6 (𝐴 ∈ (𝑇𝑅) → (∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 ↔ (𝑝 ∈ ℕ ∧ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)))
31 rex0 4311 . . . . . . . . . . . . . . 15 ¬ ∃𝑛 ∈ ∅ ((2↑𝑛) · 𝑡) = 𝑝
32 simplr 781 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → 𝑡 ∈ ℕ)
33 simpr 490 . . . . . . . . . . . . . . . . . . . . . 22 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → ¬ 𝑡 ∈ (𝐴 “ ℕ))
34 eulerpart.p . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝑃 = {𝑓 ∈ (ℕ0m ℕ) ∣ ((𝑓 “ ℕ) ∈ Fin ∧ Σ𝑘 ∈ ℕ ((𝑓𝑘) · 𝑘) = 𝑁)}
35 eulerpart.o . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝑂 = {𝑔𝑃 ∣ ∀𝑛 ∈ (𝑔 “ ℕ) ¬ 2 ∥ 𝑛}
36 eulerpart.d . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝐷 = {𝑔𝑃 ∣ ∀𝑛 ∈ ℕ (𝑔𝑛) ≤ 1}
37 eulerpart.h . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝐻 = {𝑟 ∈ ((𝒫 ℕ0 ∩ Fin) ↑m 𝐽) ∣ (𝑟 supp ∅) ∈ Fin}
38 eulerpart.m . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝑀 = (𝑟𝐻 ↦ {⟨𝑥, 𝑦⟩ ∣ (𝑥𝐽𝑦 ∈ (𝑟𝑥))})
39 eulerpart.r . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝑅 = {𝑓 ∣ (𝑓 “ ℕ) ∈ Fin}
40 eulerpart.t . . . . . . . . . . . . . . . . . . . . . . . . . . 27 𝑇 = {𝑓 ∈ (ℕ0m ℕ) ∣ (𝑓 “ ℕ) ⊆ 𝐽}
4134, 35, 36, 1, 2, 37, 38, 39, 40eulerpartlemt0 34867 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝐴 ∈ (𝑇𝑅) ↔ (𝐴 ∈ (ℕ0m ℕ) ∧ (𝐴 “ ℕ) ∈ Fin ∧ (𝐴 “ ℕ) ⊆ 𝐽))
4241simp1bi 1163 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝐴 ∈ (𝑇𝑅) → 𝐴 ∈ (ℕ0m ℕ))
43 elmapi 8851 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝐴 ∈ (ℕ0m ℕ) → 𝐴:ℕ⟶ℕ0)
4442, 43syl 18 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝐴 ∈ (𝑇𝑅) → 𝐴:ℕ⟶ℕ0)
4544ad2antrr 739 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → 𝐴:ℕ⟶ℕ0)
46 ffn 6706 . . . . . . . . . . . . . . . . . . . . . . 23 (𝐴:ℕ⟶ℕ0𝐴 Fn ℕ)
47 elpreima 7054 . . . . . . . . . . . . . . . . . . . . . . 23 (𝐴 Fn ℕ → (𝑡 ∈ (𝐴 “ ℕ) ↔ (𝑡 ∈ ℕ ∧ (𝐴𝑡) ∈ ℕ)))
4845, 46, 473syl 19 . . . . . . . . . . . . . . . . . . . . . 22 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (𝑡 ∈ (𝐴 “ ℕ) ↔ (𝑡 ∈ ℕ ∧ (𝐴𝑡) ∈ ℕ)))
4933, 48mtbid 327 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → ¬ (𝑡 ∈ ℕ ∧ (𝐴𝑡) ∈ ℕ))
50 imnan 405 . . . . . . . . . . . . . . . . . . . . 21 ((𝑡 ∈ ℕ → ¬ (𝐴𝑡) ∈ ℕ) ↔ ¬ (𝑡 ∈ ℕ ∧ (𝐴𝑡) ∈ ℕ))
5149, 50sylibr 237 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (𝑡 ∈ ℕ → ¬ (𝐴𝑡) ∈ ℕ))
5232, 51mpd 16 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → ¬ (𝐴𝑡) ∈ ℕ)
5345, 32ffvelcdmd 7081 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (𝐴𝑡) ∈ ℕ0)
54 elnn0 12533 . . . . . . . . . . . . . . . . . . . 20 ((𝐴𝑡) ∈ ℕ0 ↔ ((𝐴𝑡) ∈ ℕ ∨ (𝐴𝑡) = 0))
5553, 54sylib 221 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → ((𝐴𝑡) ∈ ℕ ∨ (𝐴𝑡) = 0))
56 orel1 902 . . . . . . . . . . . . . . . . . . 19 (¬ (𝐴𝑡) ∈ ℕ → (((𝐴𝑡) ∈ ℕ ∨ (𝐴𝑡) = 0) → (𝐴𝑡) = 0))
5752, 55, 56sylc 66 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (𝐴𝑡) = 0)
5857fveq2d 6886 . . . . . . . . . . . . . . . . 17 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (bits‘(𝐴𝑡)) = (bits‘0))
59 0bits 16533 . . . . . . . . . . . . . . . . 17 (bits‘0) = ∅
6058, 59eqtrdi 2813 . . . . . . . . . . . . . . . 16 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (bits‘(𝐴𝑡)) = ∅)
6160rexeqdv 3322 . . . . . . . . . . . . . . 15 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → (∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 ↔ ∃𝑛 ∈ ∅ ((2↑𝑛) · 𝑡) = 𝑝))
6231, 61mtbiri 330 . . . . . . . . . . . . . 14 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡 ∈ (𝐴 “ ℕ)) → ¬ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)
6362ex 418 . . . . . . . . . . . . 13 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) → (¬ 𝑡 ∈ (𝐴 “ ℕ) → ¬ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
6463con4d 116 . . . . . . . . . . . 12 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) → (∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝𝑡 ∈ (𝐴 “ ℕ)))
6564impr 460 . . . . . . . . . . 11 ((𝐴 ∈ (𝑇𝑅) ∧ (𝑡 ∈ ℕ ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)) → 𝑡 ∈ (𝐴 “ ℕ))
66 eldif 3912 . . . . . . . . . . . . . . . . . . . 20 (𝑡 ∈ (ℕ ∖ 𝐽) ↔ (𝑡 ∈ ℕ ∧ ¬ 𝑡𝐽))
6734, 35, 36, 1, 2, 37, 38, 39, 40eulerpartlemf 34868 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ (ℕ ∖ 𝐽)) → (𝐴𝑡) = 0)
6866, 67sylan2br 607 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ (𝑇𝑅) ∧ (𝑡 ∈ ℕ ∧ ¬ 𝑡𝐽)) → (𝐴𝑡) = 0)
6968anassrs 473 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡𝐽) → (𝐴𝑡) = 0)
7069fveq2d 6886 . . . . . . . . . . . . . . . . 17 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡𝐽) → (bits‘(𝐴𝑡)) = (bits‘0))
7170, 59eqtrdi 2813 . . . . . . . . . . . . . . . 16 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡𝐽) → (bits‘(𝐴𝑡)) = ∅)
7271rexeqdv 3322 . . . . . . . . . . . . . . 15 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡𝐽) → (∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 ↔ ∃𝑛 ∈ ∅ ((2↑𝑛) · 𝑡) = 𝑝))
7331, 72mtbiri 330 . . . . . . . . . . . . . 14 (((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) ∧ ¬ 𝑡𝐽) → ¬ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)
7473ex 418 . . . . . . . . . . . . 13 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) → (¬ 𝑡𝐽 → ¬ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
7574con4d 116 . . . . . . . . . . . 12 ((𝐴 ∈ (𝑇𝑅) ∧ 𝑡 ∈ ℕ) → (∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝𝑡𝐽))
7675impr 460 . . . . . . . . . . 11 ((𝐴 ∈ (𝑇𝑅) ∧ (𝑡 ∈ ℕ ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)) → 𝑡𝐽)
7765, 76elind 4149 . . . . . . . . . 10 ((𝐴 ∈ (𝑇𝑅) ∧ (𝑡 ∈ ℕ ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)) → 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽))
78 simprr 785 . . . . . . . . . 10 ((𝐴 ∈ (𝑇𝑅) ∧ (𝑡 ∈ ℕ ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)) → ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)
7977, 78jca 521 . . . . . . . . 9 ((𝐴 ∈ (𝑇𝑅) ∧ (𝑡 ∈ ℕ ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)) → (𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽) ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
8079ex 418 . . . . . . . 8 (𝐴 ∈ (𝑇𝑅) → ((𝑡 ∈ ℕ ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝) → (𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽) ∧ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)))
8180reximdv2 3174 . . . . . . 7 (𝐴 ∈ (𝑇𝑅) → (∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 → ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
82 ssrab2 4031 . . . . . . . . . 10 {𝑧 ∈ ℕ ∣ ¬ 2 ∥ 𝑧} ⊆ ℕ
831, 82eqsstri 3980 . . . . . . . . 9 𝐽 ⊆ ℕ
848, 83sstri 3943 . . . . . . . 8 ((𝐴 “ ℕ) ∩ 𝐽) ⊆ ℕ
85 ssrexv 4004 . . . . . . . 8 (((𝐴 “ ℕ) ∩ 𝐽) ⊆ ℕ → (∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 → ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
8684, 85mp1i 14 . . . . . . 7 (𝐴 ∈ (𝑇𝑅) → (∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 → ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
8781, 86impbid 215 . . . . . 6 (𝐴 ∈ (𝑇𝑅) → (∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝 ↔ ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
8830, 87bitr3d 284 . . . . 5 (𝐴 ∈ (𝑇𝑅) → ((𝑝 ∈ ℕ ∧ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝) ↔ ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
89 eqeq2 2774 . . . . . . . 8 (𝑚 = 𝑝 → (((2↑𝑛) · 𝑡) = 𝑚 ↔ ((2↑𝑛) · 𝑡) = 𝑝))
90892rexbidv 3229 . . . . . . 7 (𝑚 = 𝑝 → (∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚 ↔ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
9190elrab 3648 . . . . . 6 (𝑝 ∈ {𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚} ↔ (𝑝 ∈ ℕ ∧ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
9291a1i 11 . . . . 5 (𝐴 ∈ (𝑇𝑅) → (𝑝 ∈ {𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚} ↔ (𝑝 ∈ ℕ ∧ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)))
936imaeq2i 6058 . . . . . . . . 9 (𝐹𝑈) = (𝐹 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡))))
94 imaiun 7245 . . . . . . . . 9 (𝐹 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴𝑡)))) = 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)(𝐹 “ ({𝑡} × (bits‘(𝐴𝑡))))
9593, 94eqtri 2785 . . . . . . . 8 (𝐹𝑈) = 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)(𝐹 “ ({𝑡} × (bits‘(𝐴𝑡))))
9695eleq2i 2854 . . . . . . 7 (𝑝 ∈ (𝐹𝑈) ↔ 𝑝 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)(𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))))
97 eliun 4958 . . . . . . 7 (𝑝 𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)(𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))))
98 f1ofn 6822 . . . . . . . . . . . . 13 (𝐹:(𝐽 × ℕ0)–1-1-onto→ℕ → 𝐹 Fn (𝐽 × ℕ0))
993, 98ax-mp 5 . . . . . . . . . . . 12 𝐹 Fn (𝐽 × ℕ0)
100 snssi 4749 . . . . . . . . . . . . 13 (𝑡𝐽 → {𝑡} ⊆ 𝐽)
101100, 11, 12sylancl 598 . . . . . . . . . . . 12 (𝑡𝐽 → ({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0))
102 ovelimab 7595 . . . . . . . . . . . 12 ((𝐹 Fn (𝐽 × ℕ0) ∧ ({𝑡} × (bits‘(𝐴𝑡))) ⊆ (𝐽 × ℕ0)) → (𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑥 ∈ {𝑡}∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑥𝐹𝑛)))
10399, 101, 102sylancr 599 . . . . . . . . . . 11 (𝑡𝐽 → (𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑥 ∈ {𝑡}∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑥𝐹𝑛)))
104 vex 3457 . . . . . . . . . . . 12 𝑡 ∈ V
105 oveq1 7423 . . . . . . . . . . . . . 14 (𝑥 = 𝑡 → (𝑥𝐹𝑛) = (𝑡𝐹𝑛))
106105eqeq2d 2773 . . . . . . . . . . . . 13 (𝑥 = 𝑡 → (𝑝 = (𝑥𝐹𝑛) ↔ 𝑝 = (𝑡𝐹𝑛)))
107106rexbidv 3188 . . . . . . . . . . . 12 (𝑥 = 𝑡 → (∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑥𝐹𝑛) ↔ ∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑡𝐹𝑛)))
108104, 107rexsn 4646 . . . . . . . . . . 11 (∃𝑥 ∈ {𝑡}∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑥𝐹𝑛) ↔ ∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑡𝐹𝑛))
109103, 108bitrdi 290 . . . . . . . . . 10 (𝑡𝐽 → (𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑡𝐹𝑛)))
110 df-ov 7419 . . . . . . . . . . . . . . 15 (𝑡𝐹𝑛) = (𝐹‘⟨𝑡, 𝑛⟩)
111110eqeq1i 2767 . . . . . . . . . . . . . 14 ((𝑡𝐹𝑛) = 𝑝 ↔ (𝐹‘⟨𝑡, 𝑛⟩) = 𝑝)
112 eqcom 2769 . . . . . . . . . . . . . 14 ((𝑡𝐹𝑛) = 𝑝𝑝 = (𝑡𝐹𝑛))
113111, 112bitr3i 280 . . . . . . . . . . . . 13 ((𝐹‘⟨𝑡, 𝑛⟩) = 𝑝𝑝 = (𝑡𝐹𝑛))
114 opelxpi 5696 . . . . . . . . . . . . . . 15 ((𝑡𝐽𝑛 ∈ ℕ0) → ⟨𝑡, 𝑛⟩ ∈ (𝐽 × ℕ0))
1151, 2oddpwdcv 34853 . . . . . . . . . . . . . . . 16 (⟨𝑡, 𝑛⟩ ∈ (𝐽 × ℕ0) → (𝐹‘⟨𝑡, 𝑛⟩) = ((2↑(2nd ‘⟨𝑡, 𝑛⟩)) · (1st ‘⟨𝑡, 𝑛⟩)))
116 vex 3457 . . . . . . . . . . . . . . . . . . 19 𝑛 ∈ V
117104, 116op2nd 7998 . . . . . . . . . . . . . . . . . 18 (2nd ‘⟨𝑡, 𝑛⟩) = 𝑛
118117oveq2i 7427 . . . . . . . . . . . . . . . . 17 (2↑(2nd ‘⟨𝑡, 𝑛⟩)) = (2↑𝑛)
119104, 116op1st 7997 . . . . . . . . . . . . . . . . 17 (1st ‘⟨𝑡, 𝑛⟩) = 𝑡
120118, 119oveq12i 7428 . . . . . . . . . . . . . . . 16 ((2↑(2nd ‘⟨𝑡, 𝑛⟩)) · (1st ‘⟨𝑡, 𝑛⟩)) = ((2↑𝑛) · 𝑡)
121115, 120eqtrdi 2813 . . . . . . . . . . . . . . 15 (⟨𝑡, 𝑛⟩ ∈ (𝐽 × ℕ0) → (𝐹‘⟨𝑡, 𝑛⟩) = ((2↑𝑛) · 𝑡))
122114, 121syl 18 . . . . . . . . . . . . . 14 ((𝑡𝐽𝑛 ∈ ℕ0) → (𝐹‘⟨𝑡, 𝑛⟩) = ((2↑𝑛) · 𝑡))
123122eqeq1d 2764 . . . . . . . . . . . . 13 ((𝑡𝐽𝑛 ∈ ℕ0) → ((𝐹‘⟨𝑡, 𝑛⟩) = 𝑝 ↔ ((2↑𝑛) · 𝑡) = 𝑝))
124113, 123bitr3id 288 . . . . . . . . . . . 12 ((𝑡𝐽𝑛 ∈ ℕ0) → (𝑝 = (𝑡𝐹𝑛) ↔ ((2↑𝑛) · 𝑡) = 𝑝))
12521, 124sylan2 605 . . . . . . . . . . 11 ((𝑡𝐽𝑛 ∈ (bits‘(𝐴𝑡))) → (𝑝 = (𝑡𝐹𝑛) ↔ ((2↑𝑛) · 𝑡) = 𝑝))
126125rexbidva 3186 . . . . . . . . . 10 (𝑡𝐽 → (∃𝑛 ∈ (bits‘(𝐴𝑡))𝑝 = (𝑡𝐹𝑛) ↔ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
127109, 126bitrd 282 . . . . . . . . 9 (𝑡𝐽 → (𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
1289, 127syl 18 . . . . . . . 8 (𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽) → (𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
129128rexbiia 3109 . . . . . . 7 (∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)𝑝 ∈ (𝐹 “ ({𝑡} × (bits‘(𝐴𝑡)))) ↔ ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)
13096, 97, 1293bitri 300 . . . . . 6 (𝑝 ∈ (𝐹𝑈) ↔ ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝)
131130a1i 11 . . . . 5 (𝐴 ∈ (𝑇𝑅) → (𝑝 ∈ (𝐹𝑈) ↔ ∃𝑡 ∈ ((𝐴 “ ℕ) ∩ 𝐽)∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑝))
13288, 92, 1313bitr4rd 315 . . . 4 (𝐴 ∈ (𝑇𝑅) → (𝑝 ∈ (𝐹𝑈) ↔ 𝑝 ∈ {𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚}))
133132eqrdv 2760 . . 3 (𝐴 ∈ (𝑇𝑅) → (𝐹𝑈) = {𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚})
134 f1oeq3 6811 . . 3 ((𝐹𝑈) = {𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚} → ((𝐹𝑈):𝑈1-1-onto→(𝐹𝑈) ↔ (𝐹𝑈):𝑈1-1-onto→{𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚}))
135133, 134syl 18 . 2 (𝐴 ∈ (𝑇𝑅) → ((𝐹𝑈):𝑈1-1-onto→(𝐹𝑈) ↔ (𝐹𝑈):𝑈1-1-onto→{𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚}))
13617, 135mpbii 236 1 (𝐴 ∈ (𝑇𝑅) → (𝐹𝑈):𝑈1-1-onto→{𝑚 ∈ ℕ ∣ ∃𝑡 ∈ ℕ ∃𝑛 ∈ (bits‘(𝐴𝑡))((2↑𝑛) · 𝑡) = 𝑚})
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3  wi 4  wb 209  wa 401  wo 861   = wceq 1570  wcel 2145  {cab 2740  wral 3078  wrex 3088  {crab 3414  cdif 3899  cin 3901  wss 3902  c0 4282  𝒫 cpw 4560  {csn 4587  cop 4593   ciun 4954   class class class wbr 5107  {copab 5171  cmpt 5190   × cxp 5657  ccnv 5658  cres 5661  cima 5662  ccom 5663   Fn wfn 6532  wf 6533  1-1wf1 6534  1-1-ontowf1o 6536  cfv 6537  (class class class)co 7416  cmpo 7418  1st c1st 7987  2nd c2nd 7988   supp csupp 8161  m cmap 8829  Fincfn 8955  0cc0 11127  1c1 11128   · cmul 11132  cle 11271  𝟭cind 12245  cn 12260  2c2 12322  0cn0 12531  cexp 14127  Σcsu 15775  cdvds 16346  bitscbits 16513
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2734  ax-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7739  ax-cnex 11183  ax-resscn 11184  ax-1cn 11185  ax-icn 11186  ax-addcl 11187  ax-addrcl 11188  ax-mulcl 11189  ax-mulrcl 11190  ax-mulcom 11191  ax-addass 11192  ax-mulass 11193  ax-distr 11194  ax-i2m1 11195  ax-1ne0 11196  ax-1rid 11197  ax-rnegex 11198  ax-rrecex 11199  ax-cnre 11200  ax-pre-lttri 11201  ax-pre-lttrn 11202  ax-pre-ltadd 11203  ax-pre-mulgt0 11204  ax-pre-sup 11205
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-nel 3064  df-ral 3079  df-rex 3089  df-rmo 3367  df-reu 3368  df-rab 3415  df-v 3455  df-sbc 3743  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4283  df-if 4486  df-pw 4562  df-sn 4588  df-pr 4590  df-op 4594  df-uni 4871  df-iun 4956  df-br 5108  df-opab 5172  df-mpt 5191  df-tr 5217  df-id 5554  df-eprel 5559  df-po 5567  df-so 5568  df-fr 5612  df-we 5614  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-rn 5670  df-res 5671  df-ima 5672  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-riota 7373  df-ov 7419  df-oprab 7420  df-mpo 7421  df-om 7866  df-1st 7989  df-2nd 7990  df-frecs 8283  df-wrecs 8314  df-recs 8363  df-rdg 8402  df-1o 8458  df-er 8699  df-map 8831  df-en 8956  df-dom 8957  df-sdom 8958  df-fin 8959  df-sup 9415  df-inf 9416  df-pnf 11272  df-mnf 11273  df-xr 11274  df-ltxr 11275  df-le 11276  df-sub 11470  df-neg 11471  df-div 11899  df-nn 12261  df-2 12330  df-n0 12532  df-z 12619  df-uz 12891  df-rp 13045  df-fz 13564  df-fzo 13712  df-fl 13855  df-seq 14068  df-exp 14128  df-dvds 16347  df-bits 16516
This theorem is used by:  eulerpartlemgs2  34878
  Copyright terms: Public domain W3C validator