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 34808
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 34802 . . 3 (𝜑 → (𝑀seqstr𝐹) = (𝑀 ∪ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))))
65fveq1d 6890 . 2 (𝜑 → ((𝑀seqstr𝐹)‘𝑁) = ((𝑀 ∪ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))))‘𝑁))
7 wrdfn 14585 . . . 4 (𝑀 ∈ Word 𝑆𝑀 Fn (0..^(♯‘𝑀)))
82, 7syl 18 . . 3 (𝜑𝑀 Fn (0..^(♯‘𝑀)))
9 fvex 6901 . . . . . 6 (𝑥‘((♯‘𝑥) − 1)) ∈ V
10 df-lsw 14620 . . . . . 6 lastS = (𝑥 ∈ V ↦ (𝑥‘((♯‘𝑥) − 1)))
119, 10fnmpti 6685 . . . . 5 lastS Fn V
1211a1i 11 . . . 4 (𝜑 → lastS Fn V)
13 lencl 14590 . . . . . . 7 (𝑀 ∈ Word 𝑆 → (♯‘𝑀) ∈ ℕ0)
142, 13syl 18 . . . . . 6 (𝜑 → (♯‘𝑀) ∈ ℕ0)
1514nn0zd 12634 . . . . 5 (𝜑 → (♯‘𝑀) ∈ ℤ)
16 seqfn 14069 . . . . 5 ((♯‘𝑀) ∈ ℤ → seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) Fn (ℤ‘(♯‘𝑀)))
1715, 16syl 18 . . . 4 (𝜑 → seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) Fn (ℤ‘(♯‘𝑀)))
18 ssv 3964 . . . . 5 ran seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) ⊆ V
1918a1i 11 . . . 4 (𝜑 → ran seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) ⊆ V)
20 fnco 6660 . . . 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 1398 . . 3 (𝜑 → (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))) Fn (ℤ‘(♯‘𝑀)))
22 fzouzdisj 13743 . . . 4 ((0..^(♯‘𝑀)) ∩ (ℤ‘(♯‘𝑀))) = ∅
2322a1i 11 . . 3 (𝜑 → ((0..^(♯‘𝑀)) ∩ (ℤ‘(♯‘𝑀))) = ∅)
24 sseqfv2.4 . . 3 (𝜑𝑁 ∈ (ℤ‘(♯‘𝑀)))
25 fvun2 6980 . . 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 1401 . 2 (𝜑 → ((𝑀 ∪ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))))‘𝑁) = ((lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))‘𝑁))
27 fnfun 6642 . . . 4 (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) Fn (ℤ‘(♯‘𝑀)) → Fun seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))
2817, 27syl 18 . . 3 (𝜑 → Fun seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))
29 fvexd 6903 . . . . . 6 (𝜑 → ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(♯‘𝑀)) ∈ V)
30 ovexd 7458 . . . . . 6 ((𝜑 ∧ (𝑎 ∈ V ∧ 𝑏 ∈ V)) → (𝑎(𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩))𝑏) ∈ V)
31 eqid 2766 . . . . . 6 (ℤ‘(♯‘𝑀)) = (ℤ‘(♯‘𝑀))
32 fvexd 6903 . . . . . 6 ((𝜑𝑎 ∈ (ℤ‘((♯‘𝑀) + 1))) → ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘𝑎) ∈ V)
3329, 30, 31, 15, 32seqf2 14077 . . . . 5 (𝜑 → seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})):(ℤ‘(♯‘𝑀))⟶V)
3433fdmd 6723 . . . 4 (𝜑 → dom seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) = (ℤ‘(♯‘𝑀)))
3524, 34eleqtrrd 2869 . . 3 (𝜑𝑁 ∈ dom seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))
36 fvco 6986 . . 3 ((Fun seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})) ∧ 𝑁 ∈ dom seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))) → ((lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))‘𝑁) = (lastS‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁)))
3728, 35, 36syl2anc 596 . 2 (𝜑 → ((lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})))‘𝑁) = (lastS‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁)))
386, 26, 373eqtrd 2805 1 (𝜑 → ((𝑀seqstr𝐹)‘𝑁) = (lastS‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401   = wceq 1570  wcel 2146  Vcvv 3458  cun 3906  cin 3907  wss 3908  c0 4289  {csn 4594   × cxp 5664  ccnv 5665  dom cdm 5666  ran crn 5667  cima 5669  ccom 5670  Fun wfun 6537   Fn wfn 6538  wf 6539  cfv 6543  (class class class)co 7423  cmpo 7425  0cc0 11118  1c1 11119   + caddc 11121  cmin 11459  0cn0 12522  cz 12609  cuz 12880  ..^cfzo 13701  seqcseq 14057  chash 14386  Word cword 14570  lastSclsw 14619   ++ cconcat 14627  ⟨“cs1 14654  seqstrcsseq 34797
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 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2738  ax-rep 5243  ax-sep 5262  ax-nul 5274  ax-pow 5341  ax-pr 5409  ax-un 7745  ax-inf2 9620  ax-cnex 11174  ax-resscn 11175  ax-1cn 11176  ax-icn 11177  ax-addcl 11178  ax-addrcl 11179  ax-mulcl 11180  ax-mulrcl 11181  ax-mulcom 11182  ax-addass 11183  ax-mulass 11184  ax-distr 11185  ax-i2m1 11186  ax-1ne0 11187  ax-1rid 11188  ax-rnegex 11189  ax-rrecex 11190  ax-cnre 11191  ax-pre-lttri 11192  ax-pre-lttrn 11193  ax-pre-ltadd 11194  ax-pre-mulgt0 11195
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 2570  df-eu 2600  df-clab 2745  df-cleq 2758  df-clel 2841  df-nfc 2915  df-ne 2962  df-nel 3068  df-ral 3083  df-rex 3093  df-reu 3373  df-rab 3420  df-v 3460  df-sbc 3748  df-csb 3857  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-pss 3928  df-nul 4290  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-op 4601  df-uni 4878  df-int 4918  df-iun 4963  df-br 5115  df-opab 5179  df-mpt 5198  df-tr 5224  df-id 5561  df-eprel 5566  df-po 5574  df-so 5575  df-fr 5619  df-we 5621  df-xp 5672  df-rel 5673  df-cnv 5674  df-co 5675  df-dm 5676  df-rn 5677  df-res 5678  df-ima 5679  df-pred 6309  df-ord 6370  df-on 6371  df-lim 6372  df-suc 6373  df-iota 6499  df-fun 6545  df-fn 6546  df-f 6547  df-f1 6548  df-fo 6549  df-f1o 6550  df-fv 6551  df-riota 7380  df-ov 7426  df-oprab 7427  df-mpo 7428  df-om 7872  df-1st 7995  df-2nd 7996  df-frecs 8287  df-wrecs 8318  df-recs 8367  df-rdg 8406  df-1o 8462  df-er 8703  df-map 8835  df-en 8953  df-dom 8954  df-sdom 8955  df-fin 8956  df-card 9944  df-pnf 11263  df-mnf 11264  df-xr 11265  df-ltxr 11266  df-le 11267  df-sub 11461  df-neg 11462  df-nn 12252  df-n0 12523  df-z 12610  df-uz 12881  df-fz 13554  df-fzo 13702  df-seq 14058  df-hash 14387  df-word 14571  df-lsw 14620  df-s1 14655  df-sseq 34798
This theorem is used by:  sseqp1  34809
  Copyright terms: Public domain W3C validator