![]() |
Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
|
Mirrors > Home > MPE Home > Th. List > wrdeqs1cat | Structured version Visualization version GIF version |
Description: Decompose a nonempty word by separating off the first symbol. (Contributed by Stefan O'Rear, 25-Aug-2015.) (Revised by Mario Carneiro, 1-Oct-2015.) (Proof shortened by AV, 12-Oct-2022.) |
Ref | Expression |
---|---|
wrdeqs1cat | ⊢ ((𝑊 ∈ Word 𝐴 ∧ 𝑊 ≠ ∅) → 𝑊 = (⟨“(𝑊‘0)”⟩ ++ (𝑊 substr ⟨1, (♯‘𝑊)⟩))) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | simpl 481 | . . 3 ⊢ ((𝑊 ∈ Word 𝐴 ∧ 𝑊 ≠ ∅) → 𝑊 ∈ Word 𝐴) | |
2 | wrdfin 14512 | . . . 4 ⊢ (𝑊 ∈ Word 𝐴 → 𝑊 ∈ Fin) | |
3 | 1elfz0hash 14379 | . . . 4 ⊢ ((𝑊 ∈ Fin ∧ 𝑊 ≠ ∅) → 1 ∈ (0...(♯‘𝑊))) | |
4 | 2, 3 | sylan 578 | . . 3 ⊢ ((𝑊 ∈ Word 𝐴 ∧ 𝑊 ≠ ∅) → 1 ∈ (0...(♯‘𝑊))) |
5 | lennncl 14514 | . . . . 5 ⊢ ((𝑊 ∈ Word 𝐴 ∧ 𝑊 ≠ ∅) → (♯‘𝑊) ∈ ℕ) | |
6 | 5 | nnnn0d 12560 | . . . 4 ⊢ ((𝑊 ∈ Word 𝐴 ∧ 𝑊 ≠ ∅) → (♯‘𝑊) ∈ ℕ0) |
7 | eluzfz2 13539 | . . . . 5 ⊢ ((♯‘𝑊) ∈ (ℤ≥‘0) → (♯‘𝑊) ∈ (0...(♯‘𝑊))) | |
8 | nn0uz 12892 | . . . . 5 ⊢ ℕ0 = (ℤ≥‘0) | |
9 | 7, 8 | eleq2s 2843 | . . . 4 ⊢ ((♯‘𝑊) ∈ ℕ0 → (♯‘𝑊) ∈ (0...(♯‘𝑊))) |
10 | 6, 9 | syl 17 | . . 3 ⊢ ((𝑊 ∈ Word 𝐴 ∧ 𝑊 ≠ ∅) → (♯‘𝑊) ∈ (0...(♯‘𝑊))) |
11 | ccatpfx 14681 | . . 3 ⊢ ((𝑊 ∈ Word 𝐴 ∧ 1 ∈ (0...(♯‘𝑊)) ∧ (♯‘𝑊) ∈ (0...(♯‘𝑊))) → ((𝑊 prefix 1) ++ (𝑊 substr ⟨1, (♯‘𝑊)⟩)) = (𝑊 prefix (♯‘𝑊))) | |
12 | 1, 4, 10, 11 | syl3anc 1368 | . 2 ⊢ ((𝑊 ∈ Word 𝐴 ∧ 𝑊 ≠ ∅) → ((𝑊 prefix 1) ++ (𝑊 substr ⟨1, (♯‘𝑊)⟩)) = (𝑊 prefix (♯‘𝑊))) |
13 | pfx1 14683 | . . 3 ⊢ ((𝑊 ∈ Word 𝐴 ∧ 𝑊 ≠ ∅) → (𝑊 prefix 1) = ⟨“(𝑊‘0)”⟩) | |
14 | 13 | oveq1d 7430 | . 2 ⊢ ((𝑊 ∈ Word 𝐴 ∧ 𝑊 ≠ ∅) → ((𝑊 prefix 1) ++ (𝑊 substr ⟨1, (♯‘𝑊)⟩)) = (⟨“(𝑊‘0)”⟩ ++ (𝑊 substr ⟨1, (♯‘𝑊)⟩))) |
15 | pfxid 14664 | . . 3 ⊢ (𝑊 ∈ Word 𝐴 → (𝑊 prefix (♯‘𝑊)) = 𝑊) | |
16 | 15 | adantr 479 | . 2 ⊢ ((𝑊 ∈ Word 𝐴 ∧ 𝑊 ≠ ∅) → (𝑊 prefix (♯‘𝑊)) = 𝑊) |
17 | 12, 14, 16 | 3eqtr3rd 2774 | 1 ⊢ ((𝑊 ∈ Word 𝐴 ∧ 𝑊 ≠ ∅) → 𝑊 = (⟨“(𝑊‘0)”⟩ ++ (𝑊 substr ⟨1, (♯‘𝑊)⟩))) |
Colors of variables: wff setvar class |
Syntax hints: → wi 4 ∧ wa 394 = wceq 1533 ∈ wcel 2098 ≠ wne 2930 ∅c0 4318 ⟨cop 4630 ‘cfv 6542 (class class class)co 7415 Fincfn 8960 0cc0 11136 1c1 11137 ℕ0cn0 12500 ℤ≥cuz 12850 ...cfz 13514 ♯chash 14319 Word cword 14494 ++ cconcat 14550 ⟨“cs1 14575 substr csubstr 14620 prefix cpfx 14650 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1789 ax-4 1803 ax-5 1905 ax-6 1963 ax-7 2003 ax-8 2100 ax-9 2108 ax-10 2129 ax-11 2146 ax-12 2166 ax-ext 2696 ax-rep 5280 ax-sep 5294 ax-nul 5301 ax-pow 5359 ax-pr 5423 ax-un 7737 ax-cnex 11192 ax-resscn 11193 ax-1cn 11194 ax-icn 11195 ax-addcl 11196 ax-addrcl 11197 ax-mulcl 11198 ax-mulrcl 11199 ax-mulcom 11200 ax-addass 11201 ax-mulass 11202 ax-distr 11203 ax-i2m1 11204 ax-1ne0 11205 ax-1rid 11206 ax-rnegex 11207 ax-rrecex 11208 ax-cnre 11209 ax-pre-lttri 11210 ax-pre-lttrn 11211 ax-pre-ltadd 11212 ax-pre-mulgt0 11213 |
This theorem depends on definitions: df-bi 206 df-an 395 df-or 846 df-3or 1085 df-3an 1086 df-tru 1536 df-fal 1546 df-ex 1774 df-nf 1778 df-sb 2060 df-mo 2528 df-eu 2557 df-clab 2703 df-cleq 2717 df-clel 2802 df-nfc 2877 df-ne 2931 df-nel 3037 df-ral 3052 df-rex 3061 df-reu 3365 df-rab 3420 df-v 3465 df-sbc 3770 df-csb 3886 df-dif 3943 df-un 3945 df-in 3947 df-ss 3957 df-pss 3960 df-nul 4319 df-if 4525 df-pw 4600 df-sn 4625 df-pr 4627 df-op 4631 df-uni 4904 df-int 4945 df-iun 4993 df-br 5144 df-opab 5206 df-mpt 5227 df-tr 5261 df-id 5570 df-eprel 5576 df-po 5584 df-so 5585 df-fr 5627 df-we 5629 df-xp 5678 df-rel 5679 df-cnv 5680 df-co 5681 df-dm 5682 df-rn 5683 df-res 5684 df-ima 5685 df-pred 6300 df-ord 6367 df-on 6368 df-lim 6369 df-suc 6370 df-iota 6494 df-fun 6544 df-fn 6545 df-f 6546 df-f1 6547 df-fo 6548 df-f1o 6549 df-fv 6550 df-riota 7371 df-ov 7418 df-oprab 7419 df-mpo 7420 df-om 7868 df-1st 7989 df-2nd 7990 df-frecs 8283 df-wrecs 8314 df-recs 8388 df-rdg 8427 df-1o 8483 df-er 8721 df-en 8961 df-dom 8962 df-sdom 8963 df-fin 8964 df-card 9960 df-pnf 11278 df-mnf 11279 df-xr 11280 df-ltxr 11281 df-le 11282 df-sub 11474 df-neg 11475 df-nn 12241 df-n0 12501 df-z 12587 df-uz 12851 df-fz 13515 df-fzo 13658 df-hash 14320 df-word 14495 df-concat 14551 df-s1 14576 df-substr 14621 df-pfx 14651 |
This theorem is referenced by: (None) |
Copyright terms: Public domain | W3C validator |