Step * 1 1 2 of Lemma int-seg-case-monotone


1. : ℤ
2. : ℤ
3. {i..j-} ⟶ ℙ
4. {i..j-} ⟶ ℙ
5. : ∀k:{i..j-}. (F[k] ∨ G[k])
6. {i..j 1-}
7. ↑isl(int-seg-case(i;k;d))
8. k' {k..j 1-}
9. : ℤ
10. 0 < x
11. ((k (x 1)) ≤ j)  (↑isl(int-seg-case(i;k (x 1);d)))
12. (k x) ≤ j
13. ¬x < i
⊢ ↑isl(primrec((k x) i;inr k.Ax) n,x. case x
                                              of inl(p) =>
                                              inl p
                                              inr(f) =>
                                              case (i n)
                                               of inl(z) =>
                                               inl <n, z>
                                               inr(u) =>
                                               inr k.if (k) < (i n)  then k  else u) ))
BY
((D -3 THENA Auto) THEN (RWO  "primrec-unroll" THENA Auto)) }

1
1. : ℤ
2. : ℤ
3. {i..j-} ⟶ ℙ
4. {i..j-} ⟶ ℙ
5. : ∀k:{i..j-}. (F[k] ∨ G[k])
6. {i..j 1-}
7. ↑isl(int-seg-case(i;k;d))
8. k' {k..j 1-}
9. : ℤ
10. 0 < x
11. (k x) ≤ j
12. ¬x < i
13. ↑isl(int-seg-case(i;k (x 1);d))
⊢ ↑isl(if (k x) i <1
then inr k.Ax) 
else n,x. case x
            of inl(p) =>
            inl p
            inr(f) =>
            case (i n) of inl(z) => inl <n, z> inr(u) => inr k.if (k) < (i n)  then k  else u) 
     ((k x) 1) 
     primrec((k x) 1;inr k.Ax) n,x. case x
                                                of inl(p) =>
                                                inl p
                                                inr(f) =>
                                                case (i n)
                                                 of inl(z) =>
                                                 inl <n, z>
                                                 inr(u) =>
                                                 inr k.if (k) < (i n)  then k  else u) )
fi )


Latex:


Latex:

1.  i  :  \mBbbZ{}
2.  j  :  \mBbbZ{}
3.  F  :  \{i..j\msupminus{}\}  {}\mrightarrow{}  \mBbbP{}
4.  G  :  \{i..j\msupminus{}\}  {}\mrightarrow{}  \mBbbP{}
5.  d  :  \mforall{}k:\{i..j\msupminus{}\}.  (F[k]  \mvee{}  G[k])
6.  k  :  \{i..j  +  1\msupminus{}\}
7.  \muparrow{}isl(int-seg-case(i;k;d))
8.  k'  :  \{k..j  +  1\msupminus{}\}
9.  x  :  \mBbbZ{}
10.  0  <  x
11.  ((k  +  (x  -  1))  \mleq{}  j)  {}\mRightarrow{}  (\muparrow{}isl(int-seg-case(i;k  +  (x  -  1);d)))
12.  (k  +  x)  \mleq{}  j
13.  \mneg{}k  +  x  <  i
\mvdash{}  \muparrow{}isl(primrec((k  +  x)  -  i;inr  (\mlambda{}k.Ax)  ;\mlambda{}n,x.  case  x
                                                                                            of  inl(p)  =>
                                                                                            inl  p
                                                                                            |  inr(f)  =>
                                                                                            case  d  (i  +  n)
                                                                                              of  inl(z)  =>
                                                                                              inl  <i  +  n,  z>
                                                                                              |  inr(u)  =>
                                                                                              inr  (\mlambda{}k.if  (k)  <  (i  +  n)    then  f  k    else  u)  ))


By


Latex:
((D  -3  THENA  Auto)  THEN  (RWO    "primrec-unroll"  0  THENA  Auto))




Home Index