Step
*
of Lemma
hdf-sqequal2
∀[F,G,H:Top].
  (fix((λmk-hdf,s0. case s0 of inl(y) => inl (λa.let X',bs = y a in let out ←─ G[bs] in <mk-hdf X', out>) | inr(z) => H[\000Cz])) 
   fix((λmk-hdf.(inl (λm.<mk-hdf, F[m]>)))) ~ fix((λmk-hdf.(inl (λa.let out ←─ G[F[a]]
                                                                    in <mk-hdf, out>)))))
BY
{ (Auto
   THEN SqequalInductionUsing' UnrollLoopsOnce⋅
   THEN Auto
   THEN SqequalNNonCanonicalCD⋅
   THEN Try (Complete (Auto))
   THEN SqequalNCanonicalCD⋅
   THEN Auto
   THEN BackThruSomeHyp⋅
   THEN Auto) }
Latex:
\mforall{}[F,G,H:Top].
    (fix((\mlambda{}mk-hdf,s0.  case  s0
                                        of  inl(y)  =>
                                        inl  (\mlambda{}a.let  X',bs  =  y  a 
                                                        in  let  out  \mleftarrow{}{}  G[bs]
                                                              in  <mk-hdf  X',  out>)
                                        |  inr(z)  =>
                                        H[z])) 
      fix((\mlambda{}mk-hdf.(inl  (\mlambda{}m.<mk-hdf,  F[m]>))))  \msim{}  fix((\mlambda{}mk-hdf.(inl  (\mlambda{}a.let  out  \mleftarrow{}{}  G[F[a]]
                                                                                                                                        in  <mk-hdf,  out>)))))
By
(Auto
  THEN  SqequalInductionUsing'  UnrollLoopsOnce\mcdot{}
  THEN  Auto
  THEN  SqequalNNonCanonicalCD\mcdot{}
  THEN  Try  (Complete  (Auto))
  THEN  SqequalNCanonicalCD\mcdot{}
  THEN  Auto
  THEN  BackThruSomeHyp\mcdot{}
  THEN  Auto)
Home
Index