Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
Mirrors > Home > MPE Home > Th. List > ccatcl | Structured version Visualization version GIF version |
Description: The concatenation of two words is a word. (Contributed by FL, 2-Feb-2014.) (Proof shortened by Stefan O'Rear, 15-Aug-2015.) (Proof shortened by AV, 29-Apr-2020.) |
Ref | Expression |
---|---|
ccatcl | ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) ∈ Word 𝐵) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | ccatfval 14285 | . 2 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))))) | |
2 | wrdf 14231 | . . . . . . 7 ⊢ (𝑆 ∈ Word 𝐵 → 𝑆:(0..^(♯‘𝑆))⟶𝐵) | |
3 | 2 | ad2antrr 723 | . . . . . 6 ⊢ (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑆:(0..^(♯‘𝑆))⟶𝐵) |
4 | 3 | ffvelrnda 6970 | . . . . 5 ⊢ ((((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (𝑆‘𝑥) ∈ 𝐵) |
5 | wrdf 14231 | . . . . . . 7 ⊢ (𝑇 ∈ Word 𝐵 → 𝑇:(0..^(♯‘𝑇))⟶𝐵) | |
6 | 5 | ad3antlr 728 | . . . . . 6 ⊢ ((((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) ∧ ¬ 𝑥 ∈ (0..^(♯‘𝑆))) → 𝑇:(0..^(♯‘𝑇))⟶𝐵) |
7 | simpr 485 | . . . . . . . 8 ⊢ (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) | |
8 | 7 | anim1i 615 | . . . . . . 7 ⊢ ((((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) ∧ ¬ 𝑥 ∈ (0..^(♯‘𝑆))) → (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ∧ ¬ 𝑥 ∈ (0..^(♯‘𝑆)))) |
9 | lencl 14245 | . . . . . . . . . 10 ⊢ (𝑆 ∈ Word 𝐵 → (♯‘𝑆) ∈ ℕ0) | |
10 | 9 | nn0zd 12433 | . . . . . . . . 9 ⊢ (𝑆 ∈ Word 𝐵 → (♯‘𝑆) ∈ ℤ) |
11 | lencl 14245 | . . . . . . . . . 10 ⊢ (𝑇 ∈ Word 𝐵 → (♯‘𝑇) ∈ ℕ0) | |
12 | 11 | nn0zd 12433 | . . . . . . . . 9 ⊢ (𝑇 ∈ Word 𝐵 → (♯‘𝑇) ∈ ℤ) |
13 | 10, 12 | anim12i 613 | . . . . . . . 8 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ)) |
14 | 13 | ad2antrr 723 | . . . . . . 7 ⊢ ((((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) ∧ ¬ 𝑥 ∈ (0..^(♯‘𝑆))) → ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ)) |
15 | fzocatel 13460 | . . . . . . 7 ⊢ (((𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ∧ ¬ 𝑥 ∈ (0..^(♯‘𝑆))) ∧ ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ)) → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇))) | |
16 | 8, 14, 15 | syl2anc 584 | . . . . . 6 ⊢ ((((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) ∧ ¬ 𝑥 ∈ (0..^(♯‘𝑆))) → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇))) |
17 | 6, 16 | ffvelrnd 6971 | . . . . 5 ⊢ ((((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) ∧ ¬ 𝑥 ∈ (0..^(♯‘𝑆))) → (𝑇‘(𝑥 − (♯‘𝑆))) ∈ 𝐵) |
18 | 4, 17 | ifclda 4495 | . . . 4 ⊢ (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) → if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))) ∈ 𝐵) |
19 | 18 | fmpttd 6998 | . . 3 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))):(0..^((♯‘𝑆) + (♯‘𝑇)))⟶𝐵) |
20 | iswrdi 14230 | . . 3 ⊢ ((𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))):(0..^((♯‘𝑆) + (♯‘𝑇)))⟶𝐵 → (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))) ∈ Word 𝐵) | |
21 | 19, 20 | syl 17 | . 2 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))) ∈ Word 𝐵) |
22 | 1, 21 | eqeltrd 2840 | 1 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) ∈ Word 𝐵) |
Colors of variables: wff setvar class |
Syntax hints: ¬ wn 3 → wi 4 ∧ wa 396 ∈ wcel 2107 ifcif 4460 ↦ cmpt 5158 ⟶wf 6433 ‘cfv 6437 (class class class)co 7284 0cc0 10880 + caddc 10883 − cmin 11214 ℤcz 12328 ..^cfzo 13391 ♯chash 14053 Word cword 14226 ++ cconcat 14282 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1798 ax-4 1812 ax-5 1914 ax-6 1972 ax-7 2012 ax-8 2109 ax-9 2117 ax-10 2138 ax-11 2155 ax-12 2172 ax-ext 2710 ax-rep 5210 ax-sep 5224 ax-nul 5231 ax-pow 5289 ax-pr 5353 ax-un 7597 ax-cnex 10936 ax-resscn 10937 ax-1cn 10938 ax-icn 10939 ax-addcl 10940 ax-addrcl 10941 ax-mulcl 10942 ax-mulrcl 10943 ax-mulcom 10944 ax-addass 10945 ax-mulass 10946 ax-distr 10947 ax-i2m1 10948 ax-1ne0 10949 ax-1rid 10950 ax-rnegex 10951 ax-rrecex 10952 ax-cnre 10953 ax-pre-lttri 10954 ax-pre-lttrn 10955 ax-pre-ltadd 10956 ax-pre-mulgt0 10957 |
This theorem depends on definitions: df-bi 206 df-an 397 df-or 845 df-3or 1087 df-3an 1088 df-tru 1542 df-fal 1552 df-ex 1783 df-nf 1787 df-sb 2069 df-mo 2541 df-eu 2570 df-clab 2717 df-cleq 2731 df-clel 2817 df-nfc 2890 df-ne 2945 df-nel 3051 df-ral 3070 df-rex 3071 df-reu 3073 df-rab 3074 df-v 3435 df-sbc 3718 df-csb 3834 df-dif 3891 df-un 3893 df-in 3895 df-ss 3905 df-pss 3907 df-nul 4258 df-if 4461 df-pw 4536 df-sn 4563 df-pr 4565 df-op 4569 df-uni 4841 df-int 4881 df-iun 4927 df-br 5076 df-opab 5138 df-mpt 5159 df-tr 5193 df-id 5490 df-eprel 5496 df-po 5504 df-so 5505 df-fr 5545 df-we 5547 df-xp 5596 df-rel 5597 df-cnv 5598 df-co 5599 df-dm 5600 df-rn 5601 df-res 5602 df-ima 5603 df-pred 6206 df-ord 6273 df-on 6274 df-lim 6275 df-suc 6276 df-iota 6395 df-fun 6439 df-fn 6440 df-f 6441 df-f1 6442 df-fo 6443 df-f1o 6444 df-fv 6445 df-riota 7241 df-ov 7287 df-oprab 7288 df-mpo 7289 df-om 7722 df-1st 7840 df-2nd 7841 df-frecs 8106 df-wrecs 8137 df-recs 8211 df-rdg 8250 df-1o 8306 df-er 8507 df-en 8743 df-dom 8744 df-sdom 8745 df-fin 8746 df-card 9706 df-pnf 11020 df-mnf 11021 df-xr 11022 df-ltxr 11023 df-le 11024 df-sub 11216 df-neg 11217 df-nn 11983 df-n0 12243 df-z 12329 df-uz 12592 df-fz 13249 df-fzo 13392 df-hash 14054 df-word 14227 df-concat 14283 |
This theorem is referenced by: ccatsymb 14296 ccatass 14302 ccatalpha 14307 ccatws1cl 14330 ccatws1clv 14331 ccatswrd 14390 swrdccat2 14391 ccatpfx 14423 pfxccat1 14424 swrdccatfn 14446 swrdccatin1 14447 swrdccatin2 14451 pfxccatin12lem2c 14452 pfxccatpfx1 14458 pfxccatpfx2 14459 splcl 14474 spllen 14476 splfv1 14477 splfv2a 14478 splval2 14479 revccat 14488 cshwcl 14520 cats1cld 14577 cats1cli 14579 cats2cat 14584 gsumsgrpccat 18487 gsumccatOLD 18488 gsumspl 18492 gsumwspan 18494 frmdplusg 18502 frmdmnd 18507 frmdsssubm 18509 frmdup1 18512 psgnuni 19116 efginvrel2 19342 efgsp1 19352 efgredleme 19358 efgredlemc 19360 efgcpbllemb 19370 efgcpbl2 19372 frgpuplem 19387 frgpup1 19390 psgnghm 20794 wwlksnext 28267 clwwlkccat 28363 clwlkclwwlk2 28376 clwwlkel 28419 wwlksext2clwwlk 28430 numclwwlk1lem2fo 28731 ccatf1 31232 splfv3 31239 cycpmco2f1 31400 cycpmco2rn 31401 cycpmco2lem2 31403 cycpmco2lem3 31404 cycpmco2lem4 31405 cycpmco2lem5 31406 cycpmco2lem6 31407 cycpmco2 31409 cyc3genpm 31428 sseqf 32368 ofcccat 32531 signstfvc 32562 signsvfn 32570 signsvtn 32572 signshf 32576 mrsubccat 33489 mrsubco 33492 frlmfzoccat 40243 |
Copyright terms: Public domain | W3C validator |