Step * 1 2 of Lemma bag-drop-commutes


1. Type
2. eq EqDecider(T)
3. bs bag(T)
4. T
5. T
6. ∀x,y:T.  Dec(x y ∈ T)
7. ¬(x y ∈ T)
8. ∀x:T. ∀bs:bag(T).
     ((∃as:bag(T). ((bs ({x} as) ∈ bag(T)) ∧ (bag-remove1(eq;bs;x) (inl as) ∈ (bag(T)?))))
     ∨ ((¬x ↓∈ bs) ∧ (bag-remove1(eq;bs;x) (inr ⋅ ) ∈ (bag(T)?))))
9. as bag(T)
10. bs ({x} as) ∈ bag(T)
11. bag-remove1(eq;bs;x) (inl as) ∈ (bag(T)?)
12. a1 bag(T)
13. bs ({y} a1) ∈ bag(T)
14. bag-remove1(eq;bs;y) (inl a1) ∈ (bag(T)?)
15. as@0 bag(T)
16. as ({y} as@0) ∈ bag(T)
17. bag-remove1(eq;as;y) (inl as@0) ∈ (bag(T)?)
18. ¬x ↓∈ a1
19. bag-remove1(eq;a1;x) (inr ⋅ ) ∈ (bag(T)?)
⊢ as@0 a1 ∈ bag(T)
BY
(Try ((Eliminate ⌜as⌝⋅ THENA Auto)) THEN Try ((Eliminate ⌜a1⌝⋅ THENA Auto)))⋅ }

1
1. Type
2. T
3. as@0 bag(T)
4. eq EqDecider(T)
5. bs bag(T)
6. T
7. ∀x,y:T.  Dec(x y ∈ T)
8. ¬(x y ∈ T)
9. ∀x:T. ∀bs:bag(T).
     ((∃as:bag(T). ((bs ({x} as) ∈ bag(T)) ∧ (bag-remove1(eq;bs;x) (inl as) ∈ (bag(T)?))))
     ∨ ((¬x ↓∈ bs) ∧ (bag-remove1(eq;bs;x) (inr ⋅ ) ∈ (bag(T)?))))
10. as bag(T)
11. bs ({x} {y} as@0) ∈ bag(T)
12. bag-remove1(eq;bs;x) (inl ({y} as@0)) ∈ (bag(T)?)
13. a1 bag(T)
14. bs ({y} a1) ∈ bag(T)
15. bag-remove1(eq;bs;y) (inl a1) ∈ (bag(T)?)
16. as ({y} as@0) ∈ bag(T)
17. bag-remove1(eq;{y} as@0;y) (inl as@0) ∈ (bag(T)?)
18. ¬x ↓∈ a1
19. bag-remove1(eq;a1;x) (inr ⋅ ) ∈ (bag(T)?)
⊢ as@0 a1 ∈ bag(T)


Latex:


Latex:

1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  bs  :  bag(T)
4.  x  :  T
5.  y  :  T
6.  \mforall{}x,y:T.    Dec(x  =  y)
7.  \mneg{}(x  =  y)
8.  \mforall{}x:T.  \mforall{}bs:bag(T).
          ((\mexists{}as:bag(T).  ((bs  =  (\{x\}  +  as))  \mwedge{}  (bag-remove1(eq;bs;x)  =  (inl  as))))
          \mvee{}  ((\mneg{}x  \mdownarrow{}\mmember{}  bs)  \mwedge{}  (bag-remove1(eq;bs;x)  =  (inr  \mcdot{}  ))))
9.  as  :  bag(T)
10.  bs  =  (\{x\}  +  as)
11.  bag-remove1(eq;bs;x)  =  (inl  as)
12.  a1  :  bag(T)
13.  bs  =  (\{y\}  +  a1)
14.  bag-remove1(eq;bs;y)  =  (inl  a1)
15.  as@0  :  bag(T)
16.  as  =  (\{y\}  +  as@0)
17.  bag-remove1(eq;as;y)  =  (inl  as@0)
18.  \mneg{}x  \mdownarrow{}\mmember{}  a1
19.  bag-remove1(eq;a1;x)  =  (inr  \mcdot{}  )
\mvdash{}  as@0  =  a1


By


Latex:
(Try  ((Eliminate  \mkleeneopen{}as\mkleeneclose{}\mcdot{}  THENA  Auto))  THEN  Try  ((Eliminate  \mkleeneopen{}a1\mkleeneclose{}\mcdot{}  THENA  Auto)))\mcdot{}




Home Index