| Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > ccat1st1st | Structured version Visualization version GIF version | ||
| Description: The first symbol of a word concatenated with its first symbol is the first symbol of the word. This theorem holds even if 𝑊 is the empty word. (Contributed by AV, 26-Mar-2022.) |
| Ref | Expression |
|---|---|
| ccat1st1st | ⊢ (𝑊 ∈ Word 𝑉 → ((𝑊 ++ 〈“(𝑊‘0)”〉)‘0) = (𝑊‘0)) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | hasheq0 14512 | . . . 4 ⊢ (𝑊 ∈ Word 𝑉 → ((♯‘𝑊) = 0 ↔ 𝑊 = ∅)) | |
| 2 | 1 | biimpa 482 | . . 3 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) = 0) → 𝑊 = ∅) |
| 3 | s1cli 14757 | . . . . . . 7 ⊢ 〈“∅”〉 ∈ Word V | |
| 4 | ccatlid 14737 | . . . . . . 7 ⊢ (〈“∅”〉 ∈ Word V → (∅ ++ 〈“∅”〉) = 〈“∅”〉) | |
| 5 | 3, 4 | ax-mp 5 | . . . . . 6 ⊢ (∅ ++ 〈“∅”〉) = 〈“∅”〉 |
| 6 | 5 | fveq1i 6889 | . . . . 5 ⊢ ((∅ ++ 〈“∅”〉)‘0) = (〈“∅”〉‘0) |
| 7 | 0ex 5260 | . . . . . 6 ⊢ ∅ ∈ V | |
| 8 | s1fv 14764 | . . . . . 6 ⊢ (∅ ∈ V → (〈“∅”〉‘0) = ∅) | |
| 9 | 7, 8 | ax-mp 5 | . . . . 5 ⊢ (〈“∅”〉‘0) = ∅ |
| 10 | 6, 9 | eqtri 2783 | . . . 4 ⊢ ((∅ ++ 〈“∅”〉)‘0) = ∅ |
| 11 | id 23 | . . . . . 6 ⊢ (𝑊 = ∅ → 𝑊 = ∅) | |
| 12 | fveq1 6887 | . . . . . . . 8 ⊢ (𝑊 = ∅ → (𝑊‘0) = (∅‘0)) | |
| 13 | 0fv 6929 | . . . . . . . 8 ⊢ (∅‘0) = ∅ | |
| 14 | 12, 13 | eqtrdi 2811 | . . . . . . 7 ⊢ (𝑊 = ∅ → (𝑊‘0) = ∅) |
| 15 | 14 | s1eqd 14753 | . . . . . 6 ⊢ (𝑊 = ∅ → 〈“(𝑊‘0)”〉 = 〈“∅”〉) |
| 16 | 11, 15 | oveq12d 7440 | . . . . 5 ⊢ (𝑊 = ∅ → (𝑊 ++ 〈“(𝑊‘0)”〉) = (∅ ++ 〈“∅”〉)) |
| 17 | 16 | fveq1d 6890 | . . . 4 ⊢ (𝑊 = ∅ → ((𝑊 ++ 〈“(𝑊‘0)”〉)‘0) = ((∅ ++ 〈“∅”〉)‘0)) |
| 18 | 10, 17, 14 | 3eqtr4a 2821 | . . 3 ⊢ (𝑊 = ∅ → ((𝑊 ++ 〈“(𝑊‘0)”〉)‘0) = (𝑊‘0)) |
| 19 | 2, 18 | syl 18 | . 2 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) = 0) → ((𝑊 ++ 〈“(𝑊‘0)”〉)‘0) = (𝑊‘0)) |
| 20 | 1 | necon3bid 2999 | . . . . . 6 ⊢ (𝑊 ∈ Word 𝑉 → ((♯‘𝑊) ≠ 0 ↔ 𝑊 ≠ ∅)) |
| 21 | 20 | biimpa 482 | . . . . 5 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ≠ 0) → 𝑊 ≠ ∅) |
| 22 | lennncl 14684 | . . . . 5 ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑊 ≠ ∅) → (♯‘𝑊) ∈ ℕ) | |
| 23 | 21, 22 | syldan 603 | . . . 4 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ≠ 0) → (♯‘𝑊) ∈ ℕ) |
| 24 | lbfzo0 13839 | . . . 4 ⊢ (0 ∈ (0..^(♯‘𝑊)) ↔ (♯‘𝑊) ∈ ℕ) | |
| 25 | 23, 24 | sylibr 237 | . . 3 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ≠ 0) → 0 ∈ (0..^(♯‘𝑊))) |
| 26 | ccats1val1 14780 | . . 3 ⊢ ((𝑊 ∈ Word 𝑉 ∧ 0 ∈ (0..^(♯‘𝑊))) → ((𝑊 ++ 〈“(𝑊‘0)”〉)‘0) = (𝑊‘0)) | |
| 27 | 25, 26 | syldan 603 | . 2 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ≠ 0) → ((𝑊 ++ 〈“(𝑊‘0)”〉)‘0) = (𝑊‘0)) |
| 28 | 19, 27 | pm2.61dane 3042 | 1 ⊢ (𝑊 ∈ Word 𝑉 → ((𝑊 ++ 〈“(𝑊‘0)”〉)‘0) = (𝑊‘0)) |
| Colors of variables: wff setvar class |
| This proof depends on syntax axioms: → wi 4 ∧ wa 401 = wceq 1569 ∈ wcel 2144 ≠ wne 2955 Vcvv 3450 ∅c0 4277 ‘cfv 6541 (class class class)co 7422 0cc0 11205 ℕcn 12340 ..^cfzo 13793 ♯chash 14479 Word cword 14663 ++ cconcat 14720 〈“cs1 14747 |
| This proof depends on axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1827 ax-4 1841 ax-5 1942 ax-6 1999 ax-7 2040 ax-8 2146 ax-9 2154 ax-10 2177 ax-11 2193 ax-12 2212 ax-ext 2732 ax-rep 5231 ax-sep 5248 ax-nul 5259 ax-pow 5326 ax-pr 5390 ax-un 7753 ax-cnex 11261 ax-resscn 11262 ax-1cn 11263 ax-icn 11264 ax-addcl 11265 ax-addrcl 11266 ax-mulcl 11267 ax-mulrcl 11268 ax-mulcom 11269 ax-addass 11270 ax-mulass 11271 ax-distr 11272 ax-i2m1 11273 ax-1ne0 11274 ax-1rid 11275 ax-rnegex 11276 ax-rrecex 11277 ax-cnre 11278 ax-pre-lttri 11279 ax-pre-lttrn 11280 ax-pre-ltadd 11281 ax-pre-mulgt0 11282 |
| This proof depends on definitions: df-bi 210 df-an 402 df-or 862 df-3or 1104 df-3an 1105 df-tru 1572 df-fal 1582 df-ex 1812 df-nf 1816 df-sb 2099 df-mo 2564 df-eu 2594 df-clab 2739 df-cleq 2752 df-clel 2835 df-nfc 2909 df-ne 2956 df-nel 3062 df-ral 3077 df-rex 3087 df-reu 3366 df-rab 3413 df-v 3452 df-sbc 3739 df-csb 3848 df-ss 3897 df-pss 4013 df-dif 4046 df-in 4090 df-un 4150 df-nul 4278 df-if 4482 df-pw 4558 df-sn 4585 df-pr 4587 df-op 4835 df-uni 4867 df-int 4907 df-iun 4952 df-br 5103 df-opab 5167 df-mpt 5186 df-tr 5212 df-id 5545 df-eprel 5550 df-po 5558 df-so 5559 df-fr 5603 df-we 5605 df-xp 5656 df-rel 5657 df-cnv 5658 df-co 5659 df-dm 5660 df-rn 5661 df-res 5662 df-ima 5663 df-pred 6306 df-ord 6367 df-on 6368 df-lim 6369 df-suc 6370 df-iota 6496 df-fun 6543 df-fn 6544 df-f 6545 df-f1 6546 df-fo 6547 df-f1o 6548 df-fv 6549 df-riota 7379 df-ov 7425 df-oprab 7426 df-mpo 7427 df-om 7880 df-1st 8003 df-2nd 8004 df-frecs 8304 df-wrecs 8335 df-recs 8384 df-rdg 8423 df-1o 8481 df-er 8722 df-en 8979 df-dom 8980 df-sdom 8981 df-fin 8982 df-card 10025 df-pnf 11350 df-mnf 11351 df-xr 11352 df-ltxr 11353 df-le 11354 df-sub 11548 df-neg 11549 df-nn 12341 df-n0 12612 df-z 12699 df-uz 12971 df-fz 13645 df-fzo 13794 df-hash 14480 df-word 14664 df-concat 14721 df-s1 14748 |
| This theorem is used by: clwwlknonwwlknonb 30704 |
| Copyright terms: Public domain | W3C validator |