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

Theorem sseqf 35007
Description: A strong recursive sequence is a function over the nonnegative integers. (Contributed by Thierry Arnoux, 23-Apr-2019.) (Proof shortened by AV, 7-Mar-2022.)
Hypotheses
Ref Expression
sseqval.1 (𝜑 → 𝑆 ∈ V)
sseqval.2 (𝜑 → 𝑀 ∈ Word 𝑆)
sseqval.3 𝑊 = (Word 𝑆 ∩ (◡♯ “ (ℤ≥‘(♯‘𝑀))))
sseqval.4 (𝜑 → 𝐹:𝑊⟶𝑆)
Assertion
Ref Expression
sseqf (𝜑 → (𝑀seqstr𝐹):ℕ0⟶𝑆)

Proof of Theorem sseqf
Dummy variables 𝑥 𝑦 𝑎 𝑏 𝑤 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 sseqval.2 . . . 4 (𝜑 → 𝑀 ∈ Word 𝑆)
2 wrdf 14643 . . . 4 (𝑀 ∈ Word 𝑆 → 𝑀:(0..^(♯‘𝑀))⟶𝑆)
31, 2syl 18 . . 3 (𝜑 → 𝑀:(0..^(♯‘𝑀))⟶𝑆)
4 vex 3455 . . . . . . . . 9 𝑤 ∈ V
54a1i 11 . . . . . . . 8 ((𝜑 ∧ 𝑤 ∈ (𝑊 ∖ {∅})) → 𝑤 ∈ V)
6 fvex 6890 . . . . . . . . 9 (𝑥‘((♯‘𝑥) − 1)) ∈ V
7 df-lsw 14688 . . . . . . . . 9 lastS = (𝑥 ∈ V ↦ (𝑥‘((♯‘𝑥) − 1)))
86, 7dmmpti 6675 . . . . . . . 8 dom lastS = V
95, 8eleqtrrdi 2872 . . . . . . 7 ((𝜑 ∧ 𝑤 ∈ (𝑊 ∖ {∅})) → 𝑤 ∈ dom lastS)
10 eldifsn 4748 . . . . . . . . 9 (𝑤 ∈ (𝑊 ∖ {∅}) ↔ (𝑤 ∈ 𝑊 ∧ 𝑤 ≠ ∅))
11 sseqval.3 . . . . . . . . . . . 12 𝑊 = (Word 𝑆 ∩ (◡♯ “ (ℤ≥‘(♯‘𝑀))))
12 inss1 4182 . . . . . . . . . . . 12 (Word 𝑆 ∩ (◡♯ “ (ℤ≥‘(♯‘𝑀)))) ⊆ Word 𝑆
1311, 12eqsstri 3977 . . . . . . . . . . 11 𝑊 ⊆ Word 𝑆
1413sseli 3927 . . . . . . . . . 10 (𝑤 ∈ 𝑊 → 𝑤 ∈ Word 𝑆)
15 lswcl 14693 . . . . . . . . . 10 ((𝑤 ∈ Word 𝑆 ∧ 𝑤 ≠ ∅) → (lastS‘𝑤) ∈ 𝑆)
1614, 15sylan 592 . . . . . . . . 9 ((𝑤 ∈ 𝑊 ∧ 𝑤 ≠ ∅) → (lastS‘𝑤) ∈ 𝑆)
1710, 16sylbi 220 . . . . . . . 8 (𝑤 ∈ (𝑊 ∖ {∅}) → (lastS‘𝑤) ∈ 𝑆)
1817adantl 487 . . . . . . 7 ((𝜑 ∧ 𝑤 ∈ (𝑊 ∖ {∅})) → (lastS‘𝑤) ∈ 𝑆)
199, 18jca 521 . . . . . 6 ((𝜑 ∧ 𝑤 ∈ (𝑊 ∖ {∅})) → (𝑤 ∈ dom lastS ∧ (lastS‘𝑤) ∈ 𝑆))
2019ralrimiva 3155 . . . . 5 (𝜑 → ∀𝑤 ∈ (𝑊 ∖ {∅})(𝑤 ∈ dom lastS ∧ (lastS‘𝑤) ∈ 𝑆))
216, 7fnmpti 6674 . . . . . 6 lastS Fn V
22 fnfun 6631 . . . . . 6 (lastS Fn V → Fun lastS)
23 ffvresb 7118 . . . . . 6 (Fun lastS → ((lastS ↾ (𝑊 ∖ {∅})):(𝑊 ∖ {∅})⟶𝑆 ↔ ∀𝑤 ∈ (𝑊 ∖ {∅})(𝑤 ∈ dom lastS ∧ (lastS‘𝑤) ∈ 𝑆)))
2421, 22, 23mp2b 10 . . . . 5 ((lastS ↾ (𝑊 ∖ {∅})):(𝑊 ∖ {∅})⟶𝑆 ↔ ∀𝑤 ∈ (𝑊 ∖ {∅})(𝑤 ∈ dom lastS ∧ (lastS‘𝑤) ∈ 𝑆))
2520, 24sylibr 237 . . . 4 (𝜑 → (lastS ↾ (𝑊 ∖ {∅})):(𝑊 ∖ {∅})⟶𝑆)
26 eqid 2761 . . . . 5 (ℤ≥‘(♯‘𝑀)) = (ℤ≥‘(♯‘𝑀))
27 lencl 14658 . . . . . . 7 (𝑀 ∈ Word 𝑆 → (♯‘𝑀) ∈ ℕ0)
2827nn0zd 12699 . . . . . 6 (𝑀 ∈ Word 𝑆 → (♯‘𝑀) ∈ ℤ)
291, 28syl 18 . . . . 5 (𝜑 → (♯‘𝑀) ∈ ℤ)
30 ovex 7445 . . . . . . 7 (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ V
31 simpr 490 . . . . . . . . 9 ((𝜑 ∧ 𝑎 ∈ (ℤ≥‘(♯‘𝑀))) → 𝑎 ∈ (ℤ≥‘(♯‘𝑀)))
321, 27syl 18 . . . . . . . . . . 11 (𝜑 → (♯‘𝑀) ∈ ℕ0)
3332adantr 486 . . . . . . . . . 10 ((𝜑 ∧ 𝑎 ∈ (ℤ≥‘(♯‘𝑀))) → (♯‘𝑀) ∈ ℕ0)
34 elnn0uz 12987 . . . . . . . . . 10 ((♯‘𝑀) ∈ ℕ0 ↔ (♯‘𝑀) ∈ (ℤ≥‘0))
3533, 34sylib 221 . . . . . . . . 9 ((𝜑 ∧ 𝑎 ∈ (ℤ≥‘(♯‘𝑀))) → (♯‘𝑀) ∈ (ℤ≥‘0))
36 uztrn 12964 . . . . . . . . 9 ((𝑎 ∈ (ℤ≥‘(♯‘𝑀)) ∧ (♯‘𝑀) ∈ (ℤ≥‘0)) → 𝑎 ∈ (ℤ≥‘0))
3731, 35, 36syl2anc 596 . . . . . . . 8 ((𝜑 ∧ 𝑎 ∈ (ℤ≥‘(♯‘𝑀))) → 𝑎 ∈ (ℤ≥‘0))
38 nn0uz 12984 . . . . . . . 8 ℕ0 = (ℤ≥‘0)
3937, 38eleqtrrdi 2872 . . . . . . 7 ((𝜑 ∧ 𝑎 ∈ (ℤ≥‘(♯‘𝑀))) → 𝑎 ∈ ℕ0)
40 fvconst2g 7200 . . . . . . 7 (((𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ V ∧ 𝑎 ∈ ℕ0) → ((ℕ0 × {(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)})‘𝑎) = (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩))
4130, 39, 40sylancr 599 . . . . . 6 ((𝜑 ∧ 𝑎 ∈ (ℤ≥‘(♯‘𝑀))) → ((ℕ0 × {(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)})‘𝑎) = (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩))
42 sseqval.4 . . . . . . . . . . . . 13 (𝜑 → 𝐹:𝑊⟶𝑆)
43 sseqval.1 . . . . . . . . . . . . . 14 (𝜑 → 𝑆 ∈ V)
4443, 1, 11, 42sseqmw 35006 . . . . . . . . . . . . 13 (𝜑 → 𝑀 ∈ 𝑊)
4542, 44ffvelcdmd 7077 . . . . . . . . . . . 12 (𝜑 → (𝐹‘𝑀) ∈ 𝑆)
4645s1cld 14730 . . . . . . . . . . 11 (𝜑 → ⟨“(𝐹‘𝑀)”⟩ ∈ Word 𝑆)
47 ccatcl 14699 . . . . . . . . . . 11 ((𝑀 ∈ Word 𝑆 ∧ ⟨“(𝐹‘𝑀)”⟩ ∈ Word 𝑆) → (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ Word 𝑆)
481, 46, 47syl2anc 596 . . . . . . . . . 10 (𝜑 → (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ Word 𝑆)
4930a1i 11 . . . . . . . . . . 11 (𝜑 → (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ V)
50 ccatws1len 14748 . . . . . . . . . . . . 13 (𝑀 ∈ Word 𝑆 → (♯‘(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)) = ((♯‘𝑀) + 1))
511, 50syl 18 . . . . . . . . . . . 12 (𝜑 → (♯‘(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)) = ((♯‘𝑀) + 1))
52 uzid 12961 . . . . . . . . . . . . 13 ((♯‘𝑀) ∈ ℤ → (♯‘𝑀) ∈ (ℤ≥‘(♯‘𝑀)))
53 peano2uz 13009 . . . . . . . . . . . . 13 ((♯‘𝑀) ∈ (ℤ≥‘(♯‘𝑀)) → ((♯‘𝑀) + 1) ∈ (ℤ≥‘(♯‘𝑀)))
5429, 52, 533syl 19 . . . . . . . . . . . 12 (𝜑 → ((♯‘𝑀) + 1) ∈ (ℤ≥‘(♯‘𝑀)))
5551, 54eqeltrd 2861 . . . . . . . . . . 11 (𝜑 → (♯‘(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)) ∈ (ℤ≥‘(♯‘𝑀)))
56 hashf 14462 . . . . . . . . . . . 12 ♯:V⟶(ℕ0 ∪ {+∞})
57 ffn 6701 . . . . . . . . . . . 12 (♯:V⟶(ℕ0 ∪ {+∞}) → ♯ Fn V)
58 elpreima 7049 . . . . . . . . . . . 12 (♯ Fn V → ((𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ (◡♯ “ (ℤ≥‘(♯‘𝑀))) ↔ ((𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ V ∧ (♯‘(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)) ∈ (ℤ≥‘(♯‘𝑀)))))
5956, 57, 58mp2b 10 . . . . . . . . . . 11 ((𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ (◡♯ “ (ℤ≥‘(♯‘𝑀))) ↔ ((𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ V ∧ (♯‘(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)) ∈ (ℤ≥‘(♯‘𝑀))))
6049, 55, 59sylanbrc 595 . . . . . . . . . 10 (𝜑 → (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ (◡♯ “ (ℤ≥‘(♯‘𝑀))))
6148, 60elind 4146 . . . . . . . . 9 (𝜑 → (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ (Word 𝑆 ∩ (◡♯ “ (ℤ≥‘(♯‘𝑀)))))
6261, 11eleqtrrdi 2872 . . . . . . . 8 (𝜑 → (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ 𝑊)
6362adantr 486 . . . . . . 7 ((𝜑 ∧ 𝑎 ∈ (ℤ≥‘(♯‘𝑀))) → (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ 𝑊)
64 ccatws1n0 14760 . . . . . . . . 9 (𝑀 ∈ Word 𝑆 → (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ≠ ∅)
651, 64syl 18 . . . . . . . 8 (𝜑 → (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ≠ ∅)
6665adantr 486 . . . . . . 7 ((𝜑 ∧ 𝑎 ∈ (ℤ≥‘(♯‘𝑀))) → (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ≠ ∅)
67 eldifsn 4748 . . . . . . 7 ((𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ (𝑊 ∖ {∅}) ↔ ((𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ 𝑊 ∧ (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ≠ ∅))
6863, 66, 67sylanbrc 595 . . . . . 6 ((𝜑 ∧ 𝑎 ∈ (ℤ≥‘(♯‘𝑀))) → (𝑀 ++ ⟨“(𝐹‘𝑀)”⟩) ∈ (𝑊 ∖ {∅}))
6941, 68eqeltrd 2861 . . . . 5 ((𝜑 ∧ 𝑎 ∈ (ℤ≥‘(♯‘𝑀))) → ((ℕ0 × {(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)})‘𝑎) ∈ (𝑊 ∖ {∅}))
70 eqidd 2762 . . . . . . 7 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩)) = (𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩)))
71 simprl 783 . . . . . . . 8 (((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) ∧ (𝑥 = 𝑎 ∧ 𝑦 = 𝑏)) → 𝑥 = 𝑎)
7271fveq2d 6881 . . . . . . . . 9 (((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) ∧ (𝑥 = 𝑎 ∧ 𝑦 = 𝑏)) → (𝐹‘𝑥) = (𝐹‘𝑎))
7372s1eqd 14728 . . . . . . . 8 (((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) ∧ (𝑥 = 𝑎 ∧ 𝑦 = 𝑏)) → ⟨“(𝐹‘𝑥)”⟩ = ⟨“(𝐹‘𝑎)”⟩)
7471, 73oveq12d 7430 . . . . . . 7 (((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) ∧ (𝑥 = 𝑎 ∧ 𝑦 = 𝑏)) → (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩) = (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩))
75 vex 3455 . . . . . . . 8 𝑎 ∈ V
7675a1i 11 . . . . . . 7 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → 𝑎 ∈ V)
77 vex 3455 . . . . . . . 8 𝑏 ∈ V
7877a1i 11 . . . . . . 7 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → 𝑏 ∈ V)
79 ovex 7445 . . . . . . . 8 (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ V
8079a1i 11 . . . . . . 7 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ V)
8170, 74, 76, 78, 80ovmpod 7564 . . . . . 6 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (𝑎(𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩))𝑏) = (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩))
82 eldifi 4078 . . . . . . . . . . . 12 (𝑎 ∈ (𝑊 ∖ {∅}) → 𝑎 ∈ 𝑊)
8382ad2antrl 741 . . . . . . . . . . 11 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → 𝑎 ∈ 𝑊)
8413, 83sselid 3929 . . . . . . . . . 10 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → 𝑎 ∈ Word 𝑆)
8542adantr 486 . . . . . . . . . . . 12 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → 𝐹:𝑊⟶𝑆)
8685, 83ffvelcdmd 7077 . . . . . . . . . . 11 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (𝐹‘𝑎) ∈ 𝑆)
8786s1cld 14730 . . . . . . . . . 10 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → ⟨“(𝐹‘𝑎)”⟩ ∈ Word 𝑆)
88 ccatcl 14699 . . . . . . . . . 10 ((𝑎 ∈ Word 𝑆 ∧ ⟨“(𝐹‘𝑎)”⟩ ∈ Word 𝑆) → (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ Word 𝑆)
8984, 87, 88syl2anc 596 . . . . . . . . 9 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ Word 𝑆)
9013, 82sselid 3929 . . . . . . . . . . . . 13 (𝑎 ∈ (𝑊 ∖ {∅}) → 𝑎 ∈ Word 𝑆)
9190ad2antrl 741 . . . . . . . . . . . 12 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → 𝑎 ∈ Word 𝑆)
92 ccatws1len 14748 . . . . . . . . . . . 12 (𝑎 ∈ Word 𝑆 → (♯‘(𝑎 ++ ⟨“(𝐹‘𝑎)”⟩)) = ((♯‘𝑎) + 1))
9391, 92syl 18 . . . . . . . . . . 11 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (♯‘(𝑎 ++ ⟨“(𝐹‘𝑎)”⟩)) = ((♯‘𝑎) + 1))
9483, 11eleqtrdi 2871 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → 𝑎 ∈ (Word 𝑆 ∩ (◡♯ “ (ℤ≥‘(♯‘𝑀)))))
9594elin2d 4151 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → 𝑎 ∈ (◡♯ “ (ℤ≥‘(♯‘𝑀))))
96 elpreima 7049 . . . . . . . . . . . . . 14 (♯ Fn V → (𝑎 ∈ (◡♯ “ (ℤ≥‘(♯‘𝑀))) ↔ (𝑎 ∈ V ∧ (♯‘𝑎) ∈ (ℤ≥‘(♯‘𝑀)))))
9756, 57, 96mp2b 10 . . . . . . . . . . . . 13 (𝑎 ∈ (◡♯ “ (ℤ≥‘(♯‘𝑀))) ↔ (𝑎 ∈ V ∧ (♯‘𝑎) ∈ (ℤ≥‘(♯‘𝑀))))
9895, 97sylib 221 . . . . . . . . . . . 12 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (𝑎 ∈ V ∧ (♯‘𝑎) ∈ (ℤ≥‘(♯‘𝑀))))
99 peano2uz 13009 . . . . . . . . . . . 12 ((♯‘𝑎) ∈ (ℤ≥‘(♯‘𝑀)) → ((♯‘𝑎) + 1) ∈ (ℤ≥‘(♯‘𝑀)))
10098, 99simpl2im 513 . . . . . . . . . . 11 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → ((♯‘𝑎) + 1) ∈ (ℤ≥‘(♯‘𝑀)))
10193, 100eqeltrd 2861 . . . . . . . . . 10 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (♯‘(𝑎 ++ ⟨“(𝐹‘𝑎)”⟩)) ∈ (ℤ≥‘(♯‘𝑀)))
102 elpreima 7049 . . . . . . . . . . 11 (♯ Fn V → ((𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ (◡♯ “ (ℤ≥‘(♯‘𝑀))) ↔ ((𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ V ∧ (♯‘(𝑎 ++ ⟨“(𝐹‘𝑎)”⟩)) ∈ (ℤ≥‘(♯‘𝑀)))))
10356, 57, 102mp2b 10 . . . . . . . . . 10 ((𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ (◡♯ “ (ℤ≥‘(♯‘𝑀))) ↔ ((𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ V ∧ (♯‘(𝑎 ++ ⟨“(𝐹‘𝑎)”⟩)) ∈ (ℤ≥‘(♯‘𝑀))))
10480, 101, 103sylanbrc 595 . . . . . . . . 9 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ (◡♯ “ (ℤ≥‘(♯‘𝑀))))
10589, 104elind 4146 . . . . . . . 8 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ (Word 𝑆 ∩ (◡♯ “ (ℤ≥‘(♯‘𝑀)))))
106105, 11eleqtrrdi 2872 . . . . . . 7 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ 𝑊)
107 ccatws1n0 14760 . . . . . . . 8 (𝑎 ∈ Word 𝑆 → (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ≠ ∅)
10891, 107syl 18 . . . . . . 7 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ≠ ∅)
109 eldifsn 4748 . . . . . . 7 ((𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ (𝑊 ∖ {∅}) ↔ ((𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ 𝑊 ∧ (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ≠ ∅))
110106, 108, 109sylanbrc 595 . . . . . 6 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (𝑎 ++ ⟨“(𝐹‘𝑎)”⟩) ∈ (𝑊 ∖ {∅}))
11181, 110eqeltrd 2861 . . . . 5 ((𝜑 ∧ (𝑎 ∈ (𝑊 ∖ {∅}) ∧ 𝑏 ∈ (𝑊 ∖ {∅}))) → (𝑎(𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩))𝑏) ∈ (𝑊 ∖ {∅}))
11226, 29, 69, 111seqf 14146 . . . 4 (𝜑 → seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)})):(ℤ≥‘(♯‘𝑀))⟶(𝑊 ∖ {∅}))
113 fco2 6728 . . . 4 (((lastS ↾ (𝑊 ∖ {∅})):(𝑊 ∖ {∅})⟶𝑆 ∧ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)})):(ℤ≥‘(♯‘𝑀))⟶(𝑊 ∖ {∅})) → (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)}))):(ℤ≥‘(♯‘𝑀))⟶𝑆)
11425, 112, 113syl2anc 596 . . 3 (𝜑 → (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)}))):(ℤ≥‘(♯‘𝑀))⟶𝑆)
115 fzouzdisj 13810 . . . 4 ((0..^(♯‘𝑀)) ∩ (ℤ≥‘(♯‘𝑀))) = ∅
116115a1i 11 . . 3 (𝜑 → ((0..^(♯‘𝑀)) ∩ (ℤ≥‘(♯‘𝑀))) = ∅)
117 fun 6736 . . 3 (((𝑀:(0..^(♯‘𝑀))⟶𝑆 ∧ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)}))):(ℤ≥‘(♯‘𝑀))⟶𝑆) ∧ ((0..^(♯‘𝑀)) ∩ (ℤ≥‘(♯‘𝑀))) = ∅) → (𝑀 ∪ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)})))):((0..^(♯‘𝑀)) ∪ (ℤ≥‘(♯‘𝑀)))⟶(𝑆 ∪ 𝑆))
1183, 114, 116, 117syl21anc 851 . 2 (𝜑 → (𝑀 ∪ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)})))):((0..^(♯‘𝑀)) ∪ (ℤ≥‘(♯‘𝑀)))⟶(𝑆 ∪ 𝑆))
11943, 1, 11, 42sseqval 35003 . . 3 (𝜑 → (𝑀seqstr𝐹) = (𝑀 ∪ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)})))))
120 fzouzsplit 13809 . . . . . 6 ((♯‘𝑀) ∈ (ℤ≥‘0) → (ℤ≥‘0) = ((0..^(♯‘𝑀)) ∪ (ℤ≥‘(♯‘𝑀))))
12134, 120sylbi 220 . . . . 5 ((♯‘𝑀) ∈ ℕ0 → (ℤ≥‘0) = ((0..^(♯‘𝑀)) ∪ (ℤ≥‘(♯‘𝑀))))
1221, 27, 1213syl 19 . . . 4 (𝜑 → (ℤ≥‘0) = ((0..^(♯‘𝑀)) ∪ (ℤ≥‘(♯‘𝑀))))
12338, 122eqtrid 2808 . . 3 (𝜑 → ℕ0 = ((0..^(♯‘𝑀)) ∪ (ℤ≥‘(♯‘𝑀))))
124 unidm 4104 . . . . 5 (𝑆 ∪ 𝑆) = 𝑆
125124a1i 11 . . . 4 (𝜑 → (𝑆 ∪ 𝑆) = 𝑆)
126125eqcomd 2767 . . 3 (𝜑 → 𝑆 = (𝑆 ∪ 𝑆))
127119, 123, 126feq123d 6690 . 2 (𝜑 → ((𝑀seqstr𝐹):ℕ0⟶𝑆 ↔ (𝑀 ∪ (lastS ∘ seq(♯‘𝑀)((𝑥 ∈ V, 𝑦 ∈ V ↦ (𝑥 ++ ⟨“(𝐹‘𝑥)”⟩)), (ℕ0 × {(𝑀 ++ ⟨“(𝐹‘𝑀)”⟩)})))):((0..^(♯‘𝑀)) ∪ (ℤ≥‘(♯‘𝑀)))⟶(𝑆 ∪ 𝑆)))
128118, 127mpbird 260 1 (𝜑 → (𝑀seqstr𝐹):ℕ0⟶𝑆)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   ∧ wa 401   = wceq 1570   ∈ wcel 2145   ≠ wne 2956  ∀wral 3077  Vcvv 3451   ∖ cdif 3896   ∪ cun 3897   ∩ cin 3898  ∅c0 4279  {csn 4584   × cxp 5649  ◡ccnv 5650  dom cdm 5651   ↾ cres 5653   “ cima 5654   ∘ ccom 5655  Fun wfun 6525   Fn wfn 6526  ⟶wf 6527  ‘cfv 6531  (class class class)co 7412   ∈ cmpo 7414  0cc0 11181  1c1 11182   + caddc 11184  +∞cpnf 11321   − cmin 11522  ℕ0cn0 12587  ℤcz 12674  ℤ≥cuz 12946  ..^cfzo 13768  seqcseq 14124  ♯chash 14454  Word cword 14638  lastSclsw 14687   ++ cconcat 14695  ⟨“cs1 14722  seqstrcsseq 34998
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 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-rep 5232  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7740  ax-inf2 9626  ax-cnex 11237  ax-resscn 11238  ax-1cn 11239  ax-icn 11240  ax-addcl 11241  ax-addrcl 11242  ax-mulcl 11243  ax-mulrcl 11244  ax-mulcom 11245  ax-addass 11246  ax-mulass 11247  ax-distr 11248  ax-i2m1 11249  ax-1ne0 11250  ax-1rid 11251  ax-rnegex 11252  ax-rrecex 11253  ax-cnre 11254  ax-pre-lttri 11255  ax-pre-lttrn 11256  ax-pre-ltadd 11257  ax-pre-mulgt0 11258
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 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-nel 3063  df-ral 3078  df-rex 3088  df-reu 3367  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-int 4908  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-pred 6297  df-ord 6358  df-on 6359  df-lim 6360  df-suc 6361  df-iota 6487  df-fun 6533  df-fn 6534  df-f 6535  df-f1 6536  df-fo 6537  df-f1o 6538  df-fv 6539  df-riota 7369  df-ov 7415  df-oprab 7416  df-mpo 7417  df-om 7867  df-1st 7990  df-2nd 7991  df-frecs 8283  df-wrecs 8314  df-recs 8363  df-rdg 8402  df-1o 8460  df-er 8701  df-map 8833  df-en 8958  df-dom 8959  df-sdom 8960  df-fin 8961  df-card 10001  df-pnf 11326  df-mnf 11327  df-xr 11328  df-ltxr 11329  df-le 11330  df-sub 11524  df-neg 11525  df-nn 12317  df-n0 12588  df-xnn0 12661  df-z 12675  df-uz 12947  df-fz 13621  df-fzo 13769  df-seq 14125  df-hash 14455  df-word 14639  df-lsw 14688  df-concat 14696  df-s1 14723  df-sseq 34999
This theorem is used by:  sseqp1  35010  fibp1  35016
  Copyright terms: Public domain W3C validator