Step * of Lemma hdf-compose0-transformation2

[f,L,G:Top]. ∀[m:ℕ].
  (hdf-compose0(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.⋃b∈G[a;g].f b;m) else L[a] fi ;
                                   λg.<mk-hdf, select_fun_ap(g;m 1;m)>1))))))
BY
(Auto
   THEN ProcTransRepUR ``hdf-compose0 so_apply`` 0
   THEN (LiftAll THEN Reduce 0)
   THEN Refine `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 ⟵ ⋃b∈bs.f in <mk-hdf X', out>inr(y) => \000Cinr ⋅ ^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.⋃b∈g.f b;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 ⟵ ⋃b∈bs.f b
             in <λmk-hdf,s0. case s0 of inl(y) => inl a.let X',bs in let out ⟵ ⋃b∈bs.f in <mk-hdf X', out>|\000C inr(y) => inr ⋅ ^j 1 ⊥ X', out>
  ≤ fix((λmk-hdf.(inl a.cbva_seq(λn.if n=m  then mk_lambdas_fun(λg.⋃b∈g.f b;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.⋃b∈g.f b;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 ⟵ ⋃b∈bs.f in <mk-hdf X', out>i\000Cnr(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.⋃b∈g.f b;m)  else (L n);
                   λg.<λmk-hdf.(inl a.cbva_seq(λn.if n=m  then mk_lambdas_fun(λg.⋃b∈g.f b;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 ⟵ ⋃b∈bs.f b
                                                               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{}].
    (hdf-compose0(f;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.\mcup{}b\mmember{}G[a;g].f  b;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-compose0  so\_apply``  0
  THEN  (LiftAll  0  THEN  Reduce  0)
  THEN  Refine  `sqequalSqle`  []
  THEN  OneFixpointLeast
  THEN  RepeatFor  3  (MoveToConcl  (-3))
  THEN  NatInd  (-1)
  THEN  (UnivCD  THENA  Auto)
  THEN  (Reduce  0  THEN  Strictness  THEN  Try  (Complete  (Auto)))
  THEN  (RWO  "fun\_exp\_unroll"  0  THENA  Auto)
  THEN  AutoSplit)




Home Index