Step
*
1
2
1
1
of Lemma
bag-remove1-property
1. T : Type
2. eq : EqDecider(T)
3. x : T
4. bs : T List
5. ∀x:T. ∀bs:bag(T).  Dec(x ↓∈ bs)
6. ¬x ↓∈ bs
7. ¬x ↓∈ bs
⊢ bag-remove1(eq;bs;x) = (inr ⋅ ) ∈ (bag(T)?)
BY
{ ((InstLemma `bag-remove1-property1` [⌜T⌝;⌜eq⌝;⌜x⌝;⌜bs⌝]⋅ THEN Auto) THEN D -1 THEN ExRepD THEN Auto) }
1
1. T : Type
2. eq : EqDecider(T)
3. x : T
4. bs : T List
5. ∀x:T. ∀bs:bag(T).  Dec(x ↓∈ bs)
6. ¬x ↓∈ bs
7. ¬x ↓∈ bs
8. as : T List
9. bs@0 : T List
10. bs = ((as @ [x]) @ bs@0) ∈ (T List)
11. bag-remove1(eq;bs;x) = (inl (rev(as) @ bs@0)) ∈ (T List?)
⊢ bag-remove1(eq;bs;x) = (inr ⋅ ) ∈ (bag(T)?)
Latex:
Latex:
1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  x  :  T
4.  bs  :  T  List
5.  \mforall{}x:T.  \mforall{}bs:bag(T).    Dec(x  \mdownarrow{}\mmember{}  bs)
6.  \mneg{}x  \mdownarrow{}\mmember{}  bs
7.  \mneg{}x  \mdownarrow{}\mmember{}  bs
\mvdash{}  bag-remove1(eq;bs;x)  =  (inr  \mcdot{}  )
By
Latex:
((InstLemma  `bag-remove1-property1`  [\mkleeneopen{}T\mkleeneclose{};\mkleeneopen{}eq\mkleeneclose{};\mkleeneopen{}x\mkleeneclose{};\mkleeneopen{}bs\mkleeneclose{}]\mcdot{}  THEN  Auto)  THEN  D  -1  THEN  ExRepD  THEN  Auto)
Home
Index