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 35079
Description: Lemma for eulerpart 35084: Rewriting the 𝑈 set for an odd partition Note that interestingly, this proof reuses marypha2lem2 9455. (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 35071 . . . . . . . . . 10 (𝐴 ∈ (𝑇 ∩ 𝑅) ↔ (𝐴 ∈ (ℕ0 ↑m ℕ) ∧ (◡𝐴 “ ℕ) ∈ Fin ∧ (◡𝐴 “ ℕ) ⊆ 𝐽))
1211simp1bi 1163 . . . . . . . . 9 (𝐴 ∈ (𝑇 ∩ 𝑅) → 𝐴 ∈ (ℕ0 ↑m ℕ))
13 elmapi 8897 . . . . . . . . 9 (𝐴 ∈ (ℕ0 ↑m ℕ) → 𝐴:ℕ⟶ℕ0)
1412, 13syl 18 . . . . . . . 8 (𝐴 ∈ (𝑇 ∩ 𝑅) → 𝐴:ℕ⟶ℕ0)
1514adantr 486 . . . . . . 7 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → 𝐴:ℕ⟶ℕ0)
1615ffund 6736 . . . . . 6 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → Fun 𝐴)
17 inss1 4136 . . . . . . . . 9 ((◡𝐴 “ ℕ) ∩ 𝐽) ⊆ (◡𝐴 “ ℕ)
18 cnvimass 6211 . . . . . . . . . 10 (◡𝐴 “ ℕ) ⊆ dom 𝐴
1918, 14fssdm 6751 . . . . . . . . 9 (𝐴 ∈ (𝑇 ∩ 𝑅) → (◡𝐴 “ ℕ) ⊆ ℕ)
2017, 19sstrid 3924 . . . . . . . 8 (𝐴 ∈ (𝑇 ∩ 𝑅) → ((◡𝐴 “ ℕ) ∩ 𝐽) ⊆ ℕ)
2120sselda 3913 . . . . . . 7 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → 𝑡 ∈ ℕ)
2214fdmd 6742 . . . . . . . . 9 (𝐴 ∈ (𝑇 ∩ 𝑅) → dom 𝐴 = ℕ)
2322eleq2d 2850 . . . . . . . 8 (𝐴 ∈ (𝑇 ∩ 𝑅) → (𝑡 ∈ dom 𝐴 ↔ 𝑡 ∈ ℕ))
2423adantr 486 . . . . . . 7 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → (𝑡 ∈ dom 𝐴 ↔ 𝑡 ∈ ℕ))
2521, 24mpbird 260 . . . . . 6 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → 𝑡 ∈ dom 𝐴)
26 fvco 7006 . . . . . 6 ((Fun 𝐴 ∧ 𝑡 ∈ dom 𝐴) → ((bits ∘ 𝐴)‘𝑡) = (bits‘(𝐴‘𝑡)))
2716, 25, 26syl2anc 596 . . . . 5 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → ((bits ∘ 𝐴)‘𝑡) = (bits‘(𝐴‘𝑡)))
2827xpeq2d 5685 . . . 4 ((𝐴 ∈ (𝑇 ∩ 𝑅) ∧ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)) → ({𝑡} × ((bits ∘ 𝐴)‘𝑡)) = ({𝑡} × (bits‘(𝐴‘𝑡))))
2928iuneq2dv 4979 . . 3 (𝐴 ∈ (𝑇 ∩ 𝑅) → ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × ((bits ∘ 𝐴)‘𝑡)) = ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴‘𝑡))))
30 eqid 2763 . . . 4 ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × ((bits ∘ 𝐴)‘𝑡)) = ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × ((bits ∘ 𝐴)‘𝑡))
3130marypha2lem2 9455 . . 3 ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × ((bits ∘ 𝐴)‘𝑡)) = {⟨𝑡, 𝑛⟩ ∣ (𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽) ∧ 𝑛 ∈ ((bits ∘ 𝐴)‘𝑡))}
3229, 31eqtr3di 2813 . 2 (𝐴 ∈ (𝑇 ∩ 𝑅) → ∪ 𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽)({𝑡} × (bits‘(𝐴‘𝑡))) = {⟨𝑡, 𝑛⟩ ∣ (𝑡 ∈ ((◡𝐴 “ ℕ) ∩ 𝐽) ∧ 𝑛 ∈ ((bits ∘ 𝐴)‘𝑡))})
331, 32eqtrid 2810 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 2147  {cab 2741  ∀wral 3080  {crab 3416   ⊆ wss 3900   ∩ cin 4092  ∅c0 4281  𝒫 cpw 4560  {csn 4588  ∪ ciun 4954   class class class wbr 5106  {copab 5170   ↦ cmpt 5189   × cxp 5653  ◡ccnv 5654  dom cdm 5655   ↾ cres 5657   “ cima 5658   ∘ ccom 5659  Fun wfun 6552  ⟶wf 6554  ‘cfv 6558  (class class class)co 7443   ∈ cmpo 7445   supp csupp 8204   ↑m cmap 8875  Fincfn 9001  1c1 11228   · cmul 11232   ≤ cle 11371  𝟭cind 12347  ℕcn 12362  2c2 12424  ℕ0cn0 12633  ↑cexp 14231  Σcsu 15882   ∥ cdvds 16451  bitscbits 16618
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-sep 5252  ax-nul 5263  ax-pow 5331  ax-pr 5395  ax-un 7775
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 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-iun 4956  df-br 5107  df-opab 5171  df-mpt 5190  df-id 5550  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-iota 6512  df-fun 6560  df-fn 6561  df-f 6562  df-fv 6566  df-ov 7446  df-oprab 7447  df-mpo 7448  df-1st 8025  df-2nd 8026  df-map 8877
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator