Step
*
of Lemma
bag-filter-same
∀[T:Type]. ∀[p:T ⟶ 𝔹]. ∀[bs:bag(T)].  [x∈bs|p[x]] = bs ∈ bag(T) supposing ∀x:T. (x ↓∈ bs 
⇒ (↑p[x]))
BY
{ (Auto
   THEN (InstLemma `bag-filter-trivial` [⌜{x:T| x ↓∈ bs} ⌝;⌜p⌝]⋅ THENA (Auto THEN D (-1) THEN Unhide THEN Auto))
   THEN (InstHyp [⌜bs⌝] (-1)⋅ THENA (BLemma `bag-settype` THEN Auto))) }
1
1. T : Type
2. p : T ⟶ 𝔹
3. bs : bag(T)
4. ∀x:T. (x ↓∈ bs 
⇒ (↑p[x]))
5. ∀[bs@0:bag({x:T| x ↓∈ bs} )]. ([x∈bs@0|p[x]] = bs@0 ∈ bag({x:T| x ↓∈ bs} ))
6. [x∈bs|p[x]] = bs ∈ bag({x:T| x ↓∈ bs} )
⊢ [x∈bs|p[x]] = bs ∈ bag(T)
Latex:
Latex:
\mforall{}[T:Type].  \mforall{}[p:T  {}\mrightarrow{}  \mBbbB{}].  \mforall{}[bs:bag(T)].    [x\mmember{}bs|p[x]]  =  bs  supposing  \mforall{}x:T.  (x  \mdownarrow{}\mmember{}  bs  {}\mRightarrow{}  (\muparrow{}p[x]))
By
Latex:
(Auto
  THEN  (InstLemma  `bag-filter-trivial`  [\mkleeneopen{}\{x:T|  x  \mdownarrow{}\mmember{}  bs\}  \mkleeneclose{};\mkleeneopen{}p\mkleeneclose{}]\mcdot{}
              THENA  (Auto  THEN  D  (-1)  THEN  Unhide  THEN  Auto)
              )
  THEN  (InstHyp  [\mkleeneopen{}bs\mkleeneclose{}]  (-1)\mcdot{}  THENA  (BLemma  `bag-settype`  THEN  Auto)))
Home
Index