Step * 2 1 1 1 of Lemma bag-member-count


1. Type
2. eq EqDecider(T)
3. T
4. List ∈ Type
5. ∀as,b1:T List.  (permutation(T;as;b1) ∈ Type)
6. ∀as:T List. permutation(T;as;as)
7. List
8. b1 List
9. permutation(T;L;b1)
10. ((1 ≤ #([y∈L|eq y]))  x ↓∈ L) ((1 ≤ #([y∈b1|eq y]))  x ↓∈ b1) ∈ Type
11. 1 ≤ #([y∈L|eq y])
12. L ∈ bag(T)
⊢ (x ∈ L)
BY
xxx(Thin (-1)
      THEN RepUR ``bag-size bag-filter`` (-1)
      THEN (InstLemma `filter_is_empty` [⌜T⌝y.(eq y);⌜L⌝]⋅ THENA Auto)
      THEN Reduce (-1))xxx }

1
1. Type
2. eq EqDecider(T)
3. T
4. List ∈ Type
5. ∀as,b1:T List.  (permutation(T;as;b1) ∈ Type)
6. ∀as:T List. permutation(T;as;as)
7. List
8. b1 List
9. permutation(T;L;b1)
10. ((1 ≤ #([y∈L|eq y]))  x ↓∈ L) ((1 ≤ #([y∈b1|eq y]))  x ↓∈ b1) ∈ Type
11. 1 ≤ ||filter(λy.(eq y);L)||
12. uiff(↑null(filter(λy.(eq y);L));∀[i:ℕ||L||]. (¬↑(eq L[i])))
⊢ (x ∈ L)


Latex:


Latex:

1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  x  :  T
4.  T  List  \mmember{}  Type
5.  \mforall{}as,b1:T  List.    (permutation(T;as;b1)  \mmember{}  Type)
6.  \mforall{}as:T  List.  permutation(T;as;as)
7.  L  :  T  List
8.  b1  :  T  List
9.  permutation(T;L;b1)
10.  ((1  \mleq{}  \#([y\mmember{}L|eq  x  y]))  {}\mRightarrow{}  x  \mdownarrow{}\mmember{}  L)  =  ((1  \mleq{}  \#([y\mmember{}b1|eq  x  y]))  {}\mRightarrow{}  x  \mdownarrow{}\mmember{}  b1)
11.  h  :  1  \mleq{}  \#([y\mmember{}L|eq  x  y])
12.  L  =  L
\mvdash{}  (x  \mmember{}  L)


By


Latex:
xxx(Thin  (-1)
        THEN  RepUR  ``bag-size  bag-filter``  (-1)
        THEN  (InstLemma  `filter\_is\_empty`  [\mkleeneopen{}T\mkleeneclose{};\mlambda{}y.(eq  x  y);\mkleeneopen{}L\mkleeneclose{}]\mcdot{}  THENA  Auto)
        THEN  Reduce  (-1))xxx




Home Index