| Mathbox for metakunt |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > Mathboxes > sticksstones20 | Structured version Visualization version GIF version | ||
| Description: Lift sticks and stones to arbitrary finite non-empty sets. (Contributed by metakunt, 24-Oct-2024.) |
| Ref | Expression |
|---|---|
| sticksstones20.1 | ⊢ (𝜑 → 𝑁 ∈ ℕ0) |
| sticksstones20.2 | ⊢ (𝜑 → 𝑆 ∈ Fin) |
| sticksstones20.3 | ⊢ (𝜑 → 𝐾 ∈ ℕ) |
| sticksstones20.4 | ⊢ 𝐴 = {𝑔 ∣ (𝑔:(1...𝐾)⟶ℕ0 ∧ Σ𝑖 ∈ (1...𝐾)(𝑔‘𝑖) = 𝑁)} |
| sticksstones20.5 | ⊢ 𝐵 = {ℎ ∣ (ℎ:𝑆⟶ℕ0 ∧ Σ𝑖 ∈ 𝑆 (ℎ‘𝑖) = 𝑁)} |
| sticksstones20.6 | ⊢ (𝜑 → (♯‘𝑆) = 𝐾) |
| Ref | Expression |
|---|---|
| sticksstones20 | ⊢ (𝜑 → (♯‘𝐵) = ((𝑁 + (𝐾 − 1))C(𝐾 − 1))) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | sticksstones20.2 | . . . . . . 7 ⊢ (𝜑 → 𝑆 ∈ Fin) | |
| 2 | isfinite4 14530 | . . . . . . . 8 ⊢ (𝑆 ∈ Fin ↔ (1...(♯‘𝑆)) ≈ 𝑆) | |
| 3 | bren 9008 | . . . . . . . 8 ⊢ ((1...(♯‘𝑆)) ≈ 𝑆 ↔ ∃𝑝 𝑝:(1...(♯‘𝑆))⟶1-1onto𝑆) | |
| 4 | 2, 3 | sylbb 222 | . . . . . . 7 ⊢ (𝑆 ∈ Fin → ∃𝑝 𝑝:(1...(♯‘𝑆))⟶1-1onto𝑆) |
| 5 | 1, 4 | syl 18 | . . . . . 6 ⊢ (𝜑 → ∃𝑝 𝑝:(1...(♯‘𝑆))⟶1-1onto𝑆) |
| 6 | sticksstones20.6 | . . . . . . . . . 10 ⊢ (𝜑 → (♯‘𝑆) = 𝐾) | |
| 7 | 6 | oveq2d 7456 | . . . . . . . . 9 ⊢ (𝜑 → (1...(♯‘𝑆)) = (1...𝐾)) |
| 8 | 7 | f1oeq2d 6839 | . . . . . . . 8 ⊢ (𝜑 → (𝑝:(1...(♯‘𝑆))⟶1-1onto𝑆 ↔ 𝑝:(1...𝐾)⟶1-1onto𝑆)) |
| 9 | 8 | biimpd 232 | . . . . . . 7 ⊢ (𝜑 → (𝑝:(1...(♯‘𝑆))⟶1-1onto𝑆 → 𝑝:(1...𝐾)⟶1-1onto𝑆)) |
| 10 | 9 | eximdv 1952 | . . . . . 6 ⊢ (𝜑 → (∃𝑝 𝑝:(1...(♯‘𝑆))⟶1-1onto𝑆 → ∃𝑝 𝑝:(1...𝐾)⟶1-1onto𝑆)) |
| 11 | 5, 10 | mpd 16 | . . . . 5 ⊢ (𝜑 → ∃𝑝 𝑝:(1...𝐾)⟶1-1onto𝑆) |
| 12 | sticksstones20.4 | . . . . . . . . . . 11 ⊢ 𝐴 = {𝑔 ∣ (𝑔:(1...𝐾)⟶ℕ0 ∧ Σ𝑖 ∈ (1...𝐾)(𝑔‘𝑖) = 𝑁)} | |
| 13 | 12 | a1i 11 | . . . . . . . . . 10 ⊢ (𝜑 → 𝐴 = {𝑔 ∣ (𝑔:(1...𝐾)⟶ℕ0 ∧ Σ𝑖 ∈ (1...𝐾)(𝑔‘𝑖) = 𝑁)}) |
| 14 | fzfid 14140 | . . . . . . . . . . . 12 ⊢ (𝜑 → (1...𝐾) ∈ Fin) | |
| 15 | nn0ex 12636 | . . . . . . . . . . . . 13 ⊢ ℕ0 ∈ V | |
| 16 | 15 | a1i 11 | . . . . . . . . . . . 12 ⊢ (𝜑 → ℕ0 ∈ V) |
| 17 | mapex 7973 | . . . . . . . . . . . 12 ⊢ (((1...𝐾) ∈ Fin ∧ ℕ0 ∈ V) → {𝑔 ∣ 𝑔:(1...𝐾)⟶ℕ0} ∈ V) | |
| 18 | 14, 16, 17 | syl2anc 596 | . . . . . . . . . . 11 ⊢ (𝜑 → {𝑔 ∣ 𝑔:(1...𝐾)⟶ℕ0} ∈ V) |
| 19 | simprl 783 | . . . . . . . . . . . . 13 ⊢ ((𝜑 ∧ (𝑔:(1...𝐾)⟶ℕ0 ∧ Σ𝑖 ∈ (1...𝐾)(𝑔‘𝑖) = 𝑁)) → 𝑔:(1...𝐾)⟶ℕ0) | |
| 20 | 19 | ex 418 | . . . . . . . . . . . 12 ⊢ (𝜑 → ((𝑔:(1...𝐾)⟶ℕ0 ∧ Σ𝑖 ∈ (1...𝐾)(𝑔‘𝑖) = 𝑁) → 𝑔:(1...𝐾)⟶ℕ0)) |
| 21 | 20 | ss2abdv 3993 | . . . . . . . . . . 11 ⊢ (𝜑 → {𝑔 ∣ (𝑔:(1...𝐾)⟶ℕ0 ∧ Σ𝑖 ∈ (1...𝐾)(𝑔‘𝑖) = 𝑁)} ⊆ {𝑔 ∣ 𝑔:(1...𝐾)⟶ℕ0}) |
| 22 | 18, 21 | ssexd 5290 | . . . . . . . . . 10 ⊢ (𝜑 → {𝑔 ∣ (𝑔:(1...𝐾)⟶ℕ0 ∧ Σ𝑖 ∈ (1...𝐾)(𝑔‘𝑖) = 𝑁)} ∈ V) |
| 23 | 13, 22 | eqeltrd 2864 | . . . . . . . . 9 ⊢ (𝜑 → 𝐴 ∈ V) |
| 24 | 23 | adantr 486 | . . . . . . . 8 ⊢ ((𝜑 ∧ 𝑝:(1...𝐾)⟶1-1onto𝑆) → 𝐴 ∈ V) |
| 25 | 24 | mptexd 7250 | . . . . . . 7 ⊢ ((𝜑 ∧ 𝑝:(1...𝐾)⟶1-1onto𝑆) → (𝑎 ∈ 𝐴 ↦ (𝑥 ∈ 𝑆 ↦ (𝑎‘(◡𝑝‘𝑥)))) ∈ V) |
| 26 | sticksstones20.1 | . . . . . . . . 9 ⊢ (𝜑 → 𝑁 ∈ ℕ0) | |
| 27 | 26 | adantr 486 | . . . . . . . 8 ⊢ ((𝜑 ∧ 𝑝:(1...𝐾)⟶1-1onto𝑆) → 𝑁 ∈ ℕ0) |
| 28 | sticksstones20.3 | . . . . . . . . . 10 ⊢ (𝜑 → 𝐾 ∈ ℕ) | |
| 29 | 28 | nnnn0d 12691 | . . . . . . . . 9 ⊢ (𝜑 → 𝐾 ∈ ℕ0) |
| 30 | 29 | adantr 486 | . . . . . . . 8 ⊢ ((𝜑 ∧ 𝑝:(1...𝐾)⟶1-1onto𝑆) → 𝐾 ∈ ℕ0) |
| 31 | sticksstones20.5 | . . . . . . . 8 ⊢ 𝐵 = {ℎ ∣ (ℎ:𝑆⟶ℕ0 ∧ Σ𝑖 ∈ 𝑆 (ℎ‘𝑖) = 𝑁)} | |
| 32 | simpr 490 | . . . . . . . 8 ⊢ ((𝜑 ∧ 𝑝:(1...𝐾)⟶1-1onto𝑆) → 𝑝:(1...𝐾)⟶1-1onto𝑆) | |
| 33 | eqid 2763 | . . . . . . . 8 ⊢ (𝑎 ∈ 𝐴 ↦ (𝑥 ∈ 𝑆 ↦ (𝑎‘(◡𝑝‘𝑥)))) = (𝑎 ∈ 𝐴 ↦ (𝑥 ∈ 𝑆 ↦ (𝑎‘(◡𝑝‘𝑥)))) | |
| 34 | eqid 2763 | . . . . . . . 8 ⊢ (𝑏 ∈ 𝐵 ↦ (𝑦 ∈ (1...𝐾) ↦ (𝑏‘(𝑝‘𝑦)))) = (𝑏 ∈ 𝐵 ↦ (𝑦 ∈ (1...𝐾) ↦ (𝑏‘(𝑝‘𝑦)))) | |
| 35 | 27, 30, 12, 31, 32, 33, 34 | sticksstones19 43406 | . . . . . . 7 ⊢ ((𝜑 ∧ 𝑝:(1...𝐾)⟶1-1onto𝑆) → (𝑎 ∈ 𝐴 ↦ (𝑥 ∈ 𝑆 ↦ (𝑎‘(◡𝑝‘𝑥)))):𝐴⟶1-1onto𝐵) |
| 36 | f1oeq1 6831 | . . . . . . 7 ⊢ (𝑞 = (𝑎 ∈ 𝐴 ↦ (𝑥 ∈ 𝑆 ↦ (𝑎‘(◡𝑝‘𝑥)))) → (𝑞:𝐴⟶1-1onto𝐵 ↔ (𝑎 ∈ 𝐴 ↦ (𝑥 ∈ 𝑆 ↦ (𝑎‘(◡𝑝‘𝑥)))):𝐴⟶1-1onto𝐵)) | |
| 37 | 25, 35, 36 | spcedv 3556 | . . . . . 6 ⊢ ((𝜑 ∧ 𝑝:(1...𝐾)⟶1-1onto𝑆) → ∃𝑞 𝑞:𝐴⟶1-1onto𝐵) |
| 38 | bren 9008 | . . . . . 6 ⊢ (𝐴 ≈ 𝐵 ↔ ∃𝑞 𝑞:𝐴⟶1-1onto𝐵) | |
| 39 | 37, 38 | sylibr 237 | . . . . 5 ⊢ ((𝜑 ∧ 𝑝:(1...𝐾)⟶1-1onto𝑆) → 𝐴 ≈ 𝐵) |
| 40 | 11, 39 | exlimddv 1970 | . . . 4 ⊢ (𝜑 → 𝐴 ≈ 𝐵) |
| 41 | hasheni 14516 | . . . 4 ⊢ (𝐴 ≈ 𝐵 → (♯‘𝐴) = (♯‘𝐵)) | |
| 42 | 40, 41 | syl 18 | . . 3 ⊢ (𝜑 → (♯‘𝐴) = (♯‘𝐵)) |
| 43 | 42 | eqcomd 2769 | . 2 ⊢ (𝜑 → (♯‘𝐵) = (♯‘𝐴)) |
| 44 | 26, 28, 12 | sticksstones16 43403 | . 2 ⊢ (𝜑 → (♯‘𝐴) = ((𝑁 + (𝐾 − 1))C(𝐾 − 1))) |
| 45 | 43, 44 | eqtrd 2798 | 1 ⊢ (𝜑 → (♯‘𝐵) = ((𝑁 + (𝐾 − 1))C(𝐾 − 1))) |
| Colors of variables: wff setvar class |
| This proof depends on syntax axioms: → wi 4 ∧ wa 401 = wceq 1570 ∃wex 1812 ∈ wcel 2147 {cab 2741 Vcvv 3454 class class class wbr 5106 ↦ cmpt 5189 ◡ccnv 5654 ⟶wf 6551 ⟶1-1ontowf1o 6554 ‘cfv 6555 (class class class)co 7440 ≈ cen 8995 Fincfn 8998 1c1 11225 + caddc 11227 − cmin 11565 ℕcn 12359 ℕ0cn0 12630 ...cfz 13663 Ccbc 14470 ♯chash 14498 Σcsu 15879 |
| 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-rep 5235 ax-sep 5252 ax-nul 5263 ax-pow 5331 ax-pr 5395 ax-un 7772 ax-inf2 9666 ax-cnex 11280 ax-resscn 11281 ax-1cn 11282 ax-icn 11283 ax-addcl 11284 ax-addrcl 11285 ax-mulcl 11286 ax-mulrcl 11287 ax-mulcom 11288 ax-addass 11289 ax-mulass 11290 ax-distr 11291 ax-i2m1 11292 ax-1ne0 11293 ax-1rid 11294 ax-rnegex 11295 ax-rrecex 11296 ax-cnre 11297 ax-pre-lttri 11298 ax-pre-lttrn 11299 ax-pre-ltadd 11300 ax-pre-mulgt0 11301 ax-pre-sup 11302 |
| 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 2102 df-mo 2567 df-eu 2597 df-clab 2742 df-cleq 2755 df-clel 2839 df-nfc 2913 df-ne 2960 df-nel 3066 df-ral 3081 df-rex 3091 df-rmo 3369 df-reu 3370 df-rab 3417 df-v 3456 df-sbc 3743 df-csb 3852 df-ss 3901 df-pss 4017 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-int 4911 df-iun 4956 df-br 5107 df-opab 5171 df-mpt 5190 df-tr 5216 df-id 5550 df-eprel 5555 df-po 5563 df-so 5564 df-fr 5608 df-se 5609 df-we 5610 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-pred 6319 df-ord 6380 df-on 6381 df-lim 6382 df-suc 6383 df-iota 6509 df-fun 6557 df-fn 6558 df-f 6559 df-f1 6560 df-fo 6561 df-f1o 6562 df-fv 6563 df-isom 6564 df-riota 7397 df-ov 7443 df-oprab 7444 df-mpo 7445 df-om 7899 df-1st 8022 df-2nd 8023 df-frecs 8324 df-wrecs 8355 df-recs 8404 df-rdg 8443 df-1o 8501 df-oadd 8505 df-er 8742 df-en 8999 df-dom 9000 df-sdom 9001 df-fin 9002 df-sup 9458 df-inf 9459 df-oi 9528 df-dju 10006 df-card 10044 df-pnf 11369 df-mnf 11370 df-xr 11371 df-ltxr 11372 df-le 11373 df-sub 11567 df-neg 11568 df-div 11998 df-nn 12360 df-2 12429 df-3 12430 df-n0 12631 df-z 12718 df-uz 12990 df-rp 13145 df-ico 13506 df-fz 13664 df-fzo 13813 df-seq 14169 df-exp 14229 df-fac 14442 df-bc 14471 df-hash 14499 df-cj 15292 df-re 15293 df-im 15294 df-sqrt 15428 df-abs 15429 df-clim 15681 df-sum 15880 |
| This theorem is used by: sticksstones21 43408 |
| Copyright terms: Public domain | W3C validator |