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

Theorem lswco 13378
Description: Mapping of (nonempty) words commutes with the "last symbol" operation. This theorem would not hold if 𝑊 = ∅, (𝐹‘∅) ≠ ∅ and ∅ ∈ 𝐴, because then ( lastS ‘(𝐹𝑊)) = ( lastS ‘∅) = ∅ ≠ (𝐹‘∅) = (𝐹( lastS ‘𝑊)). (Contributed by AV, 11-Nov-2018.)
Assertion
Ref Expression
lswco ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → ( lastS ‘(𝐹𝑊)) = (𝐹‘( lastS ‘𝑊)))

Proof of Theorem lswco
StepHypRef Expression
1 ffun 5944 . . . . . 6 (𝐹:𝐴𝐵 → Fun 𝐹)
21anim1i 589 . . . . 5 ((𝐹:𝐴𝐵𝑊 ∈ Word 𝐴) → (Fun 𝐹𝑊 ∈ Word 𝐴))
32ancoms 467 . . . 4 ((𝑊 ∈ Word 𝐴𝐹:𝐴𝐵) → (Fun 𝐹𝑊 ∈ Word 𝐴))
433adant2 1072 . . 3 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (Fun 𝐹𝑊 ∈ Word 𝐴))
5 cofunexg 6997 . . 3 ((Fun 𝐹𝑊 ∈ Word 𝐴) → (𝐹𝑊) ∈ V)
6 lsw 13147 . . 3 ((𝐹𝑊) ∈ V → ( lastS ‘(𝐹𝑊)) = ((𝐹𝑊)‘((#‘(𝐹𝑊)) − 1)))
74, 5, 63syl 18 . 2 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → ( lastS ‘(𝐹𝑊)) = ((𝐹𝑊)‘((#‘(𝐹𝑊)) − 1)))
8 lenco 13372 . . . . 5 ((𝑊 ∈ Word 𝐴𝐹:𝐴𝐵) → (#‘(𝐹𝑊)) = (#‘𝑊))
983adant2 1072 . . . 4 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (#‘(𝐹𝑊)) = (#‘𝑊))
109oveq1d 6539 . . 3 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → ((#‘(𝐹𝑊)) − 1) = ((#‘𝑊) − 1))
1110fveq2d 6089 . 2 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → ((𝐹𝑊)‘((#‘(𝐹𝑊)) − 1)) = ((𝐹𝑊)‘((#‘𝑊) − 1)))
12 wrdf 13108 . . . . . . 7 (𝑊 ∈ Word 𝐴𝑊:(0..^(#‘𝑊))⟶𝐴)
1312adantr 479 . . . . . 6 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → 𝑊:(0..^(#‘𝑊))⟶𝐴)
14 lennncl 13123 . . . . . . 7 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → (#‘𝑊) ∈ ℕ)
15 fzo0end 12378 . . . . . . 7 ((#‘𝑊) ∈ ℕ → ((#‘𝑊) − 1) ∈ (0..^(#‘𝑊)))
1614, 15syl 17 . . . . . 6 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → ((#‘𝑊) − 1) ∈ (0..^(#‘𝑊)))
1713, 16jca 552 . . . . 5 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → (𝑊:(0..^(#‘𝑊))⟶𝐴 ∧ ((#‘𝑊) − 1) ∈ (0..^(#‘𝑊))))
18173adant3 1073 . . . 4 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (𝑊:(0..^(#‘𝑊))⟶𝐴 ∧ ((#‘𝑊) − 1) ∈ (0..^(#‘𝑊))))
19 fvco3 6167 . . . 4 ((𝑊:(0..^(#‘𝑊))⟶𝐴 ∧ ((#‘𝑊) − 1) ∈ (0..^(#‘𝑊))) → ((𝐹𝑊)‘((#‘𝑊) − 1)) = (𝐹‘(𝑊‘((#‘𝑊) − 1))))
2018, 19syl 17 . . 3 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → ((𝐹𝑊)‘((#‘𝑊) − 1)) = (𝐹‘(𝑊‘((#‘𝑊) − 1))))
21 lsw 13147 . . . . . 6 (𝑊 ∈ Word 𝐴 → ( lastS ‘𝑊) = (𝑊‘((#‘𝑊) − 1)))
22213ad2ant1 1074 . . . . 5 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → ( lastS ‘𝑊) = (𝑊‘((#‘𝑊) − 1)))
2322eqcomd 2612 . . . 4 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (𝑊‘((#‘𝑊) − 1)) = ( lastS ‘𝑊))
2423fveq2d 6089 . . 3 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (𝐹‘(𝑊‘((#‘𝑊) − 1))) = (𝐹‘( lastS ‘𝑊)))
2520, 24eqtrd 2640 . 2 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → ((𝐹𝑊)‘((#‘𝑊) − 1)) = (𝐹‘( lastS ‘𝑊)))
267, 11, 253eqtrd 2644 1 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → ( lastS ‘(𝐹𝑊)) = (𝐹‘( lastS ‘𝑊)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 382  w3a 1030   = wceq 1474  wcel 1976  wne 2776  Vcvv 3169  c0 3870  ccom 5029  Fun wfun 5781  wf 5783  cfv 5787  (class class class)co 6524  0cc0 9789  1c1 9790  cmin 10114  cn 10864  ..^cfzo 12286  #chash 12931  Word cword 13089   lastS clsw 13090
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1712  ax-4 1727  ax-5 1826  ax-6 1874  ax-7 1921  ax-8 1978  ax-9 1985  ax-10 2005  ax-11 2020  ax-12 2032  ax-13 2229  ax-ext 2586  ax-rep 4690  ax-sep 4700  ax-nul 4709  ax-pow 4761  ax-pr 4825  ax-un 6821  ax-cnex 9845  ax-resscn 9846  ax-1cn 9847  ax-icn 9848  ax-addcl 9849  ax-addrcl 9850  ax-mulcl 9851  ax-mulrcl 9852  ax-mulcom 9853  ax-addass 9854  ax-mulass 9855  ax-distr 9856  ax-i2m1 9857  ax-1ne0 9858  ax-1rid 9859  ax-rnegex 9860  ax-rrecex 9861  ax-cnre 9862  ax-pre-lttri 9863  ax-pre-lttrn 9864  ax-pre-ltadd 9865  ax-pre-mulgt0 9866
This theorem depends on definitions:  df-bi 195  df-or 383  df-an 384  df-3or 1031  df-3an 1032  df-tru 1477  df-ex 1695  df-nf 1700  df-sb 1867  df-eu 2458  df-mo 2459  df-clab 2593  df-cleq 2599  df-clel 2602  df-nfc 2736  df-ne 2778  df-nel 2779  df-ral 2897  df-rex 2898  df-reu 2899  df-rab 2901  df-v 3171  df-sbc 3399  df-csb 3496  df-dif 3539  df-un 3541  df-in 3543  df-ss 3550  df-pss 3552  df-nul 3871  df-if 4033  df-pw 4106  df-sn 4122  df-pr 4124  df-tp 4126  df-op 4128  df-uni 4364  df-int 4402  df-iun 4448  df-br 4575  df-opab 4635  df-mpt 4636  df-tr 4672  df-eprel 4936  df-id 4940  df-po 4946  df-so 4947  df-fr 4984  df-we 4986  df-xp 5031  df-rel 5032  df-cnv 5033  df-co 5034  df-dm 5035  df-rn 5036  df-res 5037  df-ima 5038  df-pred 5580  df-ord 5626  df-on 5627  df-lim 5628  df-suc 5629  df-iota 5751  df-fun 5789  df-fn 5790  df-f 5791  df-f1 5792  df-fo 5793  df-f1o 5794  df-fv 5795  df-riota 6486  df-ov 6527  df-oprab 6528  df-mpt2 6529  df-om 6932  df-1st 7033  df-2nd 7034  df-wrecs 7268  df-recs 7329  df-rdg 7367  df-1o 7421  df-oadd 7425  df-er 7603  df-en 7816  df-dom 7817  df-sdom 7818  df-fin 7819  df-card 8622  df-pnf 9929  df-mnf 9930  df-xr 9931  df-ltxr 9932  df-le 9933  df-sub 10116  df-neg 10117  df-nn 10865  df-n0 11137  df-z 11208  df-uz 11517  df-fz 12150  df-fzo 12287  df-hash 12932  df-word 13097  df-lsw 13098
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator