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

Theorem sseqp1 33383
Description: Value of the strong sequence builder function at a successor. (Contributed by Thierry Arnoux, 24-Apr-2019.)
Hypotheses
Ref Expression
sseqval.1 (𝜑𝑆 ∈ V)
sseqval.2 (𝜑𝑀 ∈ Word 𝑆)
sseqval.3 𝑊 = (Word 𝑆 ∩ (♯ “ (ℤ‘(♯‘𝑀))))
sseqval.4 (𝜑𝐹:𝑊𝑆)
sseqfv2.4 (𝜑𝑁 ∈ (ℤ‘(♯‘𝑀)))
Assertion
Ref Expression
sseqp1 (𝜑 → ((𝑀seqstr𝐹)‘𝑁) = (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁))))

Proof of Theorem sseqp1
Dummy variables 𝑥 𝑦 𝑎 𝑏 𝑖 𝑛 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 sseqval.1 . . 3 (𝜑𝑆 ∈ V)
2 sseqval.2 . . 3 (𝜑𝑀 ∈ Word 𝑆)
3 sseqval.3 . . 3 𝑊 = (Word 𝑆 ∩ (♯ “ (ℤ‘(♯‘𝑀))))
4 sseqval.4 . . 3 (𝜑𝐹:𝑊𝑆)
5 sseqfv2.4 . . 3 (𝜑𝑁 ∈ (ℤ‘(♯‘𝑀)))
61, 2, 3, 4, 5sseqfv2 33382 . 2 (𝜑 → ((𝑀seqstr𝐹)‘𝑁) = (lastS‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁)))
7 fveq2 6889 . . . . . . 7 (𝑖 = (♯‘𝑀) → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑖) = (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(♯‘𝑀)))
8 oveq2 7414 . . . . . . . . 9 (𝑖 = (♯‘𝑀) → (0..^𝑖) = (0..^(♯‘𝑀)))
98reseq2d 5980 . . . . . . . 8 (𝑖 = (♯‘𝑀) → ((𝑀seqstr𝐹) ↾ (0..^𝑖)) = ((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))))
109fveq2d 6893 . . . . . . . . 9 (𝑖 = (♯‘𝑀) → (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖))) = (𝐹‘((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀)))))
1110s1eqd 14548 . . . . . . . 8 (𝑖 = (♯‘𝑀) → ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩ = ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))))”⟩)
129, 11oveq12d 7424 . . . . . . 7 (𝑖 = (♯‘𝑀) → (((𝑀seqstr𝐹) ↾ (0..^𝑖)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩) = (((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))))”⟩))
137, 12eqeq12d 2749 . . . . . 6 (𝑖 = (♯‘𝑀) → ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑖) = (((𝑀seqstr𝐹) ↾ (0..^𝑖)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩) ↔ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(♯‘𝑀)) = (((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))))”⟩)))
1413imbi2d 341 . . . . 5 (𝑖 = (♯‘𝑀) → ((𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑖) = (((𝑀seqstr𝐹) ↾ (0..^𝑖)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩)) ↔ (𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(♯‘𝑀)) = (((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))))”⟩))))
15 fveq2 6889 . . . . . . 7 (𝑖 = 𝑛 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑖) = (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛))
16 oveq2 7414 . . . . . . . . 9 (𝑖 = 𝑛 → (0..^𝑖) = (0..^𝑛))
1716reseq2d 5980 . . . . . . . 8 (𝑖 = 𝑛 → ((𝑀seqstr𝐹) ↾ (0..^𝑖)) = ((𝑀seqstr𝐹) ↾ (0..^𝑛)))
1817fveq2d 6893 . . . . . . . . 9 (𝑖 = 𝑛 → (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖))) = (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛))))
1918s1eqd 14548 . . . . . . . 8 (𝑖 = 𝑛 → ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩ = ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)
2017, 19oveq12d 7424 . . . . . . 7 (𝑖 = 𝑛 → (((𝑀seqstr𝐹) ↾ (0..^𝑖)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩))
2115, 20eqeq12d 2749 . . . . . 6 (𝑖 = 𝑛 → ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑖) = (((𝑀seqstr𝐹) ↾ (0..^𝑖)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩) ↔ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)))
2221imbi2d 341 . . . . 5 (𝑖 = 𝑛 → ((𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑖) = (((𝑀seqstr𝐹) ↾ (0..^𝑖)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩)) ↔ (𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩))))
23 fveq2 6889 . . . . . . 7 (𝑖 = (𝑛 + 1) → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑖) = (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(𝑛 + 1)))
24 oveq2 7414 . . . . . . . . 9 (𝑖 = (𝑛 + 1) → (0..^𝑖) = (0..^(𝑛 + 1)))
2524reseq2d 5980 . . . . . . . 8 (𝑖 = (𝑛 + 1) → ((𝑀seqstr𝐹) ↾ (0..^𝑖)) = ((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))))
2625fveq2d 6893 . . . . . . . . 9 (𝑖 = (𝑛 + 1) → (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖))) = (𝐹‘((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1)))))
2726s1eqd 14548 . . . . . . . 8 (𝑖 = (𝑛 + 1) → ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩ = ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))))”⟩)
2825, 27oveq12d 7424 . . . . . . 7 (𝑖 = (𝑛 + 1) → (((𝑀seqstr𝐹) ↾ (0..^𝑖)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩) = (((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))))”⟩))
2923, 28eqeq12d 2749 . . . . . 6 (𝑖 = (𝑛 + 1) → ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑖) = (((𝑀seqstr𝐹) ↾ (0..^𝑖)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩) ↔ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(𝑛 + 1)) = (((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))))”⟩)))
3029imbi2d 341 . . . . 5 (𝑖 = (𝑛 + 1) → ((𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑖) = (((𝑀seqstr𝐹) ↾ (0..^𝑖)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩)) ↔ (𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(𝑛 + 1)) = (((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))))”⟩))))
31 fveq2 6889 . . . . . . 7 (𝑖 = 𝑁 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑖) = (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁))
32 oveq2 7414 . . . . . . . . 9 (𝑖 = 𝑁 → (0..^𝑖) = (0..^𝑁))
3332reseq2d 5980 . . . . . . . 8 (𝑖 = 𝑁 → ((𝑀seqstr𝐹) ↾ (0..^𝑖)) = ((𝑀seqstr𝐹) ↾ (0..^𝑁)))
3433fveq2d 6893 . . . . . . . . 9 (𝑖 = 𝑁 → (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖))) = (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁))))
3534s1eqd 14548 . . . . . . . 8 (𝑖 = 𝑁 → ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩ = ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁)))”⟩)
3633, 35oveq12d 7424 . . . . . . 7 (𝑖 = 𝑁 → (((𝑀seqstr𝐹) ↾ (0..^𝑖)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩) = (((𝑀seqstr𝐹) ↾ (0..^𝑁)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁)))”⟩))
3731, 36eqeq12d 2749 . . . . . 6 (𝑖 = 𝑁 → ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑖) = (((𝑀seqstr𝐹) ↾ (0..^𝑖)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩) ↔ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁) = (((𝑀seqstr𝐹) ↾ (0..^𝑁)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁)))”⟩)))
3837imbi2d 341 . . . . 5 (𝑖 = 𝑁 → ((𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑖) = (((𝑀seqstr𝐹) ↾ (0..^𝑖)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑖)))”⟩)) ↔ (𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁) = (((𝑀seqstr𝐹) ↾ (0..^𝑁)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁)))”⟩))))
39 ovex 7439 . . . . . . . 8 (𝑀 ++ ⟨“(𝐹𝑀)”⟩) ∈ V
40 lencl 14480 . . . . . . . . 9 (𝑀 ∈ Word 𝑆 → (♯‘𝑀) ∈ ℕ0)
412, 40syl 17 . . . . . . . 8 (𝜑 → (♯‘𝑀) ∈ ℕ0)
42 fvconst2g 7200 . . . . . . . 8 (((𝑀 ++ ⟨“(𝐹𝑀)”⟩) ∈ V ∧ (♯‘𝑀) ∈ ℕ0) → ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(♯‘𝑀)) = (𝑀 ++ ⟨“(𝐹𝑀)”⟩))
4339, 41, 42sylancr 588 . . . . . . 7 (𝜑 → ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(♯‘𝑀)) = (𝑀 ++ ⟨“(𝐹𝑀)”⟩))
4440nn0zd 12581 . . . . . . . 8 (𝑀 ∈ Word 𝑆 → (♯‘𝑀) ∈ ℤ)
45 seq1 13976 . . . . . . . 8 ((♯‘𝑀) ∈ ℤ → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(♯‘𝑀)) = ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(♯‘𝑀)))
462, 44, 453syl 18 . . . . . . 7 (𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(♯‘𝑀)) = ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(♯‘𝑀)))
471, 2, 3, 4sseqfres 33381 . . . . . . . 8 (𝜑 → ((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))) = 𝑀)
4847fveq2d 6893 . . . . . . . . 9 (𝜑 → (𝐹‘((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀)))) = (𝐹𝑀))
4948s1eqd 14548 . . . . . . . 8 (𝜑 → ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))))”⟩ = ⟨“(𝐹𝑀)”⟩)
5047, 49oveq12d 7424 . . . . . . 7 (𝜑 → (((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))))”⟩) = (𝑀 ++ ⟨“(𝐹𝑀)”⟩))
5143, 46, 503eqtr4d 2783 . . . . . 6 (𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(♯‘𝑀)) = (((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))))”⟩))
5251a1i 11 . . . . 5 ((♯‘𝑀) ∈ ℤ → (𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(♯‘𝑀)) = (((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(♯‘𝑀))))”⟩)))
53 seqp1 13978 . . . . . . . . . . . 12 (𝑛 ∈ (ℤ‘(♯‘𝑀)) → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(𝑛 + 1)) = ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛)(𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩))((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(𝑛 + 1))))
5453adantl 483 . . . . . . . . . . 11 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(𝑛 + 1)) = ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛)(𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩))((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(𝑛 + 1))))
55 id 22 . . . . . . . . . . . . . . 15 (𝑥 = 𝑎𝑥 = 𝑎)
56 fveq2 6889 . . . . . . . . . . . . . . . 16 (𝑥 = 𝑎 → (𝐹𝑥) = (𝐹𝑎))
5756s1eqd 14548 . . . . . . . . . . . . . . 15 (𝑥 = 𝑎 → ⟨“(𝐹𝑥)”⟩ = ⟨“(𝐹𝑎)”⟩)
5855, 57oveq12d 7424 . . . . . . . . . . . . . 14 (𝑥 = 𝑎 → (𝑥 ++ ⟨“(𝐹𝑥)”⟩) = (𝑎 ++ ⟨“(𝐹𝑎)”⟩))
59 eqidd 2734 . . . . . . . . . . . . . 14 (𝑦 = 𝑏 → (𝑎 ++ ⟨“(𝐹𝑎)”⟩) = (𝑎 ++ ⟨“(𝐹𝑎)”⟩))
6058, 59cbvmpov 7501 . . . . . . . . . . . . 13 (𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)) = (𝑎 ∈ V, 𝑏 ∈ V ↦ (𝑎 ++ ⟨“(𝐹𝑎)”⟩))
6160a1i 11 . . . . . . . . . . . 12 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → (𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)) = (𝑎 ∈ V, 𝑏 ∈ V ↦ (𝑎 ++ ⟨“(𝐹𝑎)”⟩)))
62 simprl 770 . . . . . . . . . . . . 13 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (𝑎 = (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) ∧ 𝑏 = ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(𝑛 + 1)))) → 𝑎 = (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛))
6362fveq2d 6893 . . . . . . . . . . . . . 14 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (𝑎 = (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) ∧ 𝑏 = ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(𝑛 + 1)))) → (𝐹𝑎) = (𝐹‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛)))
6463s1eqd 14548 . . . . . . . . . . . . 13 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (𝑎 = (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) ∧ 𝑏 = ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(𝑛 + 1)))) → ⟨“(𝐹𝑎)”⟩ = ⟨“(𝐹‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛))”⟩)
6562, 64oveq12d 7424 . . . . . . . . . . . 12 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (𝑎 = (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) ∧ 𝑏 = ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(𝑛 + 1)))) → (𝑎 ++ ⟨“(𝐹𝑎)”⟩) = ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) ++ ⟨“(𝐹‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛))”⟩))
66 fvexd 6904 . . . . . . . . . . . 12 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) ∈ V)
67 fvexd 6904 . . . . . . . . . . . 12 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → ((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(𝑛 + 1)) ∈ V)
68 ovex 7439 . . . . . . . . . . . . 13 ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) ++ ⟨“(𝐹‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛))”⟩) ∈ V
6968a1i 11 . . . . . . . . . . . 12 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) ++ ⟨“(𝐹‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛))”⟩) ∈ V)
7061, 65, 66, 67, 69ovmpod 7557 . . . . . . . . . . 11 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛)(𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩))((ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)})‘(𝑛 + 1))) = ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) ++ ⟨“(𝐹‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛))”⟩))
7154, 70eqtrd 2773 . . . . . . . . . 10 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(𝑛 + 1)) = ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) ++ ⟨“(𝐹‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛))”⟩))
7271adantr 482 . . . . . . . . 9 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(𝑛 + 1)) = ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) ++ ⟨“(𝐹‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛))”⟩))
731adantr 482 . . . . . . . . . . . . . . . 16 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → 𝑆 ∈ V)
742adantr 482 . . . . . . . . . . . . . . . 16 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → 𝑀 ∈ Word 𝑆)
754adantr 482 . . . . . . . . . . . . . . . 16 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → 𝐹:𝑊𝑆)
76 simpr 486 . . . . . . . . . . . . . . . 16 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → 𝑛 ∈ (ℤ‘(♯‘𝑀)))
7773, 74, 3, 75, 76sseqfv2 33382 . . . . . . . . . . . . . . 15 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → ((𝑀seqstr𝐹)‘𝑛) = (lastS‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛)))
7877adantr 482 . . . . . . . . . . . . . 14 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → ((𝑀seqstr𝐹)‘𝑛) = (lastS‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛)))
79 simpr 486 . . . . . . . . . . . . . . 15 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩))
8079fveq2d 6893 . . . . . . . . . . . . . 14 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → (lastS‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛)) = (lastS‘(((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)))
811, 2, 3, 4sseqf 33380 . . . . . . . . . . . . . . . . . . 19 (𝜑 → (𝑀seqstr𝐹):ℕ0𝑆)
82 fzo0ssnn0 13710 . . . . . . . . . . . . . . . . . . 19 (0..^𝑛) ⊆ ℕ0
83 fssres 6755 . . . . . . . . . . . . . . . . . . 19 (((𝑀seqstr𝐹):ℕ0𝑆 ∧ (0..^𝑛) ⊆ ℕ0) → ((𝑀seqstr𝐹) ↾ (0..^𝑛)):(0..^𝑛)⟶𝑆)
8481, 82, 83sylancl 587 . . . . . . . . . . . . . . . . . 18 (𝜑 → ((𝑀seqstr𝐹) ↾ (0..^𝑛)):(0..^𝑛)⟶𝑆)
85 iswrdi 14465 . . . . . . . . . . . . . . . . . 18 (((𝑀seqstr𝐹) ↾ (0..^𝑛)):(0..^𝑛)⟶𝑆 → ((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ Word 𝑆)
8684, 85syl 17 . . . . . . . . . . . . . . . . 17 (𝜑 → ((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ Word 𝑆)
8786adantr 482 . . . . . . . . . . . . . . . 16 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → ((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ Word 𝑆)
88 elex 3493 . . . . . . . . . . . . . . . . . . . . 21 (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ Word 𝑆 → ((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ V)
8987, 88syl 17 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → ((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ V)
9081adantr 482 . . . . . . . . . . . . . . . . . . . . . 22 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → (𝑀seqstr𝐹):ℕ0𝑆)
91 eluznn0 12898 . . . . . . . . . . . . . . . . . . . . . . 23 (((♯‘𝑀) ∈ ℕ0𝑛 ∈ (ℤ‘(♯‘𝑀))) → 𝑛 ∈ ℕ0)
9241, 91sylan 581 . . . . . . . . . . . . . . . . . . . . . 22 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → 𝑛 ∈ ℕ0)
9373, 90, 92subiwrdlen 33374 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → (♯‘((𝑀seqstr𝐹) ↾ (0..^𝑛))) = 𝑛)
9493, 76eqeltrd 2834 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → (♯‘((𝑀seqstr𝐹) ↾ (0..^𝑛))) ∈ (ℤ‘(♯‘𝑀)))
95 hashf 14295 . . . . . . . . . . . . . . . . . . . . 21 ♯:V⟶(ℕ0 ∪ {+∞})
96 ffn 6715 . . . . . . . . . . . . . . . . . . . . 21 (♯:V⟶(ℕ0 ∪ {+∞}) → ♯ Fn V)
97 elpreima 7057 . . . . . . . . . . . . . . . . . . . . 21 (♯ Fn V → (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ (♯ “ (ℤ‘(♯‘𝑀))) ↔ (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ V ∧ (♯‘((𝑀seqstr𝐹) ↾ (0..^𝑛))) ∈ (ℤ‘(♯‘𝑀)))))
9895, 96, 97mp2b 10 . . . . . . . . . . . . . . . . . . . 20 (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ (♯ “ (ℤ‘(♯‘𝑀))) ↔ (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ V ∧ (♯‘((𝑀seqstr𝐹) ↾ (0..^𝑛))) ∈ (ℤ‘(♯‘𝑀))))
9989, 94, 98sylanbrc 584 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → ((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ (♯ “ (ℤ‘(♯‘𝑀))))
10087, 99elind 4194 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → ((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ (Word 𝑆 ∩ (♯ “ (ℤ‘(♯‘𝑀)))))
101100, 3eleqtrrdi 2845 . . . . . . . . . . . . . . . . 17 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → ((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ 𝑊)
10275, 101ffvelcdmd 7085 . . . . . . . . . . . . . . . 16 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛))) ∈ 𝑆)
103 lswccats1 14581 . . . . . . . . . . . . . . . 16 ((((𝑀seqstr𝐹) ↾ (0..^𝑛)) ∈ Word 𝑆 ∧ (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛))) ∈ 𝑆) → (lastS‘(((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) = (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛))))
10487, 102, 103syl2anc 585 . . . . . . . . . . . . . . 15 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → (lastS‘(((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) = (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛))))
105104adantr 482 . . . . . . . . . . . . . 14 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → (lastS‘(((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) = (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛))))
10678, 80, 1053eqtrrd 2778 . . . . . . . . . . . . 13 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛))) = ((𝑀seqstr𝐹)‘𝑛))
107106s1eqd 14548 . . . . . . . . . . . 12 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩ = ⟨“((𝑀seqstr𝐹)‘𝑛)”⟩)
108107oveq2d 7422 . . . . . . . . . . 11 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“((𝑀seqstr𝐹)‘𝑛)”⟩))
10973, 90, 92iwrdsplit 33375 . . . . . . . . . . . 12 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → ((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“((𝑀seqstr𝐹)‘𝑛)”⟩))
110109adantr 482 . . . . . . . . . . 11 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → ((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“((𝑀seqstr𝐹)‘𝑛)”⟩))
111108, 79, 1103eqtr4d 2783 . . . . . . . . . 10 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = ((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))))
112111fveq2d 6893 . . . . . . . . . . 11 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → (𝐹‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛)) = (𝐹‘((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1)))))
113112s1eqd 14548 . . . . . . . . . 10 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → ⟨“(𝐹‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛))”⟩ = ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))))”⟩)
114111, 113oveq12d 7424 . . . . . . . . 9 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) ++ ⟨“(𝐹‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛))”⟩) = (((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))))”⟩))
11572, 114eqtrd 2773 . . . . . . . 8 (((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) ∧ (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(𝑛 + 1)) = (((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))))”⟩))
116115ex 414 . . . . . . 7 ((𝜑𝑛 ∈ (ℤ‘(♯‘𝑀))) → ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩) → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(𝑛 + 1)) = (((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))))”⟩)))
117116expcom 415 . . . . . 6 (𝑛 ∈ (ℤ‘(♯‘𝑀)) → (𝜑 → ((seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩) → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(𝑛 + 1)) = (((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))))”⟩))))
118117a2d 29 . . . . 5 (𝑛 ∈ (ℤ‘(♯‘𝑀)) → ((𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑛) = (((𝑀seqstr𝐹) ↾ (0..^𝑛)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑛)))”⟩)) → (𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘(𝑛 + 1)) = (((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^(𝑛 + 1))))”⟩))))
11914, 22, 30, 38, 52, 118uzind4 12887 . . . 4 (𝑁 ∈ (ℤ‘(♯‘𝑀)) → (𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁) = (((𝑀seqstr𝐹) ↾ (0..^𝑁)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁)))”⟩)))
1205, 119mpcom 38 . . 3 (𝜑 → (seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁) = (((𝑀seqstr𝐹) ↾ (0..^𝑁)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁)))”⟩))
121120fveq2d 6893 . 2 (𝜑 → (lastS‘(seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹𝑀)”⟩)}))‘𝑁)) = (lastS‘(((𝑀seqstr𝐹) ↾ (0..^𝑁)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁)))”⟩)))
122 fzo0ssnn0 13710 . . . . 5 (0..^𝑁) ⊆ ℕ0
123 fssres 6755 . . . . 5 (((𝑀seqstr𝐹):ℕ0𝑆 ∧ (0..^𝑁) ⊆ ℕ0) → ((𝑀seqstr𝐹) ↾ (0..^𝑁)):(0..^𝑁)⟶𝑆)
12481, 122, 123sylancl 587 . . . 4 (𝜑 → ((𝑀seqstr𝐹) ↾ (0..^𝑁)):(0..^𝑁)⟶𝑆)
125 iswrdi 14465 . . . 4 (((𝑀seqstr𝐹) ↾ (0..^𝑁)):(0..^𝑁)⟶𝑆 → ((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ Word 𝑆)
126124, 125syl 17 . . 3 (𝜑 → ((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ Word 𝑆)
127 elex 3493 . . . . . . . 8 (((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ Word 𝑆 → ((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ V)
128126, 127syl 17 . . . . . . 7 (𝜑 → ((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ V)
129 eluznn0 12898 . . . . . . . . . 10 (((♯‘𝑀) ∈ ℕ0𝑁 ∈ (ℤ‘(♯‘𝑀))) → 𝑁 ∈ ℕ0)
13041, 5, 129syl2anc 585 . . . . . . . . 9 (𝜑𝑁 ∈ ℕ0)
1311, 81, 130subiwrdlen 33374 . . . . . . . 8 (𝜑 → (♯‘((𝑀seqstr𝐹) ↾ (0..^𝑁))) = 𝑁)
132131, 5eqeltrd 2834 . . . . . . 7 (𝜑 → (♯‘((𝑀seqstr𝐹) ↾ (0..^𝑁))) ∈ (ℤ‘(♯‘𝑀)))
133 elpreima 7057 . . . . . . . 8 (♯ Fn V → (((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ (♯ “ (ℤ‘(♯‘𝑀))) ↔ (((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ V ∧ (♯‘((𝑀seqstr𝐹) ↾ (0..^𝑁))) ∈ (ℤ‘(♯‘𝑀)))))
13495, 96, 133mp2b 10 . . . . . . 7 (((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ (♯ “ (ℤ‘(♯‘𝑀))) ↔ (((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ V ∧ (♯‘((𝑀seqstr𝐹) ↾ (0..^𝑁))) ∈ (ℤ‘(♯‘𝑀))))
135128, 132, 134sylanbrc 584 . . . . . 6 (𝜑 → ((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ (♯ “ (ℤ‘(♯‘𝑀))))
136126, 135elind 4194 . . . . 5 (𝜑 → ((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ (Word 𝑆 ∩ (♯ “ (ℤ‘(♯‘𝑀)))))
137136, 3eleqtrrdi 2845 . . . 4 (𝜑 → ((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ 𝑊)
1384, 137ffvelcdmd 7085 . . 3 (𝜑 → (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁))) ∈ 𝑆)
139 lswccats1 14581 . . 3 ((((𝑀seqstr𝐹) ↾ (0..^𝑁)) ∈ Word 𝑆 ∧ (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁))) ∈ 𝑆) → (lastS‘(((𝑀seqstr𝐹) ↾ (0..^𝑁)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁)))”⟩)) = (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁))))
140126, 138, 139syl2anc 585 . 2 (𝜑 → (lastS‘(((𝑀seqstr𝐹) ↾ (0..^𝑁)) ++ ⟨“(𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁)))”⟩)) = (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁))))
1416, 121, 1403eqtrd 2777 1 (𝜑 → ((𝑀seqstr𝐹)‘𝑁) = (𝐹‘((𝑀seqstr𝐹) ↾ (0..^𝑁))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 397   = wceq 1542  wcel 2107  Vcvv 3475  cun 3946  cin 3947  wss 3948  {csn 4628   × cxp 5674  ccnv 5675  cres 5678  cima 5679   Fn wfn 6536  wf 6537  cfv 6541  (class class class)co 7406  cmpo 7408  0cc0 11107  1c1 11108   + caddc 11110  +∞cpnf 11242  0cn0 12469  cz 12555  cuz 12819  ..^cfzo 13624  seqcseq 13963  chash 14287  Word cword 14461  lastSclsw 14509   ++ cconcat 14517  ⟨“cs1 14542  seqstrcsseq 33371
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2109  ax-9 2117  ax-10 2138  ax-11 2155  ax-12 2172  ax-ext 2704  ax-rep 5285  ax-sep 5299  ax-nul 5306  ax-pow 5363  ax-pr 5427  ax-un 7722  ax-inf2 9633  ax-cnex 11163  ax-resscn 11164  ax-1cn 11165  ax-icn 11166  ax-addcl 11167  ax-addrcl 11168  ax-mulcl 11169  ax-mulrcl 11170  ax-mulcom 11171  ax-addass 11172  ax-mulass 11173  ax-distr 11174  ax-i2m1 11175  ax-1ne0 11176  ax-1rid 11177  ax-rnegex 11178  ax-rrecex 11179  ax-cnre 11180  ax-pre-lttri 11181  ax-pre-lttrn 11182  ax-pre-ltadd 11183  ax-pre-mulgt0 11184
This theorem depends on definitions:  df-bi 206  df-an 398  df-or 847  df-3or 1089  df-3an 1090  df-tru 1545  df-fal 1555  df-ex 1783  df-nf 1787  df-sb 2069  df-mo 2535  df-eu 2564  df-clab 2711  df-cleq 2725  df-clel 2811  df-nfc 2886  df-ne 2942  df-nel 3048  df-ral 3063  df-rex 3072  df-reu 3378  df-rab 3434  df-v 3477  df-sbc 3778  df-csb 3894  df-dif 3951  df-un 3953  df-in 3955  df-ss 3965  df-pss 3967  df-nul 4323  df-if 4529  df-pw 4604  df-sn 4629  df-pr 4631  df-op 4635  df-uni 4909  df-int 4951  df-iun 4999  df-br 5149  df-opab 5211  df-mpt 5232  df-tr 5266  df-id 5574  df-eprel 5580  df-po 5588  df-so 5589  df-fr 5631  df-we 5633  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-pred 6298  df-ord 6365  df-on 6366  df-lim 6367  df-suc 6368  df-iota 6493  df-fun 6543  df-fn 6544  df-f 6545  df-f1 6546  df-fo 6547  df-f1o 6548  df-fv 6549  df-riota 7362  df-ov 7409  df-oprab 7410  df-mpo 7411  df-om 7853  df-1st 7972  df-2nd 7973  df-frecs 8263  df-wrecs 8294  df-recs 8368  df-rdg 8407  df-1o 8463  df-er 8700  df-map 8819  df-en 8937  df-dom 8938  df-sdom 8939  df-fin 8940  df-card 9931  df-pnf 11247  df-mnf 11248  df-xr 11249  df-ltxr 11250  df-le 11251  df-sub 11443  df-neg 11444  df-nn 12210  df-n0 12470  df-xnn0 12542  df-z 12556  df-uz 12820  df-rp 12972  df-fz 13482  df-fzo 13625  df-seq 13964  df-hash 14288  df-word 14462  df-lsw 14510  df-concat 14518  df-s1 14543  df-substr 14588  df-pfx 14618  df-sseq 33372
This theorem is referenced by:  fibp1  33389
  Copyright terms: Public domain W3C validator