Users' Mathboxes Mathbox for Thierry Arnoux < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  sseqfv2 Structured version   Visualization version   GIF version

Theorem sseqfv2 31931
Description: Value of the strong sequence builder function. (Contributed by Thierry Arnoux, 21-Apr-2019.)
Hypotheses
Ref Expression
sseqval.1 (𝜑𝑆 ∈ V)
sseqval.2 (𝜑𝑀 ∈ Word 𝑆)
sseqval.3 𝑊 = (Word 𝑆 ∩ (♯ “ (ℤ‘(♯‘𝑀))))
sseqval.4 (𝜑𝐹:𝑊𝑆)
sseqfv2.4 (𝜑𝑁 ∈ (ℤ‘(♯‘𝑀)))
Assertion
Ref Expression
sseqfv2 (𝜑 → ((𝑀seqstr𝐹)‘𝑁) = (lastS‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁)))
Distinct variable groups:   𝑥,𝑦,𝐹   𝑥,𝑀,𝑦   𝜑,𝑥,𝑦   𝑥,𝑊,𝑦
Allowed substitution hints:   𝑆(𝑥,𝑦)   𝑁(𝑥,𝑦)

Proof of Theorem sseqfv2
Dummy variables 𝑎 𝑏 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 sseqval.1 . . . 4 (𝜑𝑆 ∈ V)
2 sseqval.2 . . . 4 (𝜑𝑀 ∈ Word 𝑆)
3 sseqval.3 . . . 4 𝑊 = (Word 𝑆 ∩ (♯ “ (ℤ‘(♯‘𝑀))))
4 sseqval.4 . . . 4 (𝜑𝐹:𝑊𝑆)
51, 2, 3, 4sseqval 31925 . . 3 (𝜑 → (𝑀seqstr𝐹) = (𝑀 ∪ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))))
65fveq1d 6676 . 2 (𝜑 → ((𝑀seqstr𝐹)‘𝑁) = ((𝑀 ∪ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))))‘𝑁))
7 wrdfn 13969 . . . 4 (𝑀 ∈ Word 𝑆𝑀 Fn (0..^(♯‘𝑀)))
82, 7syl 17 . . 3 (𝜑𝑀 Fn (0..^(♯‘𝑀)))
9 fvex 6687 . . . . . 6 (𝑥‘((♯‘𝑥) − 1)) ∈ V
10 df-lsw 14004 . . . . . 6 lastS = (𝑥 ∈ V ↦ (𝑥‘((♯‘𝑥) − 1)))
119, 10fnmpti 6480 . . . . 5 lastS Fn V
1211a1i 11 . . . 4 (𝜑 → lastS Fn V)
13 lencl 13974 . . . . . . 7 (𝑀 ∈ Word 𝑆 → (♯‘𝑀) ∈ ℕ0)
142, 13syl 17 . . . . . 6 (𝜑 → (♯‘𝑀) ∈ ℕ0)
1514nn0zd 12166 . . . . 5 (𝜑 → (♯‘𝑀) ∈ ℤ)
16 seqfn 13472 . . . . 5 ((♯‘𝑀) ∈ ℤ → seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) Fn (ℤ‘(♯‘𝑀)))
1715, 16syl 17 . . . 4 (𝜑 → seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) Fn (ℤ‘(♯‘𝑀)))
18 ssv 3901 . . . . 5 ran seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) ⊆ V
1918a1i 11 . . . 4 (𝜑 → ran seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) ⊆ V)
20 fnco 6453 . . . 4 ((lastS Fn V ∧ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) Fn (ℤ‘(♯‘𝑀)) ∧ ran seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) ⊆ V) → (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))) Fn (ℤ‘(♯‘𝑀)))
2112, 17, 19, 20syl3anc 1372 . . 3 (𝜑 → (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))) Fn (ℤ‘(♯‘𝑀)))
22 fzouzdisj 13164 . . . 4 ((0..^(♯‘𝑀)) ∩ (ℤ‘(♯‘𝑀))) = ∅
2322a1i 11 . . 3 (𝜑 → ((0..^(♯‘𝑀)) ∩ (ℤ‘(♯‘𝑀))) = ∅)
24 sseqfv2.4 . . 3 (𝜑𝑁 ∈ (ℤ‘(♯‘𝑀)))
25 fvun2 6760 . . 3 ((𝑀 Fn (0..^(♯‘𝑀)) ∧ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))) Fn (ℤ‘(♯‘𝑀)) ∧ (((0..^(♯‘𝑀)) ∩ (ℤ‘(♯‘𝑀))) = ∅ ∧ 𝑁 ∈ (ℤ‘(♯‘𝑀)))) → ((𝑀 ∪ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))))‘𝑁) = ((lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))‘𝑁))
268, 21, 23, 24, 25syl112anc 1375 . 2 (𝜑 → ((𝑀 ∪ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))))‘𝑁) = ((lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))‘𝑁))
27 fnfun 6438 . . . 4 (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) Fn (ℤ‘(♯‘𝑀)) → Fun seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))
2817, 27syl 17 . . 3 (𝜑 → Fun seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))
29 fvexd 6689 . . . . . 6 (𝜑 → ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(♯‘𝑀)) ∈ V)
30 ovexd 7205 . . . . . 6 ((𝜑 ∧ (𝑎 ∈ V ∧ 𝑏 ∈ V)) → (𝑎(𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩))𝑏) ∈ V)
31 eqid 2738 . . . . . 6 (ℤ‘(♯‘𝑀)) = (ℤ‘(♯‘𝑀))
32 fvexd 6689 . . . . . 6 ((𝜑𝑎 ∈ (ℤ‘((♯‘𝑀) + 1))) → ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘𝑎) ∈ V)
3329, 30, 31, 15, 32seqf2 13481 . . . . 5 (𝜑 → seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})):(ℤ‘(♯‘𝑀))⟶V)
3433fdmd 6515 . . . 4 (𝜑 → dom seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) = (ℤ‘(♯‘𝑀)))
3524, 34eleqtrrd 2836 . . 3 (𝜑𝑁 ∈ dom seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))
36 fvco 6766 . . 3 ((Fun seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) ∧ 𝑁 ∈ dom seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))) → ((lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))‘𝑁) = (lastS‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁)))
3728, 35, 36syl2anc 587 . 2 (𝜑 → ((lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))‘𝑁) = (lastS‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁)))
386, 26, 373eqtrd 2777 1 (𝜑 → ((𝑀seqstr𝐹)‘𝑁) = (lastS‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 399   = wceq 1542  wcel 2114  Vcvv 3398  cun 3841  cin 3842  wss 3843  c0 4211  {csn 4516   × cxp 5523  ccnv 5524  dom cdm 5525  ran crn 5526  cima 5528  ccom 5529  Fun wfun 6333   Fn wfn 6334  wf 6335  cfv 6339  (class class class)co 7170  cmpo 7172  0cc0 10615  1c1 10616   + caddc 10618  cmin 10948  0cn0 11976  cz 12062  cuz 12324  ..^cfzo 13124  seqcseq 13460  chash 13782  Word cword 13955  lastSclsw 14003   ++ cconcat 14011  ⟨“cs1 14038  seqstrcsseq 31920
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 1975  ax-7 2020  ax-8 2116  ax-9 2124  ax-10 2145  ax-11 2162  ax-12 2179  ax-ext 2710  ax-rep 5154  ax-sep 5167  ax-nul 5174  ax-pow 5232  ax-pr 5296  ax-un 7479  ax-inf2 9177  ax-cnex 10671  ax-resscn 10672  ax-1cn 10673  ax-icn 10674  ax-addcl 10675  ax-addrcl 10676  ax-mulcl 10677  ax-mulrcl 10678  ax-mulcom 10679  ax-addass 10680  ax-mulass 10681  ax-distr 10682  ax-i2m1 10683  ax-1ne0 10684  ax-1rid 10685  ax-rnegex 10686  ax-rrecex 10687  ax-cnre 10688  ax-pre-lttri 10689  ax-pre-lttrn 10690  ax-pre-ltadd 10691  ax-pre-mulgt0 10692
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 847  df-3or 1089  df-3an 1090  df-tru 1545  df-fal 1555  df-ex 1787  df-nf 1791  df-sb 2075  df-mo 2540  df-eu 2570  df-clab 2717  df-cleq 2730  df-clel 2811  df-nfc 2881  df-ne 2935  df-nel 3039  df-ral 3058  df-rex 3059  df-reu 3060  df-rab 3062  df-v 3400  df-sbc 3681  df-csb 3791  df-dif 3846  df-un 3848  df-in 3850  df-ss 3860  df-pss 3862  df-nul 4212  df-if 4415  df-pw 4490  df-sn 4517  df-pr 4519  df-tp 4521  df-op 4523  df-uni 4797  df-int 4837  df-iun 4883  df-br 5031  df-opab 5093  df-mpt 5111  df-tr 5137  df-id 5429  df-eprel 5434  df-po 5442  df-so 5443  df-fr 5483  df-we 5485  df-xp 5531  df-rel 5532  df-cnv 5533  df-co 5534  df-dm 5535  df-rn 5536  df-res 5537  df-ima 5538  df-pred 6129  df-ord 6175  df-on 6176  df-lim 6177  df-suc 6178  df-iota 6297  df-fun 6341  df-fn 6342  df-f 6343  df-f1 6344  df-fo 6345  df-f1o 6346  df-fv 6347  df-riota 7127  df-ov 7173  df-oprab 7174  df-mpo 7175  df-om 7600  df-1st 7714  df-2nd 7715  df-wrecs 7976  df-recs 8037  df-rdg 8075  df-1o 8131  df-er 8320  df-map 8439  df-en 8556  df-dom 8557  df-sdom 8558  df-fin 8559  df-card 9441  df-pnf 10755  df-mnf 10756  df-xr 10757  df-ltxr 10758  df-le 10759  df-sub 10950  df-neg 10951  df-nn 11717  df-n0 11977  df-z 12063  df-uz 12325  df-fz 12982  df-fzo 13125  df-seq 13461  df-hash 13783  df-word 13956  df-lsw 14004  df-s1 14039  df-sseq 31921
This theorem is referenced by:  sseqp1  31932
  Copyright terms: Public domain W3C validator