Step * 1 1 2 1 of Lemma poss-maj-property


1. Type@i'
2. eq EqDecider(T)@i
3. List@i
4. T@i
5. : ℕ@i
6. T@i
7. (count(eq z;L) count(λt.(¬b(eq t));L)) ≤ n
8. ∀y:T. ((¬↑(eq y))  (n ≤ (count(λt.(¬b(eq t));L) count(eq y;L))))
9. T@i
10. ||L|| < count(eq y;L)
11. ¬↑(eq y)
12. n ≤ (count(λt.(¬b(eq t));L) count(eq y;L))
⊢ z ∈ T
BY
((RWO "count-length-filter" 12 THENA Auto)
   THEN (RWO "count-length-filter" 10 THENA Auto)
   THEN (InstLemma `filter-split-length` [⌜T⌝;⌜eq y⌝;⌜L⌝]⋅ THENA Auto)
   THEN RepUR ``so_apply`` -1
   THEN Assert ⌜||filter(λx.(eq x);L)|| ||filter(eq y;L)|| ∈ ℤ⌝⋅
   THEN Auto) }


Latex:


Latex:

1.  T  :  Type@i'
2.  eq  :  EqDecider(T)@i
3.  L  :  T  List@i
4.  x  :  T@i
5.  n  :  \mBbbN{}@i
6.  z  :  T@i
7.  (count(eq  z;L)  -  count(\mlambda{}t.(\mneg{}\msubb{}(eq  z  t));L))  \mleq{}  n
8.  \mforall{}y:T.  ((\mneg{}\muparrow{}(eq  z  y))  {}\mRightarrow{}  (n  \mleq{}  (count(\mlambda{}t.(\mneg{}\msubb{}(eq  y  t));L)  -  count(eq  y;L))))
9.  y  :  T@i
10.  ||L||  <  2  *  count(eq  y;L)
11.  \mneg{}\muparrow{}(eq  z  y)
12.  n  \mleq{}  (count(\mlambda{}t.(\mneg{}\msubb{}(eq  y  t));L)  -  count(eq  y;L))
\mvdash{}  y  =  z


By


Latex:
((RWO  "count-length-filter"  12  THENA  Auto)
  THEN  (RWO  "count-length-filter"  10  THENA  Auto)
  THEN  (InstLemma  `filter-split-length`  [\mkleeneopen{}T\mkleeneclose{};\mkleeneopen{}eq  y\mkleeneclose{};\mkleeneopen{}L\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  RepUR  ``so\_apply``  -1
  THEN  Assert  \mkleeneopen{}||filter(\mlambda{}x.(eq  y  x);L)||  =  ||filter(eq  y;L)||\mkleeneclose{}\mcdot{}
  THEN  Auto)




Home Index