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

Theorem ccatval1 14667
Description: Value of a symbol in the left half of a concatenated word. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Revised by Mario Carneiro, 22-Sep-2015.) (Proof shortened by AV, 30-Apr-2020.) (Revised by JJ, 18-Jan-2024.)
Assertion
Ref Expression
ccatval1 ((𝑆 ∈ Word 𝐴𝑇 ∈ Word 𝐵𝐼 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ 𝑇)‘𝐼) = (𝑆𝐼))

Proof of Theorem ccatval1
Dummy variable 𝑥 is distinct from all other variables.
StepHypRef Expression
1 ccatfval 14663 . . 3 ((𝑆 ∈ Word 𝐴𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))))
213adant3 1150 . 2 ((𝑆 ∈ Word 𝐴𝑇 ∈ Word 𝐵𝐼 ∈ (0..^(♯‘𝑆))) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))))
3 eleq1 2848 . . . 4 (𝑥 = 𝐼 → (𝑥 ∈ (0..^(♯‘𝑆)) ↔ 𝐼 ∈ (0..^(♯‘𝑆))))
4 fveq2 6881 . . . 4 (𝑥 = 𝐼 → (𝑆𝑥) = (𝑆𝐼))
5 fvoveq1 7439 . . . 4 (𝑥 = 𝐼 → (𝑇‘(𝑥 − (♯‘𝑆))) = (𝑇‘(𝐼 − (♯‘𝑆))))
63, 4, 5ifbieq12d 4511 . . 3 (𝑥 = 𝐼 → if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))) = if(𝐼 ∈ (0..^(♯‘𝑆)), (𝑆𝐼), (𝑇‘(𝐼 − (♯‘𝑆)))))
7 iftrue 4488 . . . 4 (𝐼 ∈ (0..^(♯‘𝑆)) → if(𝐼 ∈ (0..^(♯‘𝑆)), (𝑆𝐼), (𝑇‘(𝐼 − (♯‘𝑆)))) = (𝑆𝐼))
873ad2ant3 1153 . . 3 ((𝑆 ∈ Word 𝐴𝑇 ∈ Word 𝐵𝐼 ∈ (0..^(♯‘𝑆))) → if(𝐼 ∈ (0..^(♯‘𝑆)), (𝑆𝐼), (𝑇‘(𝐼 − (♯‘𝑆)))) = (𝑆𝐼))
96, 8sylan9eqr 2817 . 2 (((𝑆 ∈ Word 𝐴𝑇 ∈ Word 𝐵𝐼 ∈ (0..^(♯‘𝑆))) ∧ 𝑥 = 𝐼) → if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))) = (𝑆𝐼))
10 id 23 . . . 4 (𝐼 ∈ (0..^(♯‘𝑆)) → 𝐼 ∈ (0..^(♯‘𝑆)))
11 lencl 14623 . . . 4 (𝑇 ∈ Word 𝐵 → (♯‘𝑇) ∈ ℕ0)
12 elfzoext 13803 . . . 4 ((𝐼 ∈ (0..^(♯‘𝑆)) ∧ (♯‘𝑇) ∈ ℕ0) → 𝐼 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))))
1310, 11, 12syl2anr 609 . . 3 ((𝑇 ∈ Word 𝐵𝐼 ∈ (0..^(♯‘𝑆))) → 𝐼 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))))
14133adant1 1148 . 2 ((𝑆 ∈ Word 𝐴𝑇 ∈ Word 𝐵𝐼 ∈ (0..^(♯‘𝑆))) → 𝐼 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))))
15 fvexd 6896 . 2 ((𝑆 ∈ Word 𝐴𝑇 ∈ Word 𝐵𝐼 ∈ (0..^(♯‘𝑆))) → (𝑆𝐼) ∈ V)
162, 9, 14, 15fvmptd 6997 1 ((𝑆 ∈ Word 𝐴𝑇 ∈ Word 𝐵𝐼 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ 𝑇)‘𝐼) = (𝑆𝐼))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  w3a 1103   = wceq 1570  wcel 2145  Vcvv 3450  ifcif 4482  cmpt 5186  cfv 6535  (class class class)co 7416  0cc0 11149   + caddc 11152  cmin 11490  0cn0 12553  ..^cfzo 13734  chash 14419  Word cword 14603   ++ cconcat 14660
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 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-rep 5232  ax-sep 5251  ax-nul 5263  ax-pow 5330  ax-pr 5398  ax-un 7742  ax-cnex 11205  ax-resscn 11206  ax-1cn 11207  ax-icn 11208  ax-addcl 11209  ax-addrcl 11210  ax-mulcl 11211  ax-mulrcl 11212  ax-mulcom 11213  ax-addass 11214  ax-mulass 11215  ax-distr 11216  ax-i2m1 11217  ax-1ne0 11218  ax-1rid 11219  ax-rnegex 11220  ax-rrecex 11221  ax-cnre 11222  ax-pre-lttri 11223  ax-pre-lttrn 11224  ax-pre-ltadd 11225  ax-pre-mulgt0 11226
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 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-int 4908  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-pred 6301  df-ord 6362  df-on 6363  df-lim 6364  df-suc 6365  df-iota 6491  df-fun 6537  df-fn 6538  df-f 6539  df-f1 6540  df-fo 6541  df-f1o 6542  df-fv 6543  df-riota 7373  df-ov 7419  df-oprab 7420  df-mpo 7421  df-om 7869  df-1st 7992  df-2nd 7993  df-frecs 8285  df-wrecs 8316  df-recs 8365  df-rdg 8404  df-1o 8462  df-er 8703  df-en 8960  df-dom 8961  df-sdom 8962  df-fin 8963  df-card 9969  df-pnf 11294  df-mnf 11295  df-xr 11296  df-ltxr 11297  df-le 11298  df-sub 11492  df-neg 11493  df-nn 12283  df-n0 12554  df-z 12641  df-uz 12913  df-fz 13587  df-fzo 13735  df-hash 14420  df-word 14604  df-concat 14661
This theorem is used by:  ccatsymb  14673  ccatfv0  14674  ccatval1lsw  14675  ccatrid  14678  ccatass  14679  ccatrn  14680  ccatf1  14681  ccats1val1  14719  ccat2s1p1  14722  lswccats1fst  14728  ccat2s1fvw  14731  ccatswrd  14763  ccatpfx  14795  pfxccat1  14796  swrdccatin1  14819  pfxccatin12lem3  14826  pfxccatin12  14827  splfv1  14849  splfv2a  14850  revccat  14860  cshwidxmod  14899  cats1fv  14955  ccat2s1fvwALT  15053  chnind  18734  chnub  18735  chnccat  18739  gsumsgrpccat  18975  efgsp1  19890  efgredlemd  19897  efgrelexlemb  19903  tgcgr4  28905  clwwlkccatlem  30491  clwwlkel  30548  wwlksext2clwwlk  30559  cycpmco2lem2  33599  cycpmco2lem4  33601  cycpmco2lem5  33602  cycpmco2  33605  signstfvn  35110  signstfvp  35112  signstfvneq0  35113  lpadleft  35227
  Copyright terms: Public domain W3C validator