Step
*
2
2
1
of Lemma
sorted-by-unique
1. T : Type
2. R : T ⟶ T ⟶ ℙ
3. Trans(T;a,b.R a b)
4. AntiSym(T;a,b.R a b)
5. u : T
6. v : T List
7. ∀[sb:T List]
     (v = sb ∈ (T List)) supposing 
        (no_repeats(T;v) and 
        sorted-by(R;v) and 
        no_repeats(T;sb) and 
        sorted-by(R;sb) and 
        set-equal(T;v;sb))
8. u1 : T
9. v1 : T List
10. set-equal(T;[u / v];[u1 / v1])
11. sorted-by(R;v1) ∧ (∀z∈v1.R u1 z)
12. no_repeats(T;v1) ∧ (¬(u1 ∈ v1))
13. sorted-by(R;v) ∧ (∀z∈v.R u z)
14. no_repeats(T;v) ∧ (¬(u ∈ v))
⊢ [u / v] = [u1 / v1] ∈ (T List)
BY
{ Assert ⌜(u = u1 ∈ T) ∧ set-equal(T;v;v1)⌝⋅ }
1
.....assertion..... 
1. T : Type
2. R : T ⟶ T ⟶ ℙ
3. Trans(T;a,b.R a b)
4. AntiSym(T;a,b.R a b)
5. u : T
6. v : T List
7. ∀[sb:T List]
     (v = sb ∈ (T List)) supposing 
        (no_repeats(T;v) and 
        sorted-by(R;v) and 
        no_repeats(T;sb) and 
        sorted-by(R;sb) and 
        set-equal(T;v;sb))
8. u1 : T
9. v1 : T List
10. set-equal(T;[u / v];[u1 / v1])
11. sorted-by(R;v1) ∧ (∀z∈v1.R u1 z)
12. no_repeats(T;v1) ∧ (¬(u1 ∈ v1))
13. sorted-by(R;v) ∧ (∀z∈v.R u z)
14. no_repeats(T;v) ∧ (¬(u ∈ v))
⊢ (u = u1 ∈ T) ∧ set-equal(T;v;v1)
2
1. T : Type
2. R : T ⟶ T ⟶ ℙ
3. Trans(T;a,b.R a b)
4. AntiSym(T;a,b.R a b)
5. u : T
6. v : T List
7. ∀[sb:T List]
     (v = sb ∈ (T List)) supposing 
        (no_repeats(T;v) and 
        sorted-by(R;v) and 
        no_repeats(T;sb) and 
        sorted-by(R;sb) and 
        set-equal(T;v;sb))
8. u1 : T
9. v1 : T List
10. set-equal(T;[u / v];[u1 / v1])
11. sorted-by(R;v1) ∧ (∀z∈v1.R u1 z)
12. no_repeats(T;v1) ∧ (¬(u1 ∈ v1))
13. sorted-by(R;v) ∧ (∀z∈v.R u z)
14. no_repeats(T;v) ∧ (¬(u ∈ v))
15. (u = u1 ∈ T) ∧ set-equal(T;v;v1)
⊢ [u / v] = [u1 / v1] ∈ (T List)
Latex:
Latex:
1.  T  :  Type
2.  R  :  T  {}\mrightarrow{}  T  {}\mrightarrow{}  \mBbbP{}
3.  Trans(T;a,b.R  a  b)
4.  AntiSym(T;a,b.R  a  b)
5.  u  :  T
6.  v  :  T  List
7.  \mforall{}[sb:T  List]
          (v  =  sb)  supposing 
                (no\_repeats(T;v)  and 
                sorted-by(R;v)  and 
                no\_repeats(T;sb)  and 
                sorted-by(R;sb)  and 
                set-equal(T;v;sb))
8.  u1  :  T
9.  v1  :  T  List
10.  set-equal(T;[u  /  v];[u1  /  v1])
11.  sorted-by(R;v1)  \mwedge{}  (\mforall{}z\mmember{}v1.R  u1  z)
12.  no\_repeats(T;v1)  \mwedge{}  (\mneg{}(u1  \mmember{}  v1))
13.  sorted-by(R;v)  \mwedge{}  (\mforall{}z\mmember{}v.R  u  z)
14.  no\_repeats(T;v)  \mwedge{}  (\mneg{}(u  \mmember{}  v))
\mvdash{}  [u  /  v]  =  [u1  /  v1]
By
Latex:
Assert  \mkleeneopen{}(u  =  u1)  \mwedge{}  set-equal(T;v;v1)\mkleeneclose{}\mcdot{}
Home
Index