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

Theorem swrdlen 14603
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 6898 . . . . 5 (𝑆‘(𝑥 + 𝐹)) ∈ V
2 eqid 2726 . . . . 5 (𝑥 ∈ (0..^(𝐿𝐹)) ↦ (𝑆‘(𝑥 + 𝐹))) = (𝑥 ∈ (0..^(𝐿𝐹)) ↦ (𝑆‘(𝑥 + 𝐹)))
31, 2fnmpti 6687 . . . 4 (𝑥 ∈ (0..^(𝐿𝐹)) ↦ (𝑆‘(𝑥 + 𝐹))) Fn (0..^(𝐿𝐹))
4 swrdval2 14602 . . . . 5 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (𝑆 substr ⟨𝐹, 𝐿⟩) = (𝑥 ∈ (0..^(𝐿𝐹)) ↦ (𝑆‘(𝑥 + 𝐹))))
54fneq1d 6636 . . . 4 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → ((𝑆 substr ⟨𝐹, 𝐿⟩) Fn (0..^(𝐿𝐹)) ↔ (𝑥 ∈ (0..^(𝐿𝐹)) ↦ (𝑆‘(𝑥 + 𝐹))) Fn (0..^(𝐿𝐹))))
63, 5mpbiri 258 . . 3 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (𝑆 substr ⟨𝐹, 𝐿⟩) Fn (0..^(𝐿𝐹)))
7 hashfn 14340 . . 3 ((𝑆 substr ⟨𝐹, 𝐿⟩) Fn (0..^(𝐿𝐹)) → (♯‘(𝑆 substr ⟨𝐹, 𝐿⟩)) = (♯‘(0..^(𝐿𝐹))))
86, 7syl 17 . 2 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (♯‘(𝑆 substr ⟨𝐹, 𝐿⟩)) = (♯‘(0..^(𝐿𝐹))))
9 fznn0sub 13539 . . . 4 (𝐹 ∈ (0...𝐿) → (𝐿𝐹) ∈ ℕ0)
1093ad2ant2 1131 . . 3 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (𝐿𝐹) ∈ ℕ0)
11 hashfzo0 14395 . . 3 ((𝐿𝐹) ∈ ℕ0 → (♯‘(0..^(𝐿𝐹))) = (𝐿𝐹))
1210, 11syl 17 . 2 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (♯‘(0..^(𝐿𝐹))) = (𝐿𝐹))
138, 12eqtrd 2766 1 ((𝑆 ∈ Word 𝐴𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (♯‘(𝑆 substr ⟨𝐹, 𝐿⟩)) = (𝐿𝐹))
Colors of variables: wff setvar class
Syntax hints:  wi 4  w3a 1084   = wceq 1533  wcel 2098  cop 4629  cmpt 5224   Fn wfn 6532  cfv 6537  (class class class)co 7405  0cc0 11112   + caddc 11115  cmin 11448  0cn0 12476  ...cfz 13490  ..^cfzo 13633  chash 14295  Word cword 14470   substr csubstr 14596
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 2163  ax-ext 2697  ax-rep 5278  ax-sep 5292  ax-nul 5299  ax-pow 5356  ax-pr 5420  ax-un 7722  ax-cnex 11168  ax-resscn 11169  ax-1cn 11170  ax-icn 11171  ax-addcl 11172  ax-addrcl 11173  ax-mulcl 11174  ax-mulrcl 11175  ax-mulcom 11176  ax-addass 11177  ax-mulass 11178  ax-distr 11179  ax-i2m1 11180  ax-1ne0 11181  ax-1rid 11182  ax-rnegex 11183  ax-rrecex 11184  ax-cnre 11185  ax-pre-lttri 11186  ax-pre-lttrn 11187  ax-pre-ltadd 11188  ax-pre-mulgt0 11189
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 845  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 2704  df-cleq 2718  df-clel 2804  df-nfc 2879  df-ne 2935  df-nel 3041  df-ral 3056  df-rex 3065  df-reu 3371  df-rab 3427  df-v 3470  df-sbc 3773  df-csb 3889  df-dif 3946  df-un 3948  df-in 3950  df-ss 3960  df-pss 3962  df-nul 4318  df-if 4524  df-pw 4599  df-sn 4624  df-pr 4626  df-op 4630  df-uni 4903  df-int 4944  df-iun 4992  df-br 5142  df-opab 5204  df-mpt 5225  df-tr 5259  df-id 5567  df-eprel 5573  df-po 5581  df-so 5582  df-fr 5624  df-we 5626  df-xp 5675  df-rel 5676  df-cnv 5677  df-co 5678  df-dm 5679  df-rn 5680  df-res 5681  df-ima 5682  df-pred 6294  df-ord 6361  df-on 6362  df-lim 6363  df-suc 6364  df-iota 6489  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-riota 7361  df-ov 7408  df-oprab 7409  df-mpo 7410  df-om 7853  df-1st 7974  df-2nd 7975  df-frecs 8267  df-wrecs 8298  df-recs 8372  df-rdg 8411  df-1o 8467  df-er 8705  df-en 8942  df-dom 8943  df-sdom 8944  df-fin 8945  df-card 9936  df-pnf 11254  df-mnf 11255  df-xr 11256  df-ltxr 11257  df-le 11258  df-sub 11450  df-neg 11451  df-nn 12217  df-n0 12477  df-z 12563  df-uz 12827  df-fz 13491  df-fzo 13634  df-hash 14296  df-word 14471  df-substr 14597
This theorem is referenced by:  swrdf  14606  swrdrlen  14615  swrdlen2  14616  swrds1  14622  ccatswrd  14624  swrdccat2  14625  ccatpfx  14657  swrdswrd  14661  pfxccatin12lem2  14687  pfxccatin12  14689  spllen  14710  cshwlen  14755  cshwidxmod  14759  efgredleme  19663  splfv3  32627  cycpmco2lem3  32793  cycpmco2lem4  32794  cycpmco2lem5  32795  cycpmco2lem6  32796  cycpmco2  32798  revpfxsfxrev  34634
  Copyright terms: Public domain W3C validator