Step
*
1
1
1
of Lemma
strict-majority-property
1. T : Type
2. eq : EqDecider(T)
3. L : T List
4. x : T
5. ||L|| < 2 * ||filter(λy.(eq y x);L)||
6. ∀x,y:T.  Dec(x = y ∈ T)
7. (x ∈ L)
8. y1 : T
9. y2 : ℕ+
10. (<y1, y2> ∈ count-repeats(L,eq))
11. x = y1 ∈ T
⊢ if null(filter(λp.||L|| <z 2 * (snd(p));count-repeats(L,eq)))
then inr ⋅ 
else inl (fst(hd(filter(λp.||L|| <z 2 * (snd(p));count-repeats(L,eq)))))
fi 
= (inl x)
∈ (T?)
BY
{ (FLemma `member-count-repeats3` [-2]  THENA Auto) }
1
1. T : Type
2. eq : EqDecider(T)
3. L : T List
4. x : T
5. ||L|| < 2 * ||filter(λy.(eq y x);L)||
6. ∀x,y:T.  Dec(x = y ∈ T)
7. (x ∈ L)
8. y1 : T
9. y2 : ℕ+
10. (<y1, y2> ∈ count-repeats(L,eq))
11. x = y1 ∈ T
12. y2 = ||filter(λy.(eq y y1);L)|| ∈ ℤ
⊢ if null(filter(λp.||L|| <z 2 * (snd(p));count-repeats(L,eq)))
then inr ⋅ 
else inl (fst(hd(filter(λp.||L|| <z 2 * (snd(p));count-repeats(L,eq)))))
fi 
= (inl x)
∈ (T?)
Latex:
Latex:
1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  L  :  T  List
4.  x  :  T
5.  ||L||  <  2  *  ||filter(\mlambda{}y.(eq  y  x);L)||
6.  \mforall{}x,y:T.    Dec(x  =  y)
7.  (x  \mmember{}  L)
8.  y1  :  T
9.  y2  :  \mBbbN{}\msupplus{}
10.  (<y1,  y2>  \mmember{}  count-repeats(L,eq))
11.  x  =  y1
\mvdash{}  if  null(filter(\mlambda{}p.||L||  <z  2  *  (snd(p));count-repeats(L,eq)))
then  inr  \mcdot{} 
else  inl  (fst(hd(filter(\mlambda{}p.||L||  <z  2  *  (snd(p));count-repeats(L,eq)))))
fi 
=  (inl  x)
By
Latex:
(FLemma  `member-count-repeats3`  [-2]    THENA  Auto)
Home
Index