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

Theorem ccatvalfn 14533
Description: The concatenation of two words is a function over the half-open integer range having the sum of the lengths of the word as length. (Contributed by Alexander van der Vekens, 30-Mar-2018.)
Assertion
Ref Expression
ccatvalfn ((𝐴 ∈ Word 𝑉𝐵 ∈ Word 𝑉) → (𝐴 ++ 𝐵) Fn (0..^((♯‘𝐴) + (♯‘𝐵))))

Proof of Theorem ccatvalfn
Dummy variable 𝑥 is distinct from all other variables.
StepHypRef Expression
1 ccatfval 14525 . 2 ((𝐴 ∈ Word 𝑉𝐵 ∈ Word 𝑉) → (𝐴 ++ 𝐵) = (𝑥 ∈ (0..^((♯‘𝐴) + (♯‘𝐵))) ↦ if(𝑥 ∈ (0..^(♯‘𝐴)), (𝐴𝑥), (𝐵‘(𝑥 − (♯‘𝐴))))))
2 fvex 6904 . . . . 5 (𝐴𝑥) ∈ V
3 fvex 6904 . . . . 5 (𝐵‘(𝑥 − (♯‘𝐴))) ∈ V
42, 3ifex 4578 . . . 4 if(𝑥 ∈ (0..^(♯‘𝐴)), (𝐴𝑥), (𝐵‘(𝑥 − (♯‘𝐴)))) ∈ V
5 eqid 2732 . . . 4 (𝑥 ∈ (0..^((♯‘𝐴) + (♯‘𝐵))) ↦ if(𝑥 ∈ (0..^(♯‘𝐴)), (𝐴𝑥), (𝐵‘(𝑥 − (♯‘𝐴))))) = (𝑥 ∈ (0..^((♯‘𝐴) + (♯‘𝐵))) ↦ if(𝑥 ∈ (0..^(♯‘𝐴)), (𝐴𝑥), (𝐵‘(𝑥 − (♯‘𝐴)))))
64, 5fnmpti 6693 . . 3 (𝑥 ∈ (0..^((♯‘𝐴) + (♯‘𝐵))) ↦ if(𝑥 ∈ (0..^(♯‘𝐴)), (𝐴𝑥), (𝐵‘(𝑥 − (♯‘𝐴))))) Fn (0..^((♯‘𝐴) + (♯‘𝐵)))
7 fneq1 6640 . . 3 ((𝐴 ++ 𝐵) = (𝑥 ∈ (0..^((♯‘𝐴) + (♯‘𝐵))) ↦ if(𝑥 ∈ (0..^(♯‘𝐴)), (𝐴𝑥), (𝐵‘(𝑥 − (♯‘𝐴))))) → ((𝐴 ++ 𝐵) Fn (0..^((♯‘𝐴) + (♯‘𝐵))) ↔ (𝑥 ∈ (0..^((♯‘𝐴) + (♯‘𝐵))) ↦ if(𝑥 ∈ (0..^(♯‘𝐴)), (𝐴𝑥), (𝐵‘(𝑥 − (♯‘𝐴))))) Fn (0..^((♯‘𝐴) + (♯‘𝐵)))))
86, 7mpbiri 257 . 2 ((𝐴 ++ 𝐵) = (𝑥 ∈ (0..^((♯‘𝐴) + (♯‘𝐵))) ↦ if(𝑥 ∈ (0..^(♯‘𝐴)), (𝐴𝑥), (𝐵‘(𝑥 − (♯‘𝐴))))) → (𝐴 ++ 𝐵) Fn (0..^((♯‘𝐴) + (♯‘𝐵))))
91, 8syl 17 1 ((𝐴 ∈ Word 𝑉𝐵 ∈ Word 𝑉) → (𝐴 ++ 𝐵) Fn (0..^((♯‘𝐴) + (♯‘𝐵))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 396   = wceq 1541  wcel 2106  ifcif 4528  cmpt 5231   Fn wfn 6538  cfv 6543  (class class class)co 7411  0cc0 11112   + caddc 11115  cmin 11446  ..^cfzo 13629  chash 14292  Word cword 14466   ++ cconcat 14522
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2703  ax-rep 5285  ax-sep 5299  ax-nul 5306  ax-pr 5427
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 846  df-3an 1089  df-tru 1544  df-fal 1554  df-ex 1782  df-nf 1786  df-sb 2068  df-mo 2534  df-eu 2563  df-clab 2710  df-cleq 2724  df-clel 2810  df-nfc 2885  df-ne 2941  df-ral 3062  df-rex 3071  df-reu 3377  df-rab 3433  df-v 3476  df-sbc 3778  df-csb 3894  df-dif 3951  df-un 3953  df-in 3955  df-ss 3965  df-nul 4323  df-if 4529  df-sn 4629  df-pr 4631  df-op 4635  df-uni 4909  df-iun 4999  df-br 5149  df-opab 5211  df-mpt 5232  df-id 5574  df-xp 5682  df-rel 5683  df-cnv 5684  df-co 5685  df-dm 5686  df-rn 5687  df-res 5688  df-ima 5689  df-iota 6495  df-fun 6545  df-fn 6546  df-f 6547  df-f1 6548  df-fo 6549  df-f1o 6550  df-fv 6551  df-ov 7414  df-oprab 7415  df-mpo 7416  df-concat 14523
This theorem is referenced by:  ccatlid  14538  ccatrid  14539  ccatrn  14541  pfxccat1  14654  pfxccatin12  14685  frlmvscadiccat  41166
  Copyright terms: Public domain W3C validator