Step
*
2
2
of Lemma
list-decomp-no_repeats
1. T : Type
2. l1 : T List
3. l2 : T List
4. l3 : T List
5. l4 : T List
6. x : T
7. no_repeats(T;(l1 @ [x]) @ l2)
8. ((l1 @ [x]) @ l2) = ((l3 @ [x]) @ l4) ∈ (T List)
9. l1 = l3 ∈ (T List)
10. ((||l1|| + 1) + ||l2||) = ((||l3|| + 1) + ||l4||) ∈ ℤ
11. ∀i:ℕ(||l1|| + 1) + ||l2||. ((l1 @ [x]) @ l2[i] = (l3 @ [x]) @ l4[i] ∈ T)
12. ||l2|| = ||l4|| ∈ ℤ
13. i : ℕ||l2||
⊢ l2[i] = l4[i] ∈ T
BY
{ ((InstHyp [⌜(||l1|| + 1) + i⌝] (-3)⋅ THENA Auto')
   THEN (RWO "select_append_back" (-1) THENA Auto')
   THEN (RWO "length_append" (-1) THENA Auto')
   THEN Reduce (-1)
   THEN Auto) }
Latex:
Latex:
1.  T  :  Type
2.  l1  :  T  List
3.  l2  :  T  List
4.  l3  :  T  List
5.  l4  :  T  List
6.  x  :  T
7.  no\_repeats(T;(l1  @  [x])  @  l2)
8.  ((l1  @  [x])  @  l2)  =  ((l3  @  [x])  @  l4)
9.  l1  =  l3
10.  ((||l1||  +  1)  +  ||l2||)  =  ((||l3||  +  1)  +  ||l4||)
11.  \mforall{}i:\mBbbN{}(||l1||  +  1)  +  ||l2||.  ((l1  @  [x])  @  l2[i]  =  (l3  @  [x])  @  l4[i])
12.  ||l2||  =  ||l4||
13.  i  :  \mBbbN{}||l2||
\mvdash{}  l2[i]  =  l4[i]
By
Latex:
((InstHyp  [\mkleeneopen{}(||l1||  +  1)  +  i\mkleeneclose{}]  (-3)\mcdot{}  THENA  Auto')
  THEN  (RWO  "select\_append\_back"  (-1)  THENA  Auto')
  THEN  (RWO  "length\_append"  (-1)  THENA  Auto')
  THEN  Reduce  (-1)
  THEN  Auto)
Home
Index