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

Theorem ccatval1 14746
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 14742 . . 3 ((𝑆 ∈ Word 𝐴 ∧ 𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))))
213adant3 1150 . 2 ((𝑆 ∈ Word 𝐴 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ (0..^(♯‘𝑆))) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))))
3 eleq1 2852 . . . 4 (𝑥 = 𝐼 → (𝑥 ∈ (0..^(♯‘𝑆)) ↔ 𝐼 ∈ (0..^(♯‘𝑆))))
4 fveq2 6905 . . . 4 (𝑥 = 𝐼 → (𝑆‘𝑥) = (𝑆‘𝐼))
5 fvoveq1 7463 . . . 4 (𝑥 = 𝐼 → (𝑇‘(𝑥 − (♯‘𝑆))) = (𝑇‘(𝐼 − (♯‘𝑆))))
63, 4, 5ifbieq12d 4514 . . 3 (𝑥 = 𝐼 → if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))) = if(𝐼 ∈ (0..^(♯‘𝑆)), (𝑆‘𝐼), (𝑇‘(𝐼 − (♯‘𝑆)))))
7 iftrue 4491 . . . 4 (𝐼 ∈ (0..^(♯‘𝑆)) → if(𝐼 ∈ (0..^(♯‘𝑆)), (𝑆‘𝐼), (𝑇‘(𝐼 − (♯‘𝑆)))) = (𝑆‘𝐼))
873ad2ant3 1153 . . 3 ((𝑆 ∈ Word 𝐴 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ (0..^(♯‘𝑆))) → if(𝐼 ∈ (0..^(♯‘𝑆)), (𝑆‘𝐼), (𝑇‘(𝐼 − (♯‘𝑆)))) = (𝑆‘𝐼))
96, 8sylan9eqr 2820 . 2 (((𝑆 ∈ Word 𝐴 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ (0..^(♯‘𝑆))) ∧ 𝑥 = 𝐼) → if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))) = (𝑆‘𝐼))
10 id 23 . . . 4 (𝐼 ∈ (0..^(♯‘𝑆)) → 𝐼 ∈ (0..^(♯‘𝑆)))
11 lencl 14702 . . . 4 (𝑇 ∈ Word 𝐵 → (♯‘𝑇) ∈ ℕ0)
12 elfzoext 13881 . . . 4 ((𝐼 ∈ (0..^(♯‘𝑆)) ∧ (♯‘𝑇) ∈ ℕ0) → 𝐼 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))))
1310, 11, 12syl2anr 609 . . 3 ((𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ (0..^(♯‘𝑆))) → 𝐼 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))))
14133adant1 1148 . 2 ((𝑆 ∈ Word 𝐴 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ (0..^(♯‘𝑆))) → 𝐼 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))))
15 fvexd 6920 . 2 ((𝑆 ∈ Word 𝐴 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ (0..^(♯‘𝑆))) → (𝑆‘𝐼) ∈ V)
162, 9, 14, 15fvmptd 7021 1 ((𝑆 ∈ Word 𝐴 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ 𝑇)‘𝐼) = (𝑆‘𝐼))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ∧ w3a 1103   = wceq 1570   ∈ wcel 2147  Vcvv 3454  ifcif 4485   ↦ cmpt 5189  ‘cfv 6555  (class class class)co 7440  0cc0 11224   + caddc 11227   − cmin 11565  ℕ0cn0 12630  ..^cfzo 13812  ♯chash 14498  Word cword 14682   ++ cconcat 14739
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5235  ax-sep 5252  ax-nul 5263  ax-pow 5331  ax-pr 5395  ax-un 7772  ax-cnex 11280  ax-resscn 11281  ax-1cn 11282  ax-icn 11283  ax-addcl 11284  ax-addrcl 11285  ax-mulcl 11286  ax-mulrcl 11287  ax-mulcom 11288  ax-addass 11289  ax-mulass 11290  ax-distr 11291  ax-i2m1 11292  ax-1ne0 11293  ax-1rid 11294  ax-rnegex 11295  ax-rrecex 11296  ax-cnre 11297  ax-pre-lttri 11298  ax-pre-lttrn 11299  ax-pre-ltadd 11300  ax-pre-mulgt0 11301
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 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-nel 3066  df-ral 3081  df-rex 3091  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-int 4911  df-iun 4956  df-br 5107  df-opab 5171  df-mpt 5190  df-tr 5216  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 6319  df-ord 6380  df-on 6381  df-lim 6382  df-suc 6383  df-iota 6509  df-fun 6557  df-fn 6558  df-f 6559  df-f1 6560  df-fo 6561  df-f1o 6562  df-fv 6563  df-riota 7397  df-ov 7443  df-oprab 7444  df-mpo 7445  df-om 7899  df-1st 8022  df-2nd 8023  df-frecs 8324  df-wrecs 8355  df-recs 8404  df-rdg 8443  df-1o 8501  df-er 8742  df-en 8999  df-dom 9000  df-sdom 9001  df-fin 9002  df-card 10044  df-pnf 11369  df-mnf 11370  df-xr 11371  df-ltxr 11372  df-le 11373  df-sub 11567  df-neg 11568  df-nn 12360  df-n0 12631  df-z 12718  df-uz 12990  df-fz 13664  df-fzo 13813  df-hash 14499  df-word 14683  df-concat 14740
This theorem is used by:  ccatsymb  14752  ccatfv0  14753  ccatval1lsw  14754  ccatrid  14757  ccatass  14758  ccatrn  14759  ccatf1  14760  ccats1val1  14799  ccat2s1p1  14802  lswccats1fst  14808  ccat2s1fvw  14811  ccatswrd  14843  ccatpfx  14875  pfxccat1  14876  swrdccatin1  14899  pfxccatin12lem3  14906  pfxccatin12  14907  splfv1  14929  splfv2a  14930  revccat  14940  cshwidxmod  14979  cats1fv  15035  ccat2s1fvwALT  15134  chnind  18821  chnub  18822  chnccat  18826  gsumsgrpccat  19062  efgsp1  19978  efgredlemd  19985  efgrelexlemb  19991  tgcgr4  29021  clwwlkccatlem  30607  clwwlkel  30664  wwlksext2clwwlk  30675  cycpmco2lem2  33755  cycpmco2lem4  33757  cycpmco2lem5  33758  cycpmco2  33761  signstfvn  35265  signstfvp  35267  signstfvneq0  35268  lpadleft  35382
  Copyright terms: Public domain W3C validator