MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  swrdlen Structured version   Visualization version   GIF version

Theorem swrdlen 13377
Description: Length of an extracted subword. (Contributed by Stefan O'Rear, 16-Aug-2015.)
Assertion
Ref Expression
swrdlen ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(#‘𝑆))) → (#‘(𝑆 substr ⟨𝐹, 𝐿⟩)) = (𝐿𝐹))

Proof of Theorem swrdlen
Dummy variable 𝑥 is distinct from all other variables.
StepHypRef Expression
1 fvex 6168 . . . . 5 (𝑆‘(𝑥 + 𝐹)) ∈ V
2 eqid 2621 . . . . 5 (𝑥 ∈ (0..^(𝐿𝐹)) ↦ (𝑆‘(𝑥 + 𝐹))) = (𝑥 ∈ (0..^(𝐿𝐹)) ↦ (𝑆‘(𝑥 + 𝐹)))
31, 2fnmpti 5989 . . . 4 (𝑥 ∈ (0..^(𝐿𝐹)) ↦ (𝑆‘(𝑥 + 𝐹))) Fn (0..^(𝐿𝐹))
4 swrdval2 13374 . . . . 5 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(#‘𝑆))) → (𝑆 substr ⟨𝐹, 𝐿⟩) = (𝑥 ∈ (0..^(𝐿𝐹)) ↦ (𝑆‘(𝑥 + 𝐹))))
54fneq1d 5949 . . . 4 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(#‘𝑆))) → ((𝑆 substr ⟨𝐹, 𝐿⟩) Fn (0..^(𝐿𝐹)) ↔ (𝑥 ∈ (0..^(𝐿𝐹)) ↦ (𝑆‘(𝑥 + 𝐹))) Fn (0..^(𝐿𝐹))))
63, 5mpbiri 248 . . 3 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(#‘𝑆))) → (𝑆 substr ⟨𝐹, 𝐿⟩) Fn (0..^(𝐿𝐹)))
7 hashfn 13120 . . 3 ((𝑆 substr ⟨𝐹, 𝐿⟩) Fn (0..^(𝐿𝐹)) → (#‘(𝑆 substr ⟨𝐹, 𝐿⟩)) = (#‘(0..^(𝐿𝐹))))
86, 7syl 17 . 2 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(#‘𝑆))) → (#‘(𝑆 substr ⟨𝐹, 𝐿⟩)) = (#‘(0..^(𝐿𝐹))))
9 fznn0sub 12331 . . . 4 (𝐹 ∈ (0...𝐿) → (𝐿𝐹) ∈ ℕ0)
1093ad2ant2 1081 . . 3 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(#‘𝑆))) → (𝐿𝐹) ∈ ℕ0)
11 hashfzo0 13173 . . 3 ((𝐿𝐹) ∈ ℕ0 → (#‘(0..^(𝐿𝐹))) = (𝐿𝐹))
1210, 11syl 17 . 2 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(#‘𝑆))) → (#‘(0..^(𝐿𝐹))) = (𝐿𝐹))
138, 12eqtrd 2655 1 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(#‘𝑆))) → (#‘(𝑆 substr ⟨𝐹, 𝐿⟩)) = (𝐿𝐹))
Colors of variables: wff setvar class
Syntax hints:  wi 4  w3a 1036   = wceq 1480  wcel 1987  cop 4161  cmpt 4683   Fn wfn 5852  cfv 5857  (class class class)co 6615  0cc0 9896   + caddc 9899  cmin 10226  0cn0 11252  ...cfz 12284  ..^cfzo 12422  #chash 13073  Word cword 13246   substr csubstr 13250
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1719  ax-4 1734  ax-5 1836  ax-6 1885  ax-7 1932  ax-8 1989  ax-9 1996  ax-10 2016  ax-11 2031  ax-12 2044  ax-13 2245  ax-ext 2601  ax-rep 4741  ax-sep 4751  ax-nul 4759  ax-pow 4813  ax-pr 4877  ax-un 6914  ax-cnex 9952  ax-resscn 9953  ax-1cn 9954  ax-icn 9955  ax-addcl 9956  ax-addrcl 9957  ax-mulcl 9958  ax-mulrcl 9959  ax-mulcom 9960  ax-addass 9961  ax-mulass 9962  ax-distr 9963  ax-i2m1 9964  ax-1ne0 9965  ax-1rid 9966  ax-rnegex 9967  ax-rrecex 9968  ax-cnre 9969  ax-pre-lttri 9970  ax-pre-lttrn 9971  ax-pre-ltadd 9972  ax-pre-mulgt0 9973
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1037  df-3an 1038  df-tru 1483  df-ex 1702  df-nf 1707  df-sb 1878  df-eu 2473  df-mo 2474  df-clab 2608  df-cleq 2614  df-clel 2617  df-nfc 2750  df-ne 2791  df-nel 2894  df-ral 2913  df-rex 2914  df-reu 2915  df-rab 2917  df-v 3192  df-sbc 3423  df-csb 3520  df-dif 3563  df-un 3565  df-in 3567  df-ss 3574  df-pss 3576  df-nul 3898  df-if 4065  df-pw 4138  df-sn 4156  df-pr 4158  df-tp 4160  df-op 4162  df-uni 4410  df-int 4448  df-iun 4494  df-br 4624  df-opab 4684  df-mpt 4685  df-tr 4723  df-eprel 4995  df-id 4999  df-po 5005  df-so 5006  df-fr 5043  df-we 5045  df-xp 5090  df-rel 5091  df-cnv 5092  df-co 5093  df-dm 5094  df-rn 5095  df-res 5096  df-ima 5097  df-pred 5649  df-ord 5695  df-on 5696  df-lim 5697  df-suc 5698  df-iota 5820  df-fun 5859  df-fn 5860  df-f 5861  df-f1 5862  df-fo 5863  df-f1o 5864  df-fv 5865  df-riota 6576  df-ov 6618  df-oprab 6619  df-mpt2 6620  df-om 7028  df-1st 7128  df-2nd 7129  df-wrecs 7367  df-recs 7428  df-rdg 7466  df-1o 7520  df-er 7702  df-en 7916  df-dom 7917  df-sdom 7918  df-fin 7919  df-card 8725  df-pnf 10036  df-mnf 10037  df-xr 10038  df-ltxr 10039  df-le 10040  df-sub 10228  df-neg 10229  df-nn 10981  df-n0 11253  df-z 11338  df-uz 11648  df-fz 12285  df-fzo 12423  df-hash 13074  df-word 13254  df-substr 13258
This theorem is referenced by:  swrdf  13379  swrdrlen  13389  swrdlen2  13399  swrds1  13405  ccatswrd  13410  swrdccat2  13412  swrdswrd  13414  swrdccatin12lem2  13442  swrdccatin12  13444  spllen  13458  splfv1  13459  splfv2a  13460  cshwlen  13498  cshwidxmod  13502  efgredleme  18096  ccatpfx  40738  pfxccatin12lem2  40753  pfxccatin12  40754
  Copyright terms: Public domain W3C validator