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

Theorem eulerpartlemgu 34992
Description: Lemma for eulerpart 34997: Rewriting the 𝑈 set for an odd partition Note that interestingly, this proof reuses marypha2lem2 9412. (Contributed by Thierry Arnoux, 10-Aug-2018.)
Hypotheses
Ref Expression
eulerpart.p 𝑃 = {𝑓 ∈ (ℕ0 ↑m ℕ) ∣ ((◡𝑓 “ ℕ) ∈ 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 𝑇 = {𝑓 ∈ (ℕ0 ↑m ℕ) ∣ (◡𝑓 “ ℕ) ⊆ 𝐽}
eulerpart.g 𝐺 = (𝑜 ∈ (𝑇 ∩ 𝑅) ↦ ((𝟭‘ℕ)‘(𝐹 “ (𝑀‘(bits ∘ (𝑜 ↾ 𝐽))))))
eulerpartlemgh.1 𝑈 = ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴‘𝑡)))
Assertion
Ref Expression
eulerpartlemgu (𝐴 ∈ (𝑇 ∩ 𝑅) → 𝑈 = {⟨𝑡, 𝑛⟩ ∣ (𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽) ∧ 𝑛 ∈ ((bits ∘ 𝐴)‘𝑡))})
Distinct variable groups:   𝑧,𝑡   𝑓,𝑔,𝑘,𝑛,𝑡,𝐴   𝑓,𝐽,𝑛,𝑡   𝑓,𝑁,𝑘,𝑛,𝑡   𝑛,𝑂,𝑡   𝑃,𝑔,𝑘   𝑅,𝑓,𝑘,𝑛,𝑡   𝑇,𝑛,𝑡
Allowed substitution hints:   𝐴(𝑥, 𝑦, 𝑧, 𝑜, 𝑟)   𝐷(𝑥, 𝑦, 𝑧, 𝑡, 𝑓, 𝑔, 𝑘, 𝑛, 𝑜, 𝑟)   𝑃(𝑥, 𝑦, 𝑧, 𝑡, 𝑓, 𝑛, 𝑜, 𝑟)   𝑅(𝑥, 𝑦, 𝑧, 𝑔, 𝑜, 𝑟)   𝑇(𝑥, 𝑦, 𝑧, 𝑓, 𝑔, 𝑘, 𝑜, 𝑟)   𝑈(𝑥, 𝑦, 𝑧, 𝑡, 𝑓, 𝑔, 𝑘, 𝑛, 𝑜, 𝑟)   𝐹(𝑥, 𝑦, 𝑧, 𝑡, 𝑓, 𝑔, 𝑘, 𝑛, 𝑜, 𝑟)   𝐺(𝑥, 𝑦, 𝑧, 𝑡, 𝑓, 𝑔, 𝑘, 𝑛, 𝑜, 𝑟)   𝐻(𝑥, 𝑦, 𝑧, 𝑡, 𝑓, 𝑔, 𝑘, 𝑛, 𝑜, 𝑟)   𝐽(𝑥, 𝑦, 𝑧, 𝑔, 𝑘, 𝑜, 𝑟)   𝑀(𝑥, 𝑦, 𝑧, 𝑡, 𝑓, 𝑔, 𝑘, 𝑛, 𝑜, 𝑟)   𝑁(𝑥, 𝑦, 𝑧, 𝑔, 𝑜, 𝑟)   𝑂(𝑥, 𝑦, 𝑧, 𝑓, 𝑔, 𝑘, 𝑜, 𝑟)

Proof of Theorem eulerpartlemgu
StepHypRef Expression
1 eulerpartlemgh.1 . 2 𝑈 = ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴‘𝑡)))
2 eulerpart.p . . . . . . . . . . 11 𝑃 = {𝑓 ∈ (ℕ0 ↑m ℕ) ∣ ((◡𝑓 “ ℕ) ∈ Fin ∧ Σ𝑘 ∈ ℕ ((𝑓‘𝑘) · 𝑘) = 𝑁)}
3 eulerpart.o . . . . . . . . . . 11 𝑂 = {𝑔 ∈ 𝑃 ∣ ∀𝑛 ∈ (◡𝑔 “ ℕ) ¬ 2 ∥ 𝑛}
4 eulerpart.d . . . . . . . . . . 11 𝐷 = {𝑔 ∈ 𝑃 ∣ ∀𝑛 ∈ ℕ (𝑔‘𝑛) ≤ 1}
5 eulerpart.j . . . . . . . . . . 11 𝐽 = {𝑧 ∈ ℕ ∣ ¬ 2 ∥ 𝑧}
6 eulerpart.f . . . . . . . . . . 11 𝐹 = (𝑥 ∈ 𝐽, 𝑦 ∈ ℕ0 ↦ ((2↑𝑦) · 𝑥))
7 eulerpart.h . . . . . . . . . . 11 𝐻 = {𝑟 ∈ ((𝒫 ℕ0 ∩ Fin) ↑m 𝐽) ∣ (𝑟 supp ∅) ∈ Fin}
8 eulerpart.m . . . . . . . . . . 11 𝑀 = (𝑟 ∈ 𝐻 ↦ {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ 𝐽 ∧ 𝑦 ∈ (𝑟‘𝑥))})
9 eulerpart.r . . . . . . . . . . 11 𝑅 = {𝑓 ∣ (◡𝑓 “ ℕ) ∈ Fin}
10 eulerpart.t . . . . . . . . . . 11 𝑇 = {𝑓 ∈ (ℕ0 ↑m ℕ) ∣ (◡𝑓 “ ℕ) ⊆ 𝐽}
112, 3, 4, 5, 6, 7, 8, 9, 10eulerpartlemt0 34984 . . . . . . . . . 10 (𝐴 ∈ (𝑇 ∩ 𝑅) ↔ (𝐴 ∈ (ℕ0 ↑m ℕ) ∧ (◡𝐴 “ ℕ) ∈ Fin ∧ (◡𝐴 “ ℕ) ⊆ 𝐽))
1211simp1bi 1163 . . . . . . . . 9 (𝐴 ∈ (𝑇 ∩ 𝑅) → 𝐴 ∈ (ℕ0 ↑m ℕ))
13 elmapi 8853 . . . . . . . . 9 (𝐴 ∈ (ℕ0 ↑m ℕ) → 𝐴:ℕ⟶ℕ0)
1412, 13syl 18 . . . . . . . 8 (𝐴 ∈ (𝑇 ∩ 𝑅) → 𝐴:ℕ⟶ℕ0)
1514adantr 486 . . . . . . 7 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → 𝐴:ℕ⟶ℕ0)
1615ffund 6706 . . . . . 6 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → Fun 𝐴)
17 inss1 4182 . . . . . . . . 9 ((◡𝐴 “ ℕ) ∩ 𝐽) ⊆ (◡𝐴 “ ℕ)
18 cnvimass 6076 . . . . . . . . . 10 (◡𝐴 “ ℕ) ⊆ dom 𝐴
1918, 14fssdm 6721 . . . . . . . . 9 (𝐴 ∈ (𝑇 ∩ 𝑅) → (◡𝐴 “ ℕ) ⊆ ℕ)
2017, 19sstrid 3942 . . . . . . . 8 (𝐴 ∈ (𝑇 ∩ 𝑅) → ((◡𝐴 “ ℕ) ∩ 𝐽) ⊆ ℕ)
2120sselda 3931 . . . . . . 7 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → 𝑡 ∈ ℕ)
2214fdmd 6712 . . . . . . . . 9 (𝐴 ∈ (𝑇 ∩ 𝑅) → dom 𝐴 = ℕ)
2322eleq2d 2847 . . . . . . . 8 (𝐴 ∈ (𝑇 ∩ 𝑅) → (𝑡 ∈ dom 𝐴 ↔ 𝑡 ∈ ℕ))
2423adantr 486 . . . . . . 7 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → (𝑡 ∈ dom 𝐴 ↔ 𝑡 ∈ ℕ))
2521, 24mpbird 260 . . . . . 6 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → 𝑡 ∈ dom 𝐴)
26 fvco 6975 . . . . . 6 ((Fun 𝐴 ∧ 𝑡 ∈ dom 𝐴) → ((bits ∘ 𝐴)‘𝑡) = (bits‘(𝐴‘𝑡)))
2716, 25, 26syl2anc 596 . . . . 5 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → ((bits ∘ 𝐴)‘𝑡) = (bits‘(𝐴‘𝑡)))
2827xpeq2d 5681 . . . 4 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → ({𝑡} × ((bits ∘ 𝐴)‘𝑡)) = ({𝑡} × (bits‘(𝐴‘𝑡))))
2928iuneq2dv 4976 . . 3 (𝐴 ∈ (𝑇 ∩ 𝑅) → ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × ((bits ∘ 𝐴)‘𝑡)) = ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴‘𝑡))))
30 eqid 2761 . . . 4 ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × ((bits ∘ 𝐴)‘𝑡)) = ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × ((bits ∘ 𝐴)‘𝑡))
3130marypha2lem2 9412 . . 3 ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × ((bits ∘ 𝐴)‘𝑡)) = {⟨𝑡, 𝑛⟩ ∣ (𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽) ∧ 𝑛 ∈ ((bits ∘ 𝐴)‘𝑡))}
3229, 31eqtr3di 2811 . 2 (𝐴 ∈ (𝑇 ∩ 𝑅) → ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴‘𝑡))) = {⟨𝑡, 𝑛⟩ ∣ (𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽) ∧ 𝑛 ∈ ((bits ∘ 𝐴)‘𝑡))})
331, 32eqtrid 2808 1 (𝐴 ∈ (𝑇 ∩ 𝑅) → 𝑈 = {⟨𝑡, 𝑛⟩ ∣ (𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽) ∧ 𝑛 ∈ ((bits ∘ 𝐴)‘𝑡))})
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 209   ∧ wa 401   = wceq 1570   ∈ wcel 2145  {cab 2739  ∀wral 3077  {crab 3413   ∩ cin 3898   ⊆ wss 3899  ∅c0 4279  𝒫 cpw 4557  {csn 4584  ∪ ciun 4951   class class class wbr 5103  {copab 5167   ↦ cmpt 5186   × cxp 5649  ◡ccnv 5650  dom cdm 5651   ↾ cres 5653   “ cima 5654   ∘ ccom 5655  Fun wfun 6525  ⟶wf 6527  ‘cfv 6531  (class class class)co 7412   ∈ cmpo 7414   supp csupp 8161   ↑m cmap 8831  Fincfn 8957  1c1 11182   · cmul 11186   ≤ cle 11325  𝟭cind 12301  ℕcn 12316  2c2 12378  ℕ0cn0 12587  ↑cexp 14184  Σcsu 15833   ∥ cdvds 16402  bitscbits 16569
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 2213  ax-ext 2733  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7740
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-ral 3078  df-rex 3088  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-id 5546  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-iota 6487  df-fun 6533  df-fn 6534  df-f 6535  df-fv 6539  df-ov 7415  df-oprab 7416  df-mpo 7417  df-1st 7990  df-2nd 7991  df-map 8833
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator