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

Theorem pfxlswccat 11231
Description: Reconstruct a nonempty word from its prefix and last symbol. (Contributed by Alexander van der Vekens, 5-Aug-2018.) (Revised by AV, 9-May-2020.)
Assertion
Ref Expression
pfxlswccat ((𝑊 ∈ Word 𝑉𝑊 ≠ ∅) → ((𝑊 prefix ((♯‘𝑊) − 1)) ++ ⟨“(lastS‘𝑊)”⟩) = 𝑊)

Proof of Theorem pfxlswccat
StepHypRef Expression
1 swrdlsw 11187 . . . 4 ((𝑊 ∈ Word 𝑉𝑊 ≠ ∅) → (𝑊 substr ⟨((♯‘𝑊) − 1), (♯‘𝑊)⟩) = ⟨“(lastS‘𝑊)”⟩)
21eqcomd 2235 . . 3 ((𝑊 ∈ Word 𝑉𝑊 ≠ ∅) → ⟨“(lastS‘𝑊)”⟩ = (𝑊 substr ⟨((♯‘𝑊) − 1), (♯‘𝑊)⟩))
32oveq2d 6010 . 2 ((𝑊 ∈ Word 𝑉𝑊 ≠ ∅) → ((𝑊 prefix ((♯‘𝑊) − 1)) ++ ⟨“(lastS‘𝑊)”⟩) = ((𝑊 prefix ((♯‘𝑊) − 1)) ++ (𝑊 substr ⟨((♯‘𝑊) − 1), (♯‘𝑊)⟩)))
4 wrdfin 11077 . . . . 5 (𝑊 ∈ Word 𝑉𝑊 ∈ Fin)
5 1elfz0hash 11015 . . . . 5 ((𝑊 ∈ Fin ∧ 𝑊 ≠ ∅) → 1 ∈ (0...(♯‘𝑊)))
64, 5sylan 283 . . . 4 ((𝑊 ∈ Word 𝑉𝑊 ≠ ∅) → 1 ∈ (0...(♯‘𝑊)))
7 fznn0sub2 10312 . . . 4 (1 ∈ (0...(♯‘𝑊)) → ((♯‘𝑊) − 1) ∈ (0...(♯‘𝑊)))
86, 7syl 14 . . 3 ((𝑊 ∈ Word 𝑉𝑊 ≠ ∅) → ((♯‘𝑊) − 1) ∈ (0...(♯‘𝑊)))
9 pfxcctswrd 11228 . . 3 ((𝑊 ∈ Word 𝑉 ∧ ((♯‘𝑊) − 1) ∈ (0...(♯‘𝑊))) → ((𝑊 prefix ((♯‘𝑊) − 1)) ++ (𝑊 substr ⟨((♯‘𝑊) − 1), (♯‘𝑊)⟩)) = 𝑊)
108, 9syldan 282 . 2 ((𝑊 ∈ Word 𝑉𝑊 ≠ ∅) → ((𝑊 prefix ((♯‘𝑊) − 1)) ++ (𝑊 substr ⟨((♯‘𝑊) − 1), (♯‘𝑊)⟩)) = 𝑊)
113, 10eqtrd 2262 1 ((𝑊 ∈ Word 𝑉𝑊 ≠ ∅) → ((𝑊 prefix ((♯‘𝑊) − 1)) ++ ⟨“(lastS‘𝑊)”⟩) = 𝑊)
Colors of variables: wff set class
Syntax hints:  wi 4  wa 104   = wceq 1395  wcel 2200  wne 2400  c0 3491  cop 3669  cfv 5314  (class class class)co 5994  Fincfn 6877  0cc0 7987  1c1 7988  cmin 8305  ...cfz 10192  chash 10984  Word cword 11058  lastSclsw 11102   ++ cconcat 11111  ⟨“cs1 11134   substr csubstr 11163   prefix cpfx 11190
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 4198  ax-sep 4201  ax-nul 4209  ax-pow 4257  ax-pr 4292  ax-un 4521  ax-setind 4626  ax-iinf 4677  ax-cnex 8078  ax-resscn 8079  ax-1cn 8080  ax-1re 8081  ax-icn 8082  ax-addcl 8083  ax-addrcl 8084  ax-mulcl 8085  ax-mulrcl 8086  ax-addcom 8087  ax-mulcom 8088  ax-addass 8089  ax-mulass 8090  ax-distr 8091  ax-i2m1 8092  ax-0lt1 8093  ax-1rid 8094  ax-0id 8095  ax-rnegex 8096  ax-precex 8097  ax-cnre 8098  ax-pre-ltirr 8099  ax-pre-ltwlin 8100  ax-pre-lttrn 8101  ax-pre-apti 8102  ax-pre-ltadd 8103  ax-pre-mulgt0 8104
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 3888  df-int 3923  df-iun 3966  df-br 4083  df-opab 4145  df-mpt 4146  df-tr 4182  df-id 4381  df-iord 4454  df-on 4456  df-ilim 4457  df-suc 4459  df-iom 4680  df-xp 4722  df-rel 4723  df-cnv 4724  df-co 4725  df-dm 4726  df-rn 4727  df-res 4728  df-ima 4729  df-iota 5274  df-fun 5316  df-fn 5317  df-f 5318  df-f1 5319  df-fo 5320  df-f1o 5321  df-fv 5322  df-riota 5947  df-ov 5997  df-oprab 5998  df-mpo 5999  df-1st 6276  df-2nd 6277  df-recs 6441  df-frec 6527  df-1o 6552  df-er 6670  df-en 6878  df-dom 6879  df-fin 6880  df-pnf 8171  df-mnf 8172  df-xr 8173  df-ltxr 8174  df-le 8175  df-sub 8307  df-neg 8308  df-reap 8710  df-ap 8717  df-inn 9099  df-n0 9358  df-z 9435  df-uz 9711  df-fz 10193  df-fzo 10327  df-ihash 10985  df-word 11059  df-lsw 11103  df-concat 11112  df-s1 11135  df-substr 11164  df-pfx 11191
This theorem is referenced by:  ccats1pfxeq  11232  wrdind  11240  wrd2ind  11241
  Copyright terms: Public domain W3C validator