Step
*
of Lemma
cons_interleaving
∀[T:Type]. ∀x:T. ∀L,L1,L2:T List.  (interleaving(T;L1;L2;L) 
⇒ interleaving(T;[x / L1];L2;[x / L]))
BY
{ ((Auto
    THEN (All (Unfold `interleaving`))
    THEN Reduce 0
    THEN Auto'
    THEN (All (Unfold `disjoint_sublists`))
    THEN ExRepD
    THEN Reduce 0
    THEN AssertBY fadd(f2;λi.1) ∈ ℕ||L2|| ⟶ ℕ||L|| + 1 Auto'⋅
    THEN AssertBY fshift(fadd(f1;λi.1);0) ∈ ℕ||L1|| + 1 ⟶ ℕ||L|| + 1 Auto'⋅
    THEN InstConcl [fshift(fadd(f1;λi.1);0);fadd(f2;λi.1)]⋅)
   THENA Try (Complete (Auto))
   ) }
1
1. [T] : Type
2. x : T
3. L : T List
4. L1 : T List
5. L2 : T List
6. ||L|| = (||L1|| + ||L2||) ∈ ℕ
7. f1 : ℕ||L1|| ⟶ ℕ||L||
8. f2 : ℕ||L2|| ⟶ ℕ||L||
9. increasing(f1;||L1||)
10. ∀j:ℕ||L1||. (L1[j] = L[f1 j] ∈ T)
11. increasing(f2;||L2||)
12. ∀j:ℕ||L2||. (L2[j] = L[f2 j] ∈ T)
13. ∀j1:ℕ||L1||. ∀j2:ℕ||L2||.  (¬((f1 j1) = (f2 j2) ∈ ℤ))
14. (||L|| + 1) = ((||L1|| + 1) + ||L2||) ∈ ℕ
15. fadd(f2;λi.1) ∈ ℕ||L2|| ⟶ ℕ||L|| + 1
16. fshift(fadd(f1;λi.1);0) ∈ ℕ||L1|| + 1 ⟶ ℕ||L|| + 1
⊢ (increasing(fshift(fadd(f1;λi.1);0);||L1|| + 1)
  ∧ (∀j:ℕ||L1|| + 1. ([x / L1][j] = [x / L][fshift(fadd(f1;λi.1);0) j] ∈ T)))
∧ (increasing(fadd(f2;λi.1);||L2||) ∧ (∀j:ℕ||L2||. (L2[j] = [x / L][fadd(f2;λi.1) j] ∈ T)))
∧ (∀j1:ℕ||L1|| + 1. ∀j2:ℕ||L2||.  (¬((fshift(fadd(f1;λi.1);0) j1) = (fadd(f2;λi.1) j2) ∈ ℤ)))
Latex:
Latex:
\mforall{}[T:Type].  \mforall{}x:T.  \mforall{}L,L1,L2:T  List.    (interleaving(T;L1;L2;L)  {}\mRightarrow{}  interleaving(T;[x  /  L1];L2;[x  /  L]))
By
Latex:
((Auto
    THEN  (All  (Unfold  `interleaving`))
    THEN  Reduce  0
    THEN  Auto'
    THEN  (All  (Unfold  `disjoint\_sublists`))
    THEN  ExRepD
    THEN  Reduce  0
    THEN  AssertBY  fadd(f2;\mlambda{}i.1)  \mmember{}  \mBbbN{}||L2||  {}\mrightarrow{}  \mBbbN{}||L||  +  1  Auto'\mcdot{}
    THEN  AssertBY  fshift(fadd(f1;\mlambda{}i.1);0)  \mmember{}  \mBbbN{}||L1||  +  1  {}\mrightarrow{}  \mBbbN{}||L||  +  1  Auto'\mcdot{}
    THEN  InstConcl  [fshift(fadd(f1;\mlambda{}i.1);0);fadd(f2;\mlambda{}i.1)]\mcdot{})
  THENA  Try  (Complete  (Auto))
  )
Home
Index