Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
Mirrors > Home > MPE Home > Th. List > ccatlid | Structured version Visualization version GIF version |
Description: Concatenation of a word by the empty word on the left. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Proof shortened by AV, 1-May-2020.) |
Ref | Expression |
---|---|
ccatlid | ⊢ (𝑆 ∈ Word 𝐵 → (∅ ++ 𝑆) = 𝑆) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | wrd0 13881 | . . . 4 ⊢ ∅ ∈ Word 𝐵 | |
2 | ccatvalfn 13927 | . . . 4 ⊢ ((∅ ∈ Word 𝐵 ∧ 𝑆 ∈ Word 𝐵) → (∅ ++ 𝑆) Fn (0..^((♯‘∅) + (♯‘𝑆)))) | |
3 | 1, 2 | mpan 688 | . . 3 ⊢ (𝑆 ∈ Word 𝐵 → (∅ ++ 𝑆) Fn (0..^((♯‘∅) + (♯‘𝑆)))) |
4 | hash0 13720 | . . . . . . . 8 ⊢ (♯‘∅) = 0 | |
5 | 4 | oveq1i 7158 | . . . . . . 7 ⊢ ((♯‘∅) + (♯‘𝑆)) = (0 + (♯‘𝑆)) |
6 | lencl 13875 | . . . . . . . . 9 ⊢ (𝑆 ∈ Word 𝐵 → (♯‘𝑆) ∈ ℕ0) | |
7 | 6 | nn0cnd 11949 | . . . . . . . 8 ⊢ (𝑆 ∈ Word 𝐵 → (♯‘𝑆) ∈ ℂ) |
8 | 7 | addid2d 10833 | . . . . . . 7 ⊢ (𝑆 ∈ Word 𝐵 → (0 + (♯‘𝑆)) = (♯‘𝑆)) |
9 | 5, 8 | syl5eq 2866 | . . . . . 6 ⊢ (𝑆 ∈ Word 𝐵 → ((♯‘∅) + (♯‘𝑆)) = (♯‘𝑆)) |
10 | 9 | eqcomd 2825 | . . . . 5 ⊢ (𝑆 ∈ Word 𝐵 → (♯‘𝑆) = ((♯‘∅) + (♯‘𝑆))) |
11 | 10 | oveq2d 7164 | . . . 4 ⊢ (𝑆 ∈ Word 𝐵 → (0..^(♯‘𝑆)) = (0..^((♯‘∅) + (♯‘𝑆)))) |
12 | 11 | fneq2d 6440 | . . 3 ⊢ (𝑆 ∈ Word 𝐵 → ((∅ ++ 𝑆) Fn (0..^(♯‘𝑆)) ↔ (∅ ++ 𝑆) Fn (0..^((♯‘∅) + (♯‘𝑆))))) |
13 | 3, 12 | mpbird 259 | . 2 ⊢ (𝑆 ∈ Word 𝐵 → (∅ ++ 𝑆) Fn (0..^(♯‘𝑆))) |
14 | wrdfn 13868 | . 2 ⊢ (𝑆 ∈ Word 𝐵 → 𝑆 Fn (0..^(♯‘𝑆))) | |
15 | 4 | a1i 11 | . . . . . . 7 ⊢ (𝑆 ∈ Word 𝐵 → (♯‘∅) = 0) |
16 | 15, 9 | oveq12d 7166 | . . . . . 6 ⊢ (𝑆 ∈ Word 𝐵 → ((♯‘∅)..^((♯‘∅) + (♯‘𝑆))) = (0..^(♯‘𝑆))) |
17 | 16 | eleq2d 2896 | . . . . 5 ⊢ (𝑆 ∈ Word 𝐵 → (𝑥 ∈ ((♯‘∅)..^((♯‘∅) + (♯‘𝑆))) ↔ 𝑥 ∈ (0..^(♯‘𝑆)))) |
18 | 17 | biimpar 480 | . . . 4 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → 𝑥 ∈ ((♯‘∅)..^((♯‘∅) + (♯‘𝑆)))) |
19 | ccatval2 13924 | . . . . 5 ⊢ ((∅ ∈ Word 𝐵 ∧ 𝑆 ∈ Word 𝐵 ∧ 𝑥 ∈ ((♯‘∅)..^((♯‘∅) + (♯‘𝑆)))) → ((∅ ++ 𝑆)‘𝑥) = (𝑆‘(𝑥 − (♯‘∅)))) | |
20 | 1, 19 | mp3an1 1442 | . . . 4 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑥 ∈ ((♯‘∅)..^((♯‘∅) + (♯‘𝑆)))) → ((∅ ++ 𝑆)‘𝑥) = (𝑆‘(𝑥 − (♯‘∅)))) |
21 | 18, 20 | syldan 593 | . . 3 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → ((∅ ++ 𝑆)‘𝑥) = (𝑆‘(𝑥 − (♯‘∅)))) |
22 | 4 | oveq2i 7159 | . . . . 5 ⊢ (𝑥 − (♯‘∅)) = (𝑥 − 0) |
23 | elfzoelz 13030 | . . . . . . . 8 ⊢ (𝑥 ∈ (0..^(♯‘𝑆)) → 𝑥 ∈ ℤ) | |
24 | 23 | adantl 484 | . . . . . . 7 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → 𝑥 ∈ ℤ) |
25 | 24 | zcnd 12080 | . . . . . 6 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → 𝑥 ∈ ℂ) |
26 | 25 | subid1d 10978 | . . . . 5 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (𝑥 − 0) = 𝑥) |
27 | 22, 26 | syl5eq 2866 | . . . 4 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (𝑥 − (♯‘∅)) = 𝑥) |
28 | 27 | fveq2d 6667 | . . 3 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (𝑆‘(𝑥 − (♯‘∅))) = (𝑆‘𝑥)) |
29 | 21, 28 | eqtrd 2854 | . 2 ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → ((∅ ++ 𝑆)‘𝑥) = (𝑆‘𝑥)) |
30 | 13, 14, 29 | eqfnfvd 6798 | 1 ⊢ (𝑆 ∈ Word 𝐵 → (∅ ++ 𝑆) = 𝑆) |
Colors of variables: wff setvar class |
Syntax hints: → wi 4 ∧ wa 398 = wceq 1531 ∈ wcel 2108 ∅c0 4289 Fn wfn 6343 ‘cfv 6348 (class class class)co 7148 0cc0 10529 + caddc 10532 − cmin 10862 ℤcz 11973 ..^cfzo 13025 ♯chash 13682 Word cword 13853 ++ cconcat 13914 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1790 ax-4 1804 ax-5 1905 ax-6 1964 ax-7 2009 ax-8 2110 ax-9 2118 ax-10 2139 ax-11 2154 ax-12 2170 ax-ext 2791 ax-rep 5181 ax-sep 5194 ax-nul 5201 ax-pow 5257 ax-pr 5320 ax-un 7453 ax-cnex 10585 ax-resscn 10586 ax-1cn 10587 ax-icn 10588 ax-addcl 10589 ax-addrcl 10590 ax-mulcl 10591 ax-mulrcl 10592 ax-mulcom 10593 ax-addass 10594 ax-mulass 10595 ax-distr 10596 ax-i2m1 10597 ax-1ne0 10598 ax-1rid 10599 ax-rnegex 10600 ax-rrecex 10601 ax-cnre 10602 ax-pre-lttri 10603 ax-pre-lttrn 10604 ax-pre-ltadd 10605 ax-pre-mulgt0 10606 |
This theorem depends on definitions: df-bi 209 df-an 399 df-or 844 df-3or 1083 df-3an 1084 df-tru 1534 df-ex 1775 df-nf 1779 df-sb 2064 df-mo 2616 df-eu 2648 df-clab 2798 df-cleq 2812 df-clel 2891 df-nfc 2961 df-ne 3015 df-nel 3122 df-ral 3141 df-rex 3142 df-reu 3143 df-rab 3145 df-v 3495 df-sbc 3771 df-csb 3882 df-dif 3937 df-un 3939 df-in 3941 df-ss 3950 df-pss 3952 df-nul 4290 df-if 4466 df-pw 4539 df-sn 4560 df-pr 4562 df-tp 4564 df-op 4566 df-uni 4831 df-int 4868 df-iun 4912 df-br 5058 df-opab 5120 df-mpt 5138 df-tr 5164 df-id 5453 df-eprel 5458 df-po 5467 df-so 5468 df-fr 5507 df-we 5509 df-xp 5554 df-rel 5555 df-cnv 5556 df-co 5557 df-dm 5558 df-rn 5559 df-res 5560 df-ima 5561 df-pred 6141 df-ord 6187 df-on 6188 df-lim 6189 df-suc 6190 df-iota 6307 df-fun 6350 df-fn 6351 df-f 6352 df-f1 6353 df-fo 6354 df-f1o 6355 df-fv 6356 df-riota 7106 df-ov 7151 df-oprab 7152 df-mpo 7153 df-om 7573 df-1st 7681 df-2nd 7682 df-wrecs 7939 df-recs 8000 df-rdg 8038 df-1o 8094 df-oadd 8098 df-er 8281 df-en 8502 df-dom 8503 df-sdom 8504 df-fin 8505 df-card 9360 df-pnf 10669 df-mnf 10670 df-xr 10671 df-ltxr 10672 df-le 10673 df-sub 10864 df-neg 10865 df-nn 11631 df-n0 11890 df-z 11974 df-uz 12236 df-fz 12885 df-fzo 13026 df-hash 13683 df-word 13854 df-concat 13915 |
This theorem is referenced by: ccatidid 13936 ccat1st1st 13976 swrdccat 14089 s0s1 14276 gsumccatOLD 17997 gsumccat 17998 frmdmnd 18016 frmd0 18017 efgcpbl2 18875 frgp0 18878 frgpnabllem1 18985 signstfvneq0 31835 lpadlen1 31943 |
Copyright terms: Public domain | W3C validator |