Step * of Lemma bag-remove1-property

[T:Type]
  ∀eq:EqDecider(T). ∀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)?))))
BY
(Auto THEN InstLemma `decidable__bag-member` [⌜T⌝]⋅ THEN Auto) }

1
1. [T] Type
2. eq EqDecider(T)
3. T
4. bs bag(T)
5. ∀x:T. ∀bs:bag(T).  Dec(x ↓∈ bs)
⊢ (∃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)?)))


Latex:


Latex:
\mforall{}[T:Type]
    \mforall{}eq:EqDecider(T).  \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{}  ))))


By


Latex:
(Auto  THEN  InstLemma  `decidable\_\_bag-member`  [\mkleeneopen{}T\mkleeneclose{}]\mcdot{}  THEN  Auto)




Home Index