Step * of Lemma hdf-compose1-transformation2

[f,L,G:Top]. ∀[m:ℕ].
  (f fix((λmk-hdf.(inl a.cbva_seq(L[a]; λg.<mk-hdf, G[a;g]>m))))) 
  fix((λmk-hdf.(inl a.cbva_seq(λn.if (n =z m) then mk_lambdas_fun(λg.bag-map(f;G[a;g]);m) else L[a] fi ;
                                   λg.<mk-hdf, select_fun_ap(g;m 1;m)>1))))))
BY
(Auto
   THEN ProcTransRepUR ``hdf-compose1 so_apply`` 0
   THEN (LiftAll THEN Reduce 0)
   THEN SqequalSqle
   THEN (OneFixpointLeast
         THEN RepeatFor (MoveToConcl (-3))
         THEN NatInd (-1)
         THEN ((UnivCD THENA Auto) THEN (Reduce THEN Strictness THEN Try (Complete (Auto)))⋅)
         THEN (RWO "fun_exp_unroll" THENA Auto)
         THEN AutoSplit)⋅}

1
1. : ℕ
2. : ℤ
3. j ≠ 0
4. 0 < j
5. ∀f,L,G:Top.
     mk-hdf,s0. case s0 of inl(y) => inl a.let X',bs in let out ⟵ bag-map(f;bs) in <mk-hdf X', out>inr(y)\000C => inr ⋅ ^j 1 ⊥ 
      fix((λmk-hdf.(inl a.cbva_seq(L a; λg.<mk-hdf, g>m))))) 
      ≤ fix((λmk-hdf.(inl a.cbva_seq(λn.if n=m  then mk_lambdas_fun(λg.bag-map(f;G g);m)  else (L n);
                                       λg.<mk-hdf, select_fun_ap(g;m 1;m)>1))))))
6. Top@i
7. Top@i
8. Top@i
⊢ inl a.let X',bs cbva_seq(L a; λg.<fix((λmk-hdf.(inl a.cbva_seq(L a; λg.<mk-hdf, g>m))))), g>m) 
          in let out ⟵ bag-map(f;bs)
             in <λmk-hdf,s0. case s0
                             of inl(y) =>
                             inl a.let X',bs 
                                     in let out ⟵ bag-map(f;bs)
                                        in <mk-hdf X', out>)
                             inr(y) =>
                             inr ⋅ ^j 
                 ⊥ 
                 X'
                out
                >) ≤ fix((λmk-hdf.(inl a.cbva_seq(λn.if n=m  then mk_lambdas_fun(λg.bag-map(f;G g);m)  else (L n);
                                                 λg.<mk-hdf, select_fun_ap(g;m 1;m)>1)))))

2
1. : ℕ
2. : ℤ
3. j ≠ 0
4. 0 < j
5. ∀f,L,G:Top.
     mk-hdf.(inl a.cbva_seq(λn.if n=m  then mk_lambdas_fun(λg.bag-map(f;G g);m)  else (L n);
                                λg.<mk-hdf, select_fun_ap(g;m 1;m)>1)))^j 
      ⊥ ≤ fix((λmk-hdf,s0. case s0 of inl(y) => inl a.let X',bs in let out ⟵ bag-map(f;bs) in <mk-hdf X', out>)\000C inr(y) => inr ⋅ )) 
          fix((λmk-hdf.(inl a.cbva_seq(L a; λg.<mk-hdf, g>m))))))
6. Top@i
7. Top@i
8. Top@i
⊢ inl a.cbva_seq(λn.if n=m  then mk_lambdas_fun(λg.bag-map(f;G g);m)  else (L n);
                   λg.<λmk-hdf.(inl a.cbva_seq(λn.if n=m  then mk_lambdas_fun(λg.bag-map(f;G g);m)  else (L n);
                                                 λg.<mk-hdf, select_fun_ap(g;m 1;m)>1)))^j 
                       ⊥
                      select_fun_ap(g;m 1;m)
                      >1)) ≤ fix((λmk-hdf,s0. case s0
                                                    of inl(y) =>
                                                    inl a.let X',bs 
                                                            in let out ⟵ bag-map(f;bs)
                                                               in <mk-hdf X', out>)
                                                    inr(y) =>
                                                    inr ⋅ )) 
                                   fix((λmk-hdf.(inl a.cbva_seq(L a; λg.<mk-hdf, g>m)))))


Latex:


Latex:
\mforall{}[f,L,G:Top].  \mforall{}[m:\mBbbN{}].
    (f  o  fix((\mlambda{}mk-hdf.(inl  (\mlambda{}a.cbva\_seq(L[a];  \mlambda{}g.<mk-hdf,  G[a;g]>  m))))) 
    \msim{}  fix((\mlambda{}mk-hdf.(inl  (\mlambda{}a.cbva\_seq(\mlambda{}n.if  (n  =\msubz{}  m)
                                                                            then  mk\_lambdas\_fun(\mlambda{}g.bag-map(f;G[a;g]);m)
                                                                            else  L[a]  n
                                                                            fi  ;  \mlambda{}g.<mk-hdf,  select\_fun\_ap(g;m  +  1;m)>  m  +  1))))))


By


Latex:
(Auto
  THEN  ProcTransRepUR  ``hdf-compose1  so\_apply``  0
  THEN  (LiftAll  0  THEN  Reduce  0)
  THEN  SqequalSqle
  THEN  (OneFixpointLeast
              THEN  RepeatFor  3  (MoveToConcl  (-3))
              THEN  NatInd  (-1)
              THEN  ((UnivCD  THENA  Auto)  THEN  (Reduce  0  THEN  Strictness  THEN  Try  (Complete  (Auto)))\mcdot{})
              THEN  (RWO  "fun\_exp\_unroll"  0  THENA  Auto)
              THEN  AutoSplit)\mcdot{})




Home Index