![]() |
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 14461 | . 2 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))))) | |
2 | wrdf 14407 | . . . . . . 7 ⊢ (𝑆 ∈ Word 𝐵 → 𝑆:(0..^(♯‘𝑆))⟶𝐵) | |
3 | 2 | ad2antrr 724 | . . . . . 6 ⊢ (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑆:(0..^(♯‘𝑆))⟶𝐵) |
4 | 3 | ffvelcdmda 7035 | . . . . 5 ⊢ ((((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (𝑆‘𝑥) ∈ 𝐵) |
5 | wrdf 14407 | . . . . . . 7 ⊢ (𝑇 ∈ Word 𝐵 → 𝑇:(0..^(♯‘𝑇))⟶𝐵) | |
6 | 5 | ad3antlr 729 | . . . . . 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 14421 | . . . . . . . . . 10 ⊢ (𝑆 ∈ Word 𝐵 → (♯‘𝑆) ∈ ℕ0) | |
10 | 9 | nn0zd 12525 | . . . . . . . . 9 ⊢ (𝑆 ∈ Word 𝐵 → (♯‘𝑆) ∈ ℤ) |
11 | lencl 14421 | . . . . . . . . . 10 ⊢ (𝑇 ∈ Word 𝐵 → (♯‘𝑇) ∈ ℕ0) | |
12 | 11 | nn0zd 12525 | . . . . . . . . 9 ⊢ (𝑇 ∈ Word 𝐵 → (♯‘𝑇) ∈ ℤ) |
13 | 10, 12 | anim12i 613 | . . . . . . . 8 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ)) |
14 | 13 | ad2antrr 724 | . . . . . . 7 ⊢ ((((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) ∧ ¬ 𝑥 ∈ (0..^(♯‘𝑆))) → ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ)) |
15 | fzocatel 13636 | . . . . . . 7 ⊢ (((𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ∧ ¬ 𝑥 ∈ (0..^(♯‘𝑆))) ∧ ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ)) → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇))) | |
16 | 8, 14, 15 | syl2anc 584 | . . . . . 6 ⊢ ((((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) ∧ ¬ 𝑥 ∈ (0..^(♯‘𝑆))) → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇))) |
17 | 6, 16 | ffvelcdmd 7036 | . . . . 5 ⊢ ((((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) ∧ ¬ 𝑥 ∈ (0..^(♯‘𝑆))) → (𝑇‘(𝑥 − (♯‘𝑆))) ∈ 𝐵) |
18 | 4, 17 | ifclda 4521 | . . . 4 ⊢ (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) → if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))) ∈ 𝐵) |
19 | 18 | fmpttd 7063 | . . 3 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))):(0..^((♯‘𝑆) + (♯‘𝑇)))⟶𝐵) |
20 | iswrdi 14406 | . . 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 2838 | 1 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) ∈ Word 𝐵) |
Colors of variables: wff setvar class |
Syntax hints: ¬ wn 3 → wi 4 ∧ wa 396 ∈ wcel 2106 ifcif 4486 ↦ cmpt 5188 ⟶wf 6492 ‘cfv 6496 (class class class)co 7357 0cc0 11051 + caddc 11054 − cmin 11385 ℤcz 12499 ..^cfzo 13567 ♯chash 14230 Word cword 14402 ++ cconcat 14458 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1797 ax-4 1811 ax-5 1913 ax-6 1971 ax-7 2011 ax-8 2108 ax-9 2116 ax-10 2137 ax-11 2154 ax-12 2171 ax-ext 2707 ax-rep 5242 ax-sep 5256 ax-nul 5263 ax-pow 5320 ax-pr 5384 ax-un 7672 ax-cnex 11107 ax-resscn 11108 ax-1cn 11109 ax-icn 11110 ax-addcl 11111 ax-addrcl 11112 ax-mulcl 11113 ax-mulrcl 11114 ax-mulcom 11115 ax-addass 11116 ax-mulass 11117 ax-distr 11118 ax-i2m1 11119 ax-1ne0 11120 ax-1rid 11121 ax-rnegex 11122 ax-rrecex 11123 ax-cnre 11124 ax-pre-lttri 11125 ax-pre-lttrn 11126 ax-pre-ltadd 11127 ax-pre-mulgt0 11128 |
This theorem depends on definitions: df-bi 206 df-an 397 df-or 846 df-3or 1088 df-3an 1089 df-tru 1544 df-fal 1554 df-ex 1782 df-nf 1786 df-sb 2068 df-mo 2538 df-eu 2567 df-clab 2714 df-cleq 2728 df-clel 2814 df-nfc 2889 df-ne 2944 df-nel 3050 df-ral 3065 df-rex 3074 df-reu 3354 df-rab 3408 df-v 3447 df-sbc 3740 df-csb 3856 df-dif 3913 df-un 3915 df-in 3917 df-ss 3927 df-pss 3929 df-nul 4283 df-if 4487 df-pw 4562 df-sn 4587 df-pr 4589 df-op 4593 df-uni 4866 df-int 4908 df-iun 4956 df-br 5106 df-opab 5168 df-mpt 5189 df-tr 5223 df-id 5531 df-eprel 5537 df-po 5545 df-so 5546 df-fr 5588 df-we 5590 df-xp 5639 df-rel 5640 df-cnv 5641 df-co 5642 df-dm 5643 df-rn 5644 df-res 5645 df-ima 5646 df-pred 6253 df-ord 6320 df-on 6321 df-lim 6322 df-suc 6323 df-iota 6448 df-fun 6498 df-fn 6499 df-f 6500 df-f1 6501 df-fo 6502 df-f1o 6503 df-fv 6504 df-riota 7313 df-ov 7360 df-oprab 7361 df-mpo 7362 df-om 7803 df-1st 7921 df-2nd 7922 df-frecs 8212 df-wrecs 8243 df-recs 8317 df-rdg 8356 df-1o 8412 df-er 8648 df-en 8884 df-dom 8885 df-sdom 8886 df-fin 8887 df-card 9875 df-pnf 11191 df-mnf 11192 df-xr 11193 df-ltxr 11194 df-le 11195 df-sub 11387 df-neg 11388 df-nn 12154 df-n0 12414 df-z 12500 df-uz 12764 df-fz 13425 df-fzo 13568 df-hash 14231 df-word 14403 df-concat 14459 |
This theorem is referenced by: ccatsymb 14470 ccatass 14476 ccatalpha 14481 ccatws1cl 14504 ccatws1clv 14505 ccatswrd 14556 swrdccat2 14557 ccatpfx 14589 pfxccat1 14590 swrdccatfn 14612 swrdccatin1 14613 swrdccatin2 14617 pfxccatin12lem2c 14618 pfxccatpfx1 14624 pfxccatpfx2 14625 splcl 14640 spllen 14642 splfv1 14643 splfv2a 14644 splval2 14645 revccat 14654 cshwcl 14686 cats1cld 14744 cats1cli 14746 cats2cat 14751 gsumsgrpccat 18650 gsumspl 18654 gsumwspan 18656 frmdplusg 18664 frmdmnd 18669 frmdsssubm 18671 frmdup1 18674 psgnuni 19281 efginvrel2 19509 efgsp1 19519 efgredleme 19525 efgredlemc 19527 efgcpbllemb 19537 efgcpbl2 19539 frgpuplem 19554 frgpup1 19557 psgnghm 20984 wwlksnext 28838 clwwlkccat 28934 clwlkclwwlk2 28947 clwwlkel 28990 wwlksext2clwwlk 29001 numclwwlk1lem2fo 29302 ccatf1 31805 splfv3 31812 cycpmco2f1 31973 cycpmco2rn 31974 cycpmco2lem2 31976 cycpmco2lem3 31977 cycpmco2lem4 31978 cycpmco2lem5 31979 cycpmco2lem6 31980 cycpmco2 31982 cyc3genpm 32001 sseqf 32992 ofcccat 33155 signstfvc 33186 signsvfn 33194 signsvtn 33196 signshf 33200 mrsubccat 34112 mrsubco 34115 frlmfzoccat 40679 |
Copyright terms: Public domain | W3C validator |