Step
*
of Lemma
callbyvalueall-seq-spread
∀[F,G,H,L,K:Top]. ∀[m:ℕ+]. ∀[n:ℕm + 1].
  (let x,y = callbyvalueall-seq(L;λf.mk_applies(f;K;n);mk_lambdas(λa.<F[a], G[a]>m - 1);n;m) 
   in H[x;y] ~ callbyvalueall-seq(L;λf.mk_applies(f;K;n);mk_lambdas(λa.H[F[a];G[a]];m - 1);n;m))
BY
{ (Auto
   THEN (Assert ⌜∃i:ℕ. (m = (n + i) ∈ ℤ)⌝⋅ THENA (InstConcl [⌜m - n⌝]⋅ THEN Auto'))
   THEN ExRepD
   THEN (Assert ⌜m ~ n + i⌝⋅ THENA Auto)
   THEN Thin (-2)
   THEN (D (-3) THENA Auto)
   THEN MoveToConcl (-3)
   THEN D (-4)
   THEN MoveToConcl (-4)
   THEN HypSubst' (-1) 0
   THEN ThinVar `m'⋅
   THEN RepeatFor 2 (MoveToConcl (-2))
   THEN NatInd (-1)
   THEN Auto) }
1
1. F : Top
2. G : Top
3. H : Top
4. L : Top
5. i : ℤ
6. K : Top
7. n : ℤ
8. 0 < n + 0
9. 0 ≤ n
10. n < (n + 0) + 1
⊢ let x,y = callbyvalueall-seq(L;λf.mk_applies(f;K;n);mk_lambdas(λa.<F[a], G[a]>(n + 0) - 1);n;n + 0) 
  in H[x;y] ~ callbyvalueall-seq(L;λf.mk_applies(f;K;n);mk_lambdas(λa.H[F[a];G[a]];(n + 0) - 1);n;n + 0)
2
1. F : Top
2. G : Top
3. H : Top
4. L : Top
5. i : ℤ
6. 0 < i
7. ∀K:Top. ∀n:ℤ.
     (0 < n + (i - 1)
     
⇒ 0 ≤ n < (n + (i - 1)) + 1
     
⇒ (let x,y = callbyvalueall-seq(L;λf.mk_applies(f;K;n);mk_lambdas(λa.<F[a], G[a]>(n + (i - 1)) - 1);n;n
                                      + (i - 1)) 
         in H[x;y] ~ callbyvalueall-seq(L;λf.mk_applies(f;K;n);mk_lambdas(λa.H[F[a];G[a]];(n + (i - 1)) - 1);n;n
                                        + (i - 1))))
8. K : Top
9. n : ℤ
10. 0 < n + i
11. 0 ≤ n
12. n < (n + i) + 1
⊢ let x,y = callbyvalueall-seq(L;λf.mk_applies(f;K;n);mk_lambdas(λa.<F[a], G[a]>(n + i) - 1);n;n + i) 
  in H[x;y] ~ callbyvalueall-seq(L;λf.mk_applies(f;K;n);mk_lambdas(λa.H[F[a];G[a]];(n + i) - 1);n;n + i)
Latex:
Latex:
\mforall{}[F,G,H,L,K:Top].  \mforall{}[m:\mBbbN{}\msupplus{}].  \mforall{}[n:\mBbbN{}m  +  1].
    (let  x,y  =  callbyvalueall-seq(L;\mlambda{}f.mk\_applies(f;K;n);mk\_lambdas(\mlambda{}a.<F[a],  G[a]>m  -  1);n;m) 
      in  H[x;y]  \msim{}  callbyvalueall-seq(L;\mlambda{}f.mk\_applies(f;K;n);mk\_lambdas(\mlambda{}a.H[F[a];G[a]];m  -  1);n;m))
By
Latex:
(Auto
  THEN  (Assert  \mkleeneopen{}\mexists{}i:\mBbbN{}.  (m  =  (n  +  i))\mkleeneclose{}\mcdot{}  THENA  (InstConcl  [\mkleeneopen{}m  -  n\mkleeneclose{}]\mcdot{}  THEN  Auto'))
  THEN  ExRepD
  THEN  (Assert  \mkleeneopen{}m  \msim{}  n  +  i\mkleeneclose{}\mcdot{}  THENA  Auto)
  THEN  Thin  (-2)
  THEN  (D  (-3)  THENA  Auto)
  THEN  MoveToConcl  (-3)
  THEN  D  (-4)
  THEN  MoveToConcl  (-4)
  THEN  HypSubst'  (-1)  0
  THEN  ThinVar  `m'\mcdot{}
  THEN  RepeatFor  2  (MoveToConcl  (-2))
  THEN  NatInd  (-1)
  THEN  Auto)
Home
Index