ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  wrdeqs1cat GIF version

Theorem wrdeqs1cat 11273
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.)
Assertion
Ref Expression
wrdeqs1cat ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → 𝑊 = (⟨“(𝑊‘0)”⟩ ++ (𝑊 substr ⟨1, (♯‘𝑊)⟩)))

Proof of Theorem wrdeqs1cat
StepHypRef Expression
1 simpl 109 . . 3 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → 𝑊 ∈ Word 𝐴)
2 wrdfin 11108 . . . 4 (𝑊 ∈ Word 𝐴𝑊 ∈ Fin)
3 1elfz0hash 11046 . . . 4 ((𝑊 ∈ Fin ∧ 𝑊 ≠ ∅) → 1 ∈ (0...(♯‘𝑊)))
42, 3sylan 283 . . 3 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → 1 ∈ (0...(♯‘𝑊)))
5 lennncl 11109 . . . . 5 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → (♯‘𝑊) ∈ ℕ)
65nnnn0d 9438 . . . 4 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → (♯‘𝑊) ∈ ℕ0)
7 eluzfz2 10245 . . . . 5 ((♯‘𝑊) ∈ (ℤ‘0) → (♯‘𝑊) ∈ (0...(♯‘𝑊)))
8 nn0uz 9774 . . . . 5 0 = (ℤ‘0)
97, 8eleq2s 2324 . . . 4 ((♯‘𝑊) ∈ ℕ0 → (♯‘𝑊) ∈ (0...(♯‘𝑊)))
106, 9syl 14 . . 3 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → (♯‘𝑊) ∈ (0...(♯‘𝑊)))
11 ccatpfx 11254 . . 3 ((𝑊 ∈ Word 𝐴 ∧ 1 ∈ (0...(♯‘𝑊)) ∧ (♯‘𝑊) ∈ (0...(♯‘𝑊))) → ((𝑊 prefix 1) ++ (𝑊 substr ⟨1, (♯‘𝑊)⟩)) = (𝑊 prefix (♯‘𝑊)))
121, 4, 10, 11syl3anc 1271 . 2 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → ((𝑊 prefix 1) ++ (𝑊 substr ⟨1, (♯‘𝑊)⟩)) = (𝑊 prefix (♯‘𝑊)))
13 pfx1 11256 . . 3 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → (𝑊 prefix 1) = ⟨“(𝑊‘0)”⟩)
1413oveq1d 6025 . 2 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → ((𝑊 prefix 1) ++ (𝑊 substr ⟨1, (♯‘𝑊)⟩)) = (⟨“(𝑊‘0)”⟩ ++ (𝑊 substr ⟨1, (♯‘𝑊)⟩)))
15 pfxid 11239 . . 3 (𝑊 ∈ Word 𝐴 → (𝑊 prefix (♯‘𝑊)) = 𝑊)
1615adantr 276 . 2 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → (𝑊 prefix (♯‘𝑊)) = 𝑊)
1712, 14, 163eqtr3rd 2271 1 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → 𝑊 = (⟨“(𝑊‘0)”⟩ ++ (𝑊 substr ⟨1, (♯‘𝑊)⟩)))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 104   = wceq 1395  wcel 2200  wne 2400  c0 3491  cop 3669  cfv 5321  (class class class)co 6010  Fincfn 6900  0cc0 8015  1c1 8016  0cn0 9385  cuz 9738  ...cfz 10221  chash 11014  Word cword 11089   ++ cconcat 11143  ⟨“cs1 11168   substr csubstr 11198   prefix cpfx 11225
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 617  ax-in2 618  ax-io 714  ax-5 1493  ax-7 1494  ax-gen 1495  ax-ie1 1539  ax-ie2 1540  ax-8 1550  ax-10 1551  ax-11 1552  ax-i12 1553  ax-bndl 1555  ax-4 1556  ax-17 1572  ax-i9 1576  ax-ial 1580  ax-i5r 1581  ax-13 2202  ax-14 2203  ax-ext 2211  ax-coll 4199  ax-sep 4202  ax-nul 4210  ax-pow 4259  ax-pr 4294  ax-un 4525  ax-setind 4630  ax-iinf 4681  ax-cnex 8106  ax-resscn 8107  ax-1cn 8108  ax-1re 8109  ax-icn 8110  ax-addcl 8111  ax-addrcl 8112  ax-mulcl 8113  ax-addcom 8115  ax-addass 8117  ax-distr 8119  ax-i2m1 8120  ax-0lt1 8121  ax-0id 8123  ax-rnegex 8124  ax-cnre 8126  ax-pre-ltirr 8127  ax-pre-ltwlin 8128  ax-pre-lttrn 8129  ax-pre-apti 8130  ax-pre-ltadd 8131
This theorem depends on definitions:  df-bi 117  df-dc 840  df-3or 1003  df-3an 1004  df-tru 1398  df-fal 1401  df-nf 1507  df-sb 1809  df-eu 2080  df-mo 2081  df-clab 2216  df-cleq 2222  df-clel 2225  df-nfc 2361  df-ne 2401  df-nel 2496  df-ral 2513  df-rex 2514  df-reu 2515  df-rab 2517  df-v 2801  df-sbc 3029  df-csb 3125  df-dif 3199  df-un 3201  df-in 3203  df-ss 3210  df-nul 3492  df-if 3603  df-pw 3651  df-sn 3672  df-pr 3673  df-op 3675  df-uni 3889  df-int 3924  df-iun 3967  df-br 4084  df-opab 4146  df-mpt 4147  df-tr 4183  df-id 4385  df-iord 4458  df-on 4460  df-ilim 4461  df-suc 4463  df-iom 4684  df-xp 4726  df-rel 4727  df-cnv 4728  df-co 4729  df-dm 4730  df-rn 4731  df-res 4732  df-ima 4733  df-iota 5281  df-fun 5323  df-fn 5324  df-f 5325  df-f1 5326  df-fo 5327  df-f1o 5328  df-fv 5329  df-riota 5963  df-ov 6013  df-oprab 6014  df-mpo 6015  df-1st 6295  df-2nd 6296  df-recs 6462  df-frec 6548  df-1o 6573  df-er 6693  df-en 6901  df-dom 6902  df-fin 6903  df-pnf 8199  df-mnf 8200  df-xr 8201  df-ltxr 8202  df-le 8203  df-sub 8335  df-neg 8336  df-inn 9127  df-n0 9386  df-z 9463  df-uz 9739  df-fz 10222  df-fzo 10356  df-ihash 11015  df-word 11090  df-concat 11144  df-s1 11169  df-substr 11199  df-pfx 11226
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator