Step
*
2
1
of Lemma
bag-no-repeats-count
1. T : Type
2. eq : EqDecider(T)
3. bs : bag(T)
4. ∀[x:T]. uiff(1 ≤ (#x in bs);(#x in bs) = 1 ∈ ℤ)
5. ∀[x:T]. uiff(1 ≤ #([y∈bs|eq x y]);#([y∈bs|eq x y]) = 1 ∈ ℤ)
⊢ bag-no-repeats(T;bs)
BY
{ TACTIC:(Unfold `bag-no-repeats` 0
          THEN BagToList 3
          THEN Auto
          THEN All (RepUR ``bag-count bag-filter bag-size``)
          THEN D 0
          THEN With ⌜bs⌝ (D 0)⋅
          THEN Auto) }
1
1. T : Type
2. eq : EqDecider(T)
3. bs : T List
4. ∀[x:T]. uiff(1 ≤ count(eq x;bs);count(eq x;bs) = 1 ∈ ℤ)
5. ∀[x:T]. uiff(1 ≤ ||filter(λy.(eq x y);bs)||;||filter(λy.(eq x y);bs)|| = 1 ∈ ℤ)
6. bs = bs ∈ bag(T)
⊢ no_repeats(T;bs)
Latex:
Latex:
1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  bs  :  bag(T)
4.  \mforall{}[x:T].  uiff(1  \mleq{}  (\#x  in  bs);(\#x  in  bs)  =  1)
5.  \mforall{}[x:T].  uiff(1  \mleq{}  \#([y\mmember{}bs|eq  x  y]);\#([y\mmember{}bs|eq  x  y])  =  1)
\mvdash{}  bag-no-repeats(T;bs)
By
Latex:
TACTIC:(Unfold  `bag-no-repeats`  0
                THEN  BagToList  3
                THEN  Auto
                THEN  All  (RepUR  ``bag-count  bag-filter  bag-size``)
                THEN  D  0
                THEN  With  \mkleeneopen{}bs\mkleeneclose{}  (D  0)\mcdot{}
                THEN  Auto)
Home
Index