Step
*
2
of Lemma
callbyvalueall_seq-decomp-last
.....upcase..... 
1. L : Top
2. F : Top
3. k : ℤ
4. 0 < k
5. ∀K:Top. ∀n:ℤ.
     ((0 ≤ n)
     
⇒ (callbyvalueall_seq(L;λf.mk_applies(f;K;n);F;n;(n + (k - 1)) + 1) 
        ~ callbyvalueall_seq(L;λf.mk_applies(f;K;n);λg.let x ⟵ g (L (n + (k - 1)))
                                                       in F (λf.(g f x));n;n + (k - 1))))
⊢ ∀K:Top. ∀n:ℤ.
    ((0 ≤ n)
    
⇒ (callbyvalueall_seq(L;λf.mk_applies(f;K;n);F;n;(n + k) + 1) 
       ~ callbyvalueall_seq(L;λf.mk_applies(f;K;n);λg.let x ⟵ g (L (n + k))
                                                      in F (λf.(g f x));n;n + k)))
BY
{ ((UnivCD THENA Auto) THEN RecUnfold `callbyvalueall_seq` 0 THEN AutoSplit THEN EqCD THEN Try (Trivial)) }
1
1. L : Top
2. F : Top
3. k : ℤ
4. 0 < k
5. ∀K:Top. ∀n:ℤ.
     ((0 ≤ n)
     
⇒ (callbyvalueall_seq(L;λf.mk_applies(f;K;n);F;n;(n + (k - 1)) + 1) 
        ~ callbyvalueall_seq(L;λf.mk_applies(f;K;n);λg.let x ⟵ g (L (n + (k - 1)))
                                                       in F (λf.(g f x));n;n + (k - 1))))
6. K : Top
7. n : ℤ
8. ¬(((n + k) + 1) ≤ n)
9. 0 ≤ n
10. v : Base
⊢ callbyvalueall_seq(L;λf.(mk_applies(f;K;n) v);F;n + 1;(n + k) + 1) 
~ callbyvalueall_seq(L;λf.(mk_applies(f;K;n) v);λg.let x ⟵ g (L (n + k))
                                                   in F (λf.(g f x));n + 1;n + k)
Latex:
Latex:
.....upcase..... 
1.  L  :  Top
2.  F  :  Top
3.  k  :  \mBbbZ{}
4.  0  <  k
5.  \mforall{}K:Top.  \mforall{}n:\mBbbZ{}.
          ((0  \mleq{}  n)
          {}\mRightarrow{}  (callbyvalueall\_seq(L;\mlambda{}f.mk\_applies(f;K;n);F;n;(n  +  (k  -  1))  +  1) 
                \msim{}  callbyvalueall\_seq(L;\mlambda{}f.mk\_applies(f;K;n);\mlambda{}g.let  x  \mleftarrow{}{}  g  (L  (n  +  (k  -  1)))
                                                                                                              in  F  (\mlambda{}f.(g  f  x));n;n  +  (k  -  1))))
\mvdash{}  \mforall{}K:Top.  \mforall{}n:\mBbbZ{}.
        ((0  \mleq{}  n)
        {}\mRightarrow{}  (callbyvalueall\_seq(L;\mlambda{}f.mk\_applies(f;K;n);F;n;(n  +  k)  +  1) 
              \msim{}  callbyvalueall\_seq(L;\mlambda{}f.mk\_applies(f;K;n);\mlambda{}g.let  x  \mleftarrow{}{}  g  (L  (n  +  k))
                                                                                                            in  F  (\mlambda{}f.(g  f  x));n;n  +  k)))
By
Latex:
((UnivCD  THENA  Auto)
  THEN  RecUnfold  `callbyvalueall\_seq`  0
  THEN  AutoSplit
  THEN  EqCD
  THEN  Try  (Trivial))
Home
Index