Step
*
1
1
2
1
1
of Lemma
int-seg-case-monotone
.....equality..... 
1. i : ℤ
2. j : ℤ
3. F : {i..j-} ⟶ ℙ
4. G : {i..j-} ⟶ ℙ
5. d : ∀k:{i..j-}. (F[k] ∨ G[k])
6. k : {i..j + 1-}
7. ↑isl(int-seg-case(i;k;d))
8. k' : {k..j + 1-}
9. x : ℤ
10. 0 < x
11. (k + x) ≤ j
12. ¬k + x < i
13. ↑isl(int-seg-case(i;k + (x - 1);d))
⊢ primrec((k + x) - i - 1;inr (λk.Ax) λ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 (λk.if (k) < (i + n)  then f k  else u) ) ~ int-seg-case(i;k + (x - 1)\000C;d)
BY
{ (Unfold `int-seg-case` 0 THEN (Decide ⌜k + (x - 1) < i⌝⋅ THENA Auto) THEN Reduce 0 THEN Auto) }
1
1. i : ℤ
2. j : ℤ
3. F : {i..j-} ⟶ ℙ
4. G : {i..j-} ⟶ ℙ
5. d : ∀k:{i..j-}. (F[k] ∨ G[k])
6. k : {i..j + 1-}
7. ↑isl(int-seg-case(i;k;d))
8. k' : {k..j + 1-}
9. x : ℤ
10. 0 < x
11. (k + x) ≤ j
12. ¬k + x < i
13. ↑isl(int-seg-case(i;k + (x - 1);d))
14. k + (x - 1) < i
⊢ primrec((k + x) - i - 1;inr (λk.Ax) λ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 (λk.if (k) < (i + n)  then f k  else u) ) ~ inr (λk.Ax) 
Latex:
Latex:
.....equality..... 
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)  \mleq{}  j
12.  \mneg{}k  +  x  <  i
13.  \muparrow{}isl(int-seg-case(i;k  +  (x  -  1);d))
\mvdash{}  primrec((k  +  x)  -  i  -  1;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)  ) 
\msim{}  int-seg-case(i;k  +  (x  -  1);d)
By
Latex:
(Unfold  `int-seg-case`  0  THEN  (Decide  \mkleeneopen{}k  +  (x  -  1)  <  i\mkleeneclose{}\mcdot{}  THENA  Auto)  THEN  Reduce  0  THEN  Auto)
Home
Index