Step
*
2
of Lemma
remove-repeats-length-no-repeats
1. T : Type
2. eq : EqDecider(T)
3. u : T
4. v : T List
5. no_repeats(T;v) 
⇒ (||remove-repeats(eq;v)|| = ||v|| ∈ ℤ)
⊢ no_repeats(T;[u / v]) 
⇒ (||remove-repeats(eq;[u / v])|| = ||[u / v]|| ∈ ℤ)
BY
{ (Auto
   THEN (RWO "no_repeats_cons" (-1) THENA Auto)
   THEN D (-1)
   THEN (D (-3) THENA Auto)
   THEN (Subst ⌜[u / v] ~ [u] @ v⌝ 0⋅ THENA (Reduce 0 THEN Auto))
   THEN (RWO "remove-repeats-append" 0 THENA Auto)
   THEN (InstLemma `remove-repeats-append-one-member` [⌜T⌝; ⌜eq⌝; ⌜v⌝; ⌜u⌝]⋅ THENA Auto)
   THEN D (-1)
   THEN Auto) }
Latex:
Latex:
1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  u  :  T
4.  v  :  T  List
5.  no\_repeats(T;v)  {}\mRightarrow{}  (||remove-repeats(eq;v)||  =  ||v||)
\mvdash{}  no\_repeats(T;[u  /  v])  {}\mRightarrow{}  (||remove-repeats(eq;[u  /  v])||  =  ||[u  /  v]||)
By
Latex:
(Auto
  THEN  (RWO  "no\_repeats\_cons"  (-1)  THENA  Auto)
  THEN  D  (-1)
  THEN  (D  (-3)  THENA  Auto)
  THEN  (Subst  \mkleeneopen{}[u  /  v]  \msim{}  [u]  @  v\mkleeneclose{}  0\mcdot{}  THENA  (Reduce  0  THEN  Auto))
  THEN  (RWO  "remove-repeats-append"  0  THENA  Auto)
  THEN  (InstLemma  `remove-repeats-append-one-member`  [\mkleeneopen{}T\mkleeneclose{};  \mkleeneopen{}eq\mkleeneclose{};  \mkleeneopen{}v\mkleeneclose{};  \mkleeneopen{}u\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  D  (-1)
  THEN  Auto)
Home
Index