Metamath Proof Explorer


Theorem seqf1olem2a

Description: Lemma for seqf1o . (Contributed by Mario Carneiro, 24-Apr-2016)

Ref Expression
Hypotheses seqf1o.1 ⊢ φ ∧ x ∈ S ∧ y ∈ S → x + ˙ y ∈ S
seqf1o.2 ⊢ φ ∧ x ∈ C ∧ y ∈ C → x + ˙ y = y + ˙ x
seqf1o.3 ⊢ φ ∧ x ∈ S ∧ y ∈ S ∧ z ∈ S → x + ˙ y + ˙ z = x + ˙ y + ˙ z
seqf1o.4 ⊢ φ → N ∈ ℤ ≥ M
seqf1o.5 ⊢ φ → C ⊆ S
seqf1olem2a.1 ⊢ φ → G : A ⟶ C
seqf1olem2a.3 ⊢ φ → K ∈ A
seqf1olem2a.4 ⊢ φ → M … N ⊆ A
Assertion seqf1olem2a ⊢ φ → G ⁡ K + ˙ seq M + ˙ G ⁡ N = seq M + ˙ G ⁡ N + ˙ G ⁡ K

Proof

Step Hyp Ref Expression
1 seqf1o.1 ⊢ φ ∧ x ∈ S ∧ y ∈ S → x + ˙ y ∈ S
2 seqf1o.2 ⊢ φ ∧ x ∈ C ∧ y ∈ C → x + ˙ y = y + ˙ x
3 seqf1o.3 ⊢ φ ∧ x ∈ S ∧ y ∈ S ∧ z ∈ S → x + ˙ y + ˙ z = x + ˙ y + ˙ z
4 seqf1o.4 ⊢ φ → N ∈ ℤ ≥ M
5 seqf1o.5 ⊢ φ → C ⊆ S
6 seqf1olem2a.1 ⊢ φ → G : A ⟶ C
7 seqf1olem2a.3 ⊢ φ → K ∈ A
8 seqf1olem2a.4 ⊢ φ → M … N ⊆ A
9 eluzfz2 ⊢ N ∈ ℤ ≥ M → N ∈ M … N
10 4 9 syl ⊢ φ → N ∈ M … N
11 fveq2 ⊢ m = M → seq M + ˙ G ⁡ m = seq M + ˙ G ⁡ M
12 11 oveq2d ⊢ m = M → G ⁡ K + ˙ seq M + ˙ G ⁡ m = G ⁡ K + ˙ seq M + ˙ G ⁡ M
13 11 oveq1d ⊢ m = M → seq M + ˙ G ⁡ m + ˙ G ⁡ K = seq M + ˙ G ⁡ M + ˙ G ⁡ K
14 12 13 eqeq12d ⊢ m = M → G ⁡ K + ˙ seq M + ˙ G ⁡ m = seq M + ˙ G ⁡ m + ˙ G ⁡ K ↔ G ⁡ K + ˙ seq M + ˙ G ⁡ M = seq M + ˙ G ⁡ M + ˙ G ⁡ K
15 14 imbi2d ⊢ m = M → φ → G ⁡ K + ˙ seq M + ˙ G ⁡ m = seq M + ˙ G ⁡ m + ˙ G ⁡ K ↔ φ → G ⁡ K + ˙ seq M + ˙ G ⁡ M = seq M + ˙ G ⁡ M + ˙ G ⁡ K
16 fveq2 ⊢ m = n → seq M + ˙ G ⁡ m = seq M + ˙ G ⁡ n
17 16 oveq2d ⊢ m = n → G ⁡ K + ˙ seq M + ˙ G ⁡ m = G ⁡ K + ˙ seq M + ˙ G ⁡ n
18 16 oveq1d ⊢ m = n → seq M + ˙ G ⁡ m + ˙ G ⁡ K = seq M + ˙ G ⁡ n + ˙ G ⁡ K
19 17 18 eqeq12d ⊢ m = n → G ⁡ K + ˙ seq M + ˙ G ⁡ m = seq M + ˙ G ⁡ m + ˙ G ⁡ K ↔ G ⁡ K + ˙ seq M + ˙ G ⁡ n = seq M + ˙ G ⁡ n + ˙ G ⁡ K
20 19 imbi2d ⊢ m = n → φ → G ⁡ K + ˙ seq M + ˙ G ⁡ m = seq M + ˙ G ⁡ m + ˙ G ⁡ K ↔ φ → G ⁡ K + ˙ seq M + ˙ G ⁡ n = seq M + ˙ G ⁡ n + ˙ G ⁡ K
21 fveq2 ⊢ m = n + 1 → seq M + ˙ G ⁡ m = seq M + ˙ G ⁡ n + 1
22 21 oveq2d ⊢ m = n + 1 → G ⁡ K + ˙ seq M + ˙ G ⁡ m = G ⁡ K + ˙ seq M + ˙ G ⁡ n + 1
23 21 oveq1d ⊢ m = n + 1 → seq M + ˙ G ⁡ m + ˙ G ⁡ K = seq M + ˙ G ⁡ n + 1 + ˙ G ⁡ K
24 22 23 eqeq12d ⊢ m = n + 1 → G ⁡ K + ˙ seq M + ˙ G ⁡ m = seq M + ˙ G ⁡ m + ˙ G ⁡ K ↔ G ⁡ K + ˙ seq M + ˙ G ⁡ n + 1 = seq M + ˙ G ⁡ n + 1 + ˙ G ⁡ K
25 24 imbi2d ⊢ m = n + 1 → φ → G ⁡ K + ˙ seq M + ˙ G ⁡ m = seq M + ˙ G ⁡ m + ˙ G ⁡ K ↔ φ → G ⁡ K + ˙ seq M + ˙ G ⁡ n + 1 = seq M + ˙ G ⁡ n + 1 + ˙ G ⁡ K
26 fveq2 ⊢ m = N → seq M + ˙ G ⁡ m = seq M + ˙ G ⁡ N
27 26 oveq2d ⊢ m = N → G ⁡ K + ˙ seq M + ˙ G ⁡ m = G ⁡ K + ˙ seq M + ˙ G ⁡ N
28 26 oveq1d ⊢ m = N → seq M + ˙ G ⁡ m + ˙ G ⁡ K = seq M + ˙ G ⁡ N + ˙ G ⁡ K
29 27 28 eqeq12d ⊢ m = N → G ⁡ K + ˙ seq M + ˙ G ⁡ m = seq M + ˙ G ⁡ m + ˙ G ⁡ K ↔ G ⁡ K + ˙ seq M + ˙ G ⁡ N = seq M + ˙ G ⁡ N + ˙ G ⁡ K
30 29 imbi2d ⊢ m = N → φ → G ⁡ K + ˙ seq M + ˙ G ⁡ m = seq M + ˙ G ⁡ m + ˙ G ⁡ K ↔ φ → G ⁡ K + ˙ seq M + ˙ G ⁡ N = seq M + ˙ G ⁡ N + ˙ G ⁡ K
31 6 7 ffvelcdmd ⊢ φ → G ⁡ K ∈ C
32 eluzel2 ⊢ N ∈ ℤ ≥ M → M ∈ ℤ
33 seq1 ⊢ M ∈ ℤ → seq M + ˙ G ⁡ M = G ⁡ M
34 4 32 33 3syl ⊢ φ → seq M + ˙ G ⁡ M = G ⁡ M
35 eluzfz1 ⊢ N ∈ ℤ ≥ M → M ∈ M … N
36 4 35 syl ⊢ φ → M ∈ M … N
37 8 36 sseldd ⊢ φ → M ∈ A
38 6 37 ffvelcdmd ⊢ φ → G ⁡ M ∈ C
39 34 38 eqeltrd ⊢ φ → seq M + ˙ G ⁡ M ∈ C
40 2 31 39 caovcomd ⊢ φ → G ⁡ K + ˙ seq M + ˙ G ⁡ M = seq M + ˙ G ⁡ M + ˙ G ⁡ K
41 40 a1i ⊢ N ∈ ℤ ≥ M → φ → G ⁡ K + ˙ seq M + ˙ G ⁡ M = seq M + ˙ G ⁡ M + ˙ G ⁡ K
42 oveq1 ⊢ G ⁡ K + ˙ seq M + ˙ G ⁡ n = seq M + ˙ G ⁡ n + ˙ G ⁡ K → G ⁡ K + ˙ seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1 = seq M + ˙ G ⁡ n + ˙ G ⁡ K + ˙ G ⁡ n + 1
43 elfzouz ⊢ n ∈ M ..^ N → n ∈ ℤ ≥ M
44 43 adantl ⊢ φ ∧ n ∈ M ..^ N → n ∈ ℤ ≥ M
45 seqp1 ⊢ n ∈ ℤ ≥ M → seq M + ˙ G ⁡ n + 1 = seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1
46 44 45 syl ⊢ φ ∧ n ∈ M ..^ N → seq M + ˙ G ⁡ n + 1 = seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1
47 46 oveq2d ⊢ φ ∧ n ∈ M ..^ N → G ⁡ K + ˙ seq M + ˙ G ⁡ n + 1 = G ⁡ K + ˙ seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1
48 3 adantlr ⊢ φ ∧ n ∈ M ..^ N ∧ x ∈ S ∧ y ∈ S ∧ z ∈ S → x + ˙ y + ˙ z = x + ˙ y + ˙ z
49 5 31 sseldd ⊢ φ → G ⁡ K ∈ S
50 49 adantr ⊢ φ ∧ n ∈ M ..^ N → G ⁡ K ∈ S
51 5 adantr ⊢ φ ∧ n ∈ M ..^ N → C ⊆ S
52 51 adantr ⊢ φ ∧ n ∈ M ..^ N ∧ x ∈ M … n → C ⊆ S
53 6 adantr ⊢ φ ∧ n ∈ M ..^ N → G : A ⟶ C
54 53 adantr ⊢ φ ∧ n ∈ M ..^ N ∧ x ∈ M … n → G : A ⟶ C
55 elfzouz2 ⊢ n ∈ M ..^ N → N ∈ ℤ ≥ n
56 55 adantl ⊢ φ ∧ n ∈ M ..^ N → N ∈ ℤ ≥ n
57 fzss2 ⊢ N ∈ ℤ ≥ n → M … n ⊆ M … N
58 56 57 syl ⊢ φ ∧ n ∈ M ..^ N → M … n ⊆ M … N
59 8 adantr ⊢ φ ∧ n ∈ M ..^ N → M … N ⊆ A
60 58 59 sstrd ⊢ φ ∧ n ∈ M ..^ N → M … n ⊆ A
61 60 sselda ⊢ φ ∧ n ∈ M ..^ N ∧ x ∈ M … n → x ∈ A
62 54 61 ffvelcdmd ⊢ φ ∧ n ∈ M ..^ N ∧ x ∈ M … n → G ⁡ x ∈ C
63 52 62 sseldd ⊢ φ ∧ n ∈ M ..^ N ∧ x ∈ M … n → G ⁡ x ∈ S
64 1 adantlr ⊢ φ ∧ n ∈ M ..^ N ∧ x ∈ S ∧ y ∈ S → x + ˙ y ∈ S
65 44 63 64 seqcl ⊢ φ ∧ n ∈ M ..^ N → seq M + ˙ G ⁡ n ∈ S
66 fzofzp1 ⊢ n ∈ M ..^ N → n + 1 ∈ M … N
67 66 adantl ⊢ φ ∧ n ∈ M ..^ N → n + 1 ∈ M … N
68 59 67 sseldd ⊢ φ ∧ n ∈ M ..^ N → n + 1 ∈ A
69 53 68 ffvelcdmd ⊢ φ ∧ n ∈ M ..^ N → G ⁡ n + 1 ∈ C
70 51 69 sseldd ⊢ φ ∧ n ∈ M ..^ N → G ⁡ n + 1 ∈ S
71 48 50 65 70 caovassd ⊢ φ ∧ n ∈ M ..^ N → G ⁡ K + ˙ seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1 = G ⁡ K + ˙ seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1
72 47 71 eqtr4d ⊢ φ ∧ n ∈ M ..^ N → G ⁡ K + ˙ seq M + ˙ G ⁡ n + 1 = G ⁡ K + ˙ seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1
73 48 65 70 50 caovassd ⊢ φ ∧ n ∈ M ..^ N → seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1 + ˙ G ⁡ K = seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1 + ˙ G ⁡ K
74 46 oveq1d ⊢ φ ∧ n ∈ M ..^ N → seq M + ˙ G ⁡ n + 1 + ˙ G ⁡ K = seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1 + ˙ G ⁡ K
75 48 65 50 70 caovassd ⊢ φ ∧ n ∈ M ..^ N → seq M + ˙ G ⁡ n + ˙ G ⁡ K + ˙ G ⁡ n + 1 = seq M + ˙ G ⁡ n + ˙ G ⁡ K + ˙ G ⁡ n + 1
76 2 adantlr ⊢ φ ∧ n ∈ M ..^ N ∧ x ∈ C ∧ y ∈ C → x + ˙ y = y + ˙ x
77 31 adantr ⊢ φ ∧ n ∈ M ..^ N → G ⁡ K ∈ C
78 76 69 77 caovcomd ⊢ φ ∧ n ∈ M ..^ N → G ⁡ n + 1 + ˙ G ⁡ K = G ⁡ K + ˙ G ⁡ n + 1
79 78 oveq2d ⊢ φ ∧ n ∈ M ..^ N → seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1 + ˙ G ⁡ K = seq M + ˙ G ⁡ n + ˙ G ⁡ K + ˙ G ⁡ n + 1
80 75 79 eqtr4d ⊢ φ ∧ n ∈ M ..^ N → seq M + ˙ G ⁡ n + ˙ G ⁡ K + ˙ G ⁡ n + 1 = seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1 + ˙ G ⁡ K
81 73 74 80 3eqtr4d ⊢ φ ∧ n ∈ M ..^ N → seq M + ˙ G ⁡ n + 1 + ˙ G ⁡ K = seq M + ˙ G ⁡ n + ˙ G ⁡ K + ˙ G ⁡ n + 1
82 72 81 eqeq12d ⊢ φ ∧ n ∈ M ..^ N → G ⁡ K + ˙ seq M + ˙ G ⁡ n + 1 = seq M + ˙ G ⁡ n + 1 + ˙ G ⁡ K ↔ G ⁡ K + ˙ seq M + ˙ G ⁡ n + ˙ G ⁡ n + 1 = seq M + ˙ G ⁡ n + ˙ G ⁡ K + ˙ G ⁡ n + 1
83 42 82 imbitrrid ⊢ φ ∧ n ∈ M ..^ N → G ⁡ K + ˙ seq M + ˙ G ⁡ n = seq M + ˙ G ⁡ n + ˙ G ⁡ K → G ⁡ K + ˙ seq M + ˙ G ⁡ n + 1 = seq M + ˙ G ⁡ n + 1 + ˙ G ⁡ K
84 83 expcom ⊢ n ∈ M ..^ N → φ → G ⁡ K + ˙ seq M + ˙ G ⁡ n = seq M + ˙ G ⁡ n + ˙ G ⁡ K → G ⁡ K + ˙ seq M + ˙ G ⁡ n + 1 = seq M + ˙ G ⁡ n + 1 + ˙ G ⁡ K
85 84 a2d ⊢ n ∈ M ..^ N → φ → G ⁡ K + ˙ seq M + ˙ G ⁡ n = seq M + ˙ G ⁡ n + ˙ G ⁡ K → φ → G ⁡ K + ˙ seq M + ˙ G ⁡ n + 1 = seq M + ˙ G ⁡ n + 1 + ˙ G ⁡ K
86 15 20 25 30 41 85 fzind2 ⊢ N ∈ M … N → φ → G ⁡ K + ˙ seq M + ˙ G ⁡ N = seq M + ˙ G ⁡ N + ˙ G ⁡ K
87 10 86 mpcom ⊢ φ → G ⁡ K + ˙ seq M + ˙ G ⁡ N = seq M + ˙ G ⁡ N + ˙ G ⁡ K