Step
*
2
of Lemma
adjacent-append
1. [T] : Type
2. x : T
3. y : T
4. L1 : T List
5. L2 : T List
6. (∃i:ℕ||L1|| - 1. ((x = L1[i] ∈ T) ∧ (y = L1[i + 1] ∈ T)))
∨ (0 < ||L1|| ∧ 0 < ||L2|| ∧ (x = last(L1) ∈ T) ∧ (y = hd(L2) ∈ T))
∨ (∃i:ℕ||L2|| - 1. ((x = L2[i] ∈ T) ∧ (y = L2[i + 1] ∈ T)))
⊢ ∃i:ℕ||L1 @ L2|| - 1. ((x = L1 @ L2[i] ∈ T) ∧ (y = L1 @ L2[i + 1] ∈ T))
BY
{ (SplitOrHyps THEN ExRepD) }
1
1. [T] : Type
2. x : T
3. y : T
4. L1 : T List
5. L2 : T List
6. i : ℕ||L1|| - 1
7. x = L1[i] ∈ T
8. y = L1[i + 1] ∈ T
⊢ ∃i:ℕ||L1 @ L2|| - 1. ((x = L1 @ L2[i] ∈ T) ∧ (y = L1 @ L2[i + 1] ∈ T))
2
1. [T] : Type
2. x : T
3. y : T
4. L1 : T List
5. L2 : T List
6. 0 < ||L1||
7. 0 < ||L2||
8. x = last(L1) ∈ T
9. y = hd(L2) ∈ T
⊢ ∃i:ℕ||L1 @ L2|| - 1. ((x = L1 @ L2[i] ∈ T) ∧ (y = L1 @ L2[i + 1] ∈ T))
3
1. [T] : Type
2. x : T
3. y : T
4. L1 : T List
5. L2 : T List
6. i : ℕ||L2|| - 1
7. x = L2[i] ∈ T
8. y = L2[i + 1] ∈ T
⊢ ∃i:ℕ||L1 @ L2|| - 1. ((x = L1 @ L2[i] ∈ T) ∧ (y = L1 @ L2[i + 1] ∈ T))
Latex:
Latex:
1. [T] : Type
2. x : T
3. y : T
4. L1 : T List
5. L2 : T List
6. (\mexists{}i:\mBbbN{}||L1|| - 1. ((x = L1[i]) \mwedge{} (y = L1[i + 1])))
\mvee{} (0 < ||L1|| \mwedge{} 0 < ||L2|| \mwedge{} (x = last(L1)) \mwedge{} (y = hd(L2)))
\mvee{} (\mexists{}i:\mBbbN{}||L2|| - 1. ((x = L2[i]) \mwedge{} (y = L2[i + 1])))
\mvdash{} \mexists{}i:\mBbbN{}||L1 @ L2|| - 1. ((x = L1 @ L2[i]) \mwedge{} (y = L1 @ L2[i + 1]))
By
Latex:
(SplitOrHyps THEN ExRepD)
Home
Index