Step
*
2
1
of Lemma
poss-maj-invariant
1. T : Type
2. eq : EqDecider(T)
3. L : T List
4. ¬↑null(L)
5. ||L|| ≥ 1 
6. x : T
7. ys : T List
8. y : T
⊢ let n,z = poss-maj(eq;ys;x) 
  in ((count(eq z;ys) - count(λt.(¬b(eq z t));ys)) ≤ n)
     ∧ (∀y:T. ((¬↑(eq z y)) 
⇒ (n ≤ (count(λt.(¬b(eq y t));ys) - count(eq y;ys)))))
⇒ let n,z@0 = let n,x = poss-maj(eq;ys;x) 
               in if eq y x then <n + 1, x>
                  if (n =z 0) then <1, y>
                  else <n - 1, x>
                  fi  
   in ((count(eq z@0;ys @ [y]) - count(λt.(¬b(eq z@0 t));ys @ [y])) ≤ n)
      ∧ (∀y@0:T. ((¬↑(eq z@0 y@0)) 
⇒ (n ≤ (count(λt.(¬b(eq y@0 t));ys @ [y]) - count(eq y@0;ys @ [y])))))
BY
{ (GenConclAtAddr[1;1]
   THEN Thin(-1)
   THEN D -1
   THEN RenameVar `n' (-2)
   THEN RenameVar `z' (-1)
   THEN Reduce 0
   THEN (D 0 THENA Auto))⋅ }
1
1. T : Type
2. eq : EqDecider(T)
3. L : T List
4. ¬↑null(L)
5. ||L|| ≥ 1 
6. x : T
7. ys : T List
8. y : T
9. n : ℕ
10. z : T
11. ((count(eq z;ys) - count(λt.(¬b(eq z t));ys)) ≤ n)
∧ (∀y:T. ((¬↑(eq z y)) 
⇒ (n ≤ (count(λt.(¬b(eq y t));ys) - count(eq y;ys)))))
⊢ let n,z@0 = if eq y z then <n + 1, z>
  if (n =z 0) then <1, y>
  else <n - 1, z>
  fi  
  in ((count(eq z@0;ys @ [y]) - count(λt.(¬b(eq z@0 t));ys @ [y])) ≤ n)
     ∧ (∀y@0:T. ((¬↑(eq z@0 y@0)) 
⇒ (n ≤ (count(λt.(¬b(eq y@0 t));ys @ [y]) - count(eq y@0;ys @ [y])))))
Latex:
Latex:
1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  L  :  T  List
4.  \mneg{}\muparrow{}null(L)
5.  ||L||  \mgeq{}  1 
6.  x  :  T
7.  ys  :  T  List
8.  y  :  T
\mvdash{}  let  n,z  =  poss-maj(eq;ys;x) 
    in  ((count(eq  z;ys)  -  count(\mlambda{}t.(\mneg{}\msubb{}(eq  z  t));ys))  \mleq{}  n)
          \mwedge{}  (\mforall{}y:T.  ((\mneg{}\muparrow{}(eq  z  y))  {}\mRightarrow{}  (n  \mleq{}  (count(\mlambda{}t.(\mneg{}\msubb{}(eq  y  t));ys)  -  count(eq  y;ys)))))
{}\mRightarrow{}  let  n,z@0  =  let  n,x  =  poss-maj(eq;ys;x) 
                              in  if  eq  y  x  then  <n  +  1,  x>
                                    if  (n  =\msubz{}  0)  then  ə,  y>
                                    else  <n  -  1,  x>
                                    fi   
      in  ((count(eq  z@0;ys  @  [y])  -  count(\mlambda{}t.(\mneg{}\msubb{}(eq  z@0  t));ys  @  [y]))  \mleq{}  n)
            \mwedge{}  (\mforall{}y@0:T
                      ((\mneg{}\muparrow{}(eq  z@0  y@0))  {}\mRightarrow{}  (n  \mleq{}  (count(\mlambda{}t.(\mneg{}\msubb{}(eq  y@0  t));ys  @  [y])  -  count(eq  y@0;ys  @  [y])))))
By
Latex:
(GenConclAtAddr[1;1]
  THEN  Thin(-1)
  THEN  D  -1
  THEN  RenameVar  `n'  (-2)
  THEN  RenameVar  `z'  (-1)
  THEN  Reduce  0
  THEN  (D  0  THENA  Auto))\mcdot{}
Home
Index