Step * of Lemma simple-cbva-seq-list-case2

[F,L1,L2,G,a:Top]. ∀[m1:ℕ+]. ∀[m2:ℕ].
  (simple-cbva-seq(λn.if (n) < (m1)
                         then L1 n
                         else mk_lambdas(λout.if m1=m2
                                              then mk_lambdas(λo1.G[out;o1];m2 1)
                                              else (L2 (n m1));m1 1);F;(m1 m2) 1) 
  simple-cbva-seq(λn.if (n) < (m1)
                          then L1 n
                          else if (n) < (m1 m2)
                                  then mk_lambdas(L2 (n m1);m1)
                                  else mk_lambdas(λout1.mk_lambdas(λout2.G[out1;out2];m2 1);m1 1);F;(m1 m2) 1))
BY
TACTIC:((UnivCD THENA Auto)
          THEN RepUR ``simple-cbva-seq cbva-seq`` 0
          THEN AutoSplit
          THEN Try (Complete (Auto'))
          THEN Thin (-1)) }

1
1. Top
2. L1 Top
3. L2 Top
4. Top
5. Top
6. m1 : ℕ+
7. m2 : ℕ
⊢ callbyvalueall-seq(λn.if (n) < (m1)
                           then L1 n
                           else mk_lambdas(λout.if m1=m2
                                                then mk_lambdas(λo1.G[out;o1];m2 1)
                                                else (L2 (n m1));m1 1);λx.x;mk_lambdas(F;((m1 m2) 1) 1);0
                     ;(m1 m2) 1) 
callbyvalueall-seq(λn.if (n) < (m1)
                           then L1 n
                           else if (n) < (m1 m2)
                                   then mk_lambdas(L2 (n m1);m1)
                                   else mk_lambdas(λout1.mk_lambdas(λout2.G[out1;out2];m2 1);m1 1);λx.x
                     ;mk_lambdas(F;((m1 m2) 1) 1);0;(m1 m2) 1)


Latex:


Latex:
\mforall{}[F,L1,L2,G,a:Top].  \mforall{}[m1:\mBbbN{}\msupplus{}].  \mforall{}[m2:\mBbbN{}].
    (simple-cbva-seq(\mlambda{}n.if  (n)  <  (m1)
                                                  then  L1  a  n
                                                  else  mk\_lambdas(\mlambda{}out.if  n  -  m1=m2
                                                                                            then  mk\_lambdas(\mlambda{}o1.G[out;o1];m2  -  1)
                                                                                            else  (L2  a  (n  -  m1));m1  -  1);F;(m1  +  m2)  +  1) 
    \msim{}  simple-cbva-seq(\mlambda{}n.if  (n)  <  (m1)
                                                    then  L1  a  n
                                                    else  if  (n)  <  (m1  +  m2)
                                                                    then  mk\_lambdas(L2  a  (n  -  m1);m1)
                                                                    else  mk\_lambdas(\mlambda{}out1.mk\_lambdas(\mlambda{}out2.G[out1;out2];m2  -  1);m1 
                                                                              -  1);F;(m1  +  m2)  +  1))


By


Latex:
TACTIC:((UnivCD  THENA  Auto)
                THEN  RepUR  ``simple-cbva-seq  cbva-seq``  0
                THEN  AutoSplit
                THEN  Try  (Complete  (Auto'))
                THEN  Thin  (-1))




Home Index