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

Theorem ccatval2 14532
Description: Value of a symbol in the right half of a concatenated word. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Revised by Mario Carneiro, 22-Sep-2015.)
Assertion
Ref Expression
ccatval2 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ 𝑇)‘𝐼) = (𝑇‘(𝐼 − (♯‘𝑆))))

Proof of Theorem ccatval2
Dummy variable 𝑥 is distinct from all other variables.
StepHypRef Expression
1 ccatfval 14527 . . 3 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))))
213adant3 1138 . 2 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))))
3 eleq1 2827 . . . 4 (𝑥 = 𝐼 → (𝑥 ∈ (0..^(♯‘𝑆)) ↔ 𝐼 ∈ (0..^(♯‘𝑆))))
4 fveq2 6828 . . . 4 (𝑥 = 𝐼 → (𝑆𝑥) = (𝑆𝐼))
5 fvoveq1 7380 . . . 4 (𝑥 = 𝐼 → (𝑇‘(𝑥 − (♯‘𝑆))) = (𝑇‘(𝐼 − (♯‘𝑆))))
63, 4, 5ifbieq12d 4484 . . 3 (𝑥 = 𝐼 → if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))) = if(𝐼 ∈ (0..^(♯‘𝑆)), (𝑆𝐼), (𝑇‘(𝐼 − (♯‘𝑆)))))
7 fzodisj 13640 . . . . . 6 ((0..^(♯‘𝑆)) ∩ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) = ∅
8 minel 4395 . . . . . 6 ((𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∧ ((0..^(♯‘𝑆)) ∩ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) = ∅) → ¬ 𝐼 ∈ (0..^(♯‘𝑆)))
97, 8mpan2 697 . . . . 5 (𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → ¬ 𝐼 ∈ (0..^(♯‘𝑆)))
1093ad2ant3 1141 . . . 4 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ¬ 𝐼 ∈ (0..^(♯‘𝑆)))
1110iffalsed 4466 . . 3 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → if(𝐼 ∈ (0..^(♯‘𝑆)), (𝑆𝐼), (𝑇‘(𝐼 − (♯‘𝑆)))) = (𝑇‘(𝐼 − (♯‘𝑆))))
126, 11sylan9eqr 2796 . 2 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) ∧ 𝑥 = 𝐼) → if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))) = (𝑇‘(𝐼 − (♯‘𝑆))))
13 wrdfin 14486 . . . . . 6 (𝑆 ∈ Word 𝐵𝑆 ∈ Fin)
1413adantr 481 . . . . 5 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵) → 𝑆 ∈ Fin)
15 hashcl 14310 . . . . 5 (𝑆 ∈ Fin → (♯‘𝑆) ∈ ℕ0)
16 fzoss1 13633 . . . . . 6 ((♯‘𝑆) ∈ (ℤ‘0) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
17 nn0uz 12818 . . . . . 6 0 = (ℤ‘0)
1816, 17eleq2s 2857 . . . . 5 ((♯‘𝑆) ∈ ℕ0 → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
1914, 15, 183syl 18 . . . 4 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
2019sseld 3914 . . 3 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵) → (𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → 𝐼 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))))
21203impia 1123 . 2 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝐼 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))))
22 fvexd 6843 . 2 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑇‘(𝐼 − (♯‘𝑆))) ∈ V)
232, 12, 21, 22fvmptd 6944 1 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ 𝑇)‘𝐼) = (𝑇‘(𝐼 − (♯‘𝑆))))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 396  w3a 1092   = wceq 1547  wcel 2119  Vcvv 3431  cin 3882  wss 3883  c0 4262  ifcif 4455  cmpt 5154  cfv 6486  (class class class)co 7357  Fincfn 8884  0cc0 11030   + caddc 11033  cmin 11369  0cn0 12429  cuz 12780  ..^cfzo 13600  chash 14284  Word cword 14467   ++ cconcat 14524
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1802  ax-4 1816  ax-5 1917  ax-6 1974  ax-7 2015  ax-8 2121  ax-9 2129  ax-10 2152  ax-11 2168  ax-12 2189  ax-ext 2711  ax-rep 5200  ax-sep 5219  ax-nul 5229  ax-pow 5295  ax-pr 5363  ax-un 7679  ax-cnex 11086  ax-resscn 11087  ax-1cn 11088  ax-icn 11089  ax-addcl 11090  ax-addrcl 11091  ax-mulcl 11092  ax-mulrcl 11093  ax-mulcom 11094  ax-addass 11095  ax-mulass 11096  ax-distr 11097  ax-i2m1 11098  ax-1ne0 11099  ax-1rid 11100  ax-rnegex 11101  ax-rrecex 11102  ax-cnre 11103  ax-pre-lttri 11104  ax-pre-lttrn 11105  ax-pre-ltadd 11106  ax-pre-mulgt0 11107
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 854  df-3or 1093  df-3an 1094  df-tru 1550  df-fal 1560  df-ex 1787  df-nf 1791  df-sb 2074  df-mo 2543  df-eu 2573  df-clab 2718  df-cleq 2731  df-clel 2814  df-nfc 2888  df-ne 2935  df-nel 3039  df-ral 3054  df-rex 3064  df-reu 3345  df-rab 3392  df-v 3433  df-sbc 3724  df-csb 3832  df-dif 3886  df-un 3888  df-in 3890  df-ss 3900  df-pss 3903  df-nul 4263  df-if 4456  df-pw 4532  df-sn 4557  df-pr 4559  df-op 4563  df-uni 4840  df-int 4879  df-iun 4924  df-br 5074  df-opab 5136  df-mpt 5155  df-tr 5181  df-id 5514  df-eprel 5519  df-po 5527  df-so 5528  df-fr 5572  df-we 5574  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-res 5631  df-ima 5632  df-pred 6253  df-ord 6314  df-on 6315  df-lim 6316  df-suc 6317  df-iota 6442  df-fun 6488  df-fn 6489  df-f 6490  df-f1 6491  df-fo 6492  df-f1o 6493  df-fv 6494  df-riota 7314  df-ov 7360  df-oprab 7361  df-mpo 7362  df-om 7808  df-1st 7932  df-2nd 7933  df-frecs 8222  df-wrecs 8253  df-recs 8302  df-rdg 8340  df-1o 8396  df-er 8634  df-en 8885  df-dom 8886  df-sdom 8887  df-fin 8888  df-card 9855  df-pnf 11173  df-mnf 11174  df-xr 11175  df-ltxr 11176  df-le 11177  df-sub 11371  df-neg 11372  df-nn 12167  df-n0 12430  df-z 12517  df-uz 12781  df-fz 13454  df-fzo 13601  df-hash 14285  df-word 14468  df-concat 14525
This theorem is referenced by:  ccatval3  14533  ccatsymb  14537  ccatval21sw  14540  ccatlid  14541  ccatass  14543  ccatrn  14544  lswccatn0lsw  14546  ccats1val2  14582  ccat2s1p2  14585  ccatswrd  14623  ccatpfx  14655  pfxccatin12lem2  14685  pfxccatin12  14687  revccat  14720  cshwidxmod  14757  chnccat  18584  clwwlkccatlem  30078  ccatf1  33029  cycpmco2lem2  33209  cycpmco2lem4  33211
  Copyright terms: Public domain W3C validator