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

Theorem lswco 14902
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 6715 . . . . . 6 (𝐹:𝐴𝐵 → Fun 𝐹)
21anim1i 627 . . . . 5 ((𝐹:𝐴𝐵𝑊 ∈ Word 𝐴) → (Fun 𝐹𝑊 ∈ Word 𝐴))
32ancoms 464 . . . 4 ((𝑊 ∈ Word 𝐴𝐹:𝐴𝐵) → (Fun 𝐹𝑊 ∈ Word 𝐴))
433adant2 1149 . . 3 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (Fun 𝐹𝑊 ∈ Word 𝐴))
5 cofunexg 7955 . . 3 ((Fun 𝐹𝑊 ∈ Word 𝐴) → (𝐹𝑊) ∈ V)
6 lsw 14621 . . 3 ((𝐹𝑊) ∈ V → (lastS‘(𝐹𝑊)) = ((𝐹𝑊)‘((♯‘(𝐹𝑊)) − 1)))
74, 5, 63syl 19 . 2 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (lastS‘(𝐹𝑊)) = ((𝐹𝑊)‘((♯‘(𝐹𝑊)) − 1)))
8 lenco 14895 . . . 4 ((𝑊 ∈ Word 𝐴𝐹:𝐴𝐵) → (♯‘(𝐹𝑊)) = (♯‘𝑊))
983adant2 1149 . . 3 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (♯‘(𝐹𝑊)) = (♯‘𝑊))
109fvoveq1d 7445 . 2 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → ((𝐹𝑊)‘((♯‘(𝐹𝑊)) − 1)) = ((𝐹𝑊)‘((♯‘𝑊) − 1)))
11 wrdf 14575 . . . . . . 7 (𝑊 ∈ Word 𝐴𝑊:(0..^(♯‘𝑊))⟶𝐴)
1211adantr 486 . . . . . 6 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → 𝑊:(0..^(♯‘𝑊))⟶𝐴)
13 lennncl 14591 . . . . . . 7 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → (♯‘𝑊) ∈ ℕ)
14 fzo0end 13806 . . . . . . 7 ((♯‘𝑊) ∈ ℕ → ((♯‘𝑊) − 1) ∈ (0..^(♯‘𝑊)))
1513, 14syl 18 . . . . . 6 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → ((♯‘𝑊) − 1) ∈ (0..^(♯‘𝑊)))
1612, 15jca 521 . . . . 5 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅) → (𝑊:(0..^(♯‘𝑊))⟶𝐴 ∧ ((♯‘𝑊) − 1) ∈ (0..^(♯‘𝑊))))
17163adant3 1150 . . . 4 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (𝑊:(0..^(♯‘𝑊))⟶𝐴 ∧ ((♯‘𝑊) − 1) ∈ (0..^(♯‘𝑊))))
18 fvco3 6988 . . . 4 ((𝑊:(0..^(♯‘𝑊))⟶𝐴 ∧ ((♯‘𝑊) − 1) ∈ (0..^(♯‘𝑊))) → ((𝐹𝑊)‘((♯‘𝑊) − 1)) = (𝐹‘(𝑊‘((♯‘𝑊) − 1))))
1917, 18syl 18 . . 3 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → ((𝐹𝑊)‘((♯‘𝑊) − 1)) = (𝐹‘(𝑊‘((♯‘𝑊) − 1))))
20 lsw 14621 . . . . . 6 (𝑊 ∈ Word 𝐴 → (lastS‘𝑊) = (𝑊‘((♯‘𝑊) − 1)))
21203ad2ant1 1151 . . . . 5 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (lastS‘𝑊) = (𝑊‘((♯‘𝑊) − 1)))
2221eqcomd 2772 . . . 4 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (𝑊‘((♯‘𝑊) − 1)) = (lastS‘𝑊))
2322fveq2d 6892 . . 3 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (𝐹‘(𝑊‘((♯‘𝑊) − 1))) = (𝐹‘(lastS‘𝑊)))
2419, 23eqtrd 2801 . 2 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → ((𝐹𝑊)‘((♯‘𝑊) − 1)) = (𝐹‘(lastS‘𝑊)))
257, 10, 243eqtrd 2805 1 ((𝑊 ∈ Word 𝐴𝑊 ≠ ∅ ∧ 𝐹:𝐴𝐵) → (lastS‘(𝐹𝑊)) = (𝐹‘(lastS‘𝑊)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401  w3a 1103   = wceq 1570  wcel 2146  wne 2961  Vcvv 3458  c0 4289  ccom 5670  Fun wfun 6537  wf 6539  cfv 6543  (class class class)co 7423  0cc0 11118  1c1 11119  cmin 11459  cn 12251  ..^cfzo 13701  chash 14386  Word cword 14570  lastSclsw 14619
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2738  ax-rep 5243  ax-sep 5262  ax-nul 5274  ax-pow 5341  ax-pr 5409  ax-un 7745  ax-cnex 11174  ax-resscn 11175  ax-1cn 11176  ax-icn 11177  ax-addcl 11178  ax-addrcl 11179  ax-mulcl 11180  ax-mulrcl 11181  ax-mulcom 11182  ax-addass 11183  ax-mulass 11184  ax-distr 11185  ax-i2m1 11186  ax-1ne0 11187  ax-1rid 11188  ax-rnegex 11189  ax-rrecex 11190  ax-cnre 11191  ax-pre-lttri 11192  ax-pre-lttrn 11193  ax-pre-ltadd 11194  ax-pre-mulgt0 11195
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2570  df-eu 2600  df-clab 2745  df-cleq 2758  df-clel 2841  df-nfc 2915  df-ne 2962  df-nel 3068  df-ral 3083  df-rex 3093  df-reu 3373  df-rab 3420  df-v 3460  df-sbc 3748  df-csb 3857  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-pss 3928  df-nul 4290  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-op 4601  df-uni 4878  df-int 4918  df-iun 4963  df-br 5115  df-opab 5179  df-mpt 5198  df-tr 5224  df-id 5561  df-eprel 5566  df-po 5574  df-so 5575  df-fr 5619  df-we 5621  df-xp 5672  df-rel 5673  df-cnv 5674  df-co 5675  df-dm 5676  df-rn 5677  df-res 5678  df-ima 5679  df-pred 6309  df-ord 6370  df-on 6371  df-lim 6372  df-suc 6373  df-iota 6499  df-fun 6545  df-fn 6546  df-f 6547  df-f1 6548  df-fo 6549  df-f1o 6550  df-fv 6551  df-riota 7380  df-ov 7426  df-oprab 7427  df-mpo 7428  df-om 7872  df-1st 7995  df-2nd 7996  df-frecs 8287  df-wrecs 8318  df-recs 8367  df-rdg 8406  df-1o 8462  df-er 8703  df-en 8953  df-dom 8954  df-sdom 8955  df-fin 8956  df-card 9944  df-pnf 11263  df-mnf 11264  df-xr 11265  df-ltxr 11266  df-le 11267  df-sub 11461  df-neg 11462  df-nn 12252  df-n0 12523  df-z 12610  df-uz 12881  df-fz 13554  df-fzo 13702  df-hash 14387  df-word 14571  df-lsw 14620
This theorem is used by:  wrdpmtrlast  33444
  Copyright terms: Public domain W3C validator