Step
*
of Lemma
mk_lambdas_fun-unroll-first
∀[F:Top]. ∀[m:ℕ+].  (mk_lambdas_fun(F;m) ~ λx.mk_lambdas_fun(λg.(F (λf.(g (f x))));m - 1))
BY
{ (Auto
   THEN RepUR ``mk_lambdas_fun`` 0
   THEN (InstLemma `mk_lambdas-fun-unroll-first` [⌜F⌝;⌜λx.x⌝;⌜m⌝;⌜0⌝]⋅ THENA Auto)
   THEN RepUR ``mk_applies`` (-1)
   THEN RWO "-1" 0
   THEN MemCD
   THEN (Subst ⌜λx1.(x1 x) ~ λx1.mk_applies(x1;λi.x;1 + 0)⌝ 0⋅ THENA (RepUR ``mk_applies`` 0 THEN Auto))
   THEN (RWO "mk_lambdas-fun-shift-init" 0 THENA Auto)
   THEN Reduce 0
   THEN RepUR ``mk_applies`` 0
   THEN Auto) }
Latex:
Latex:
\mforall{}[F:Top].  \mforall{}[m:\mBbbN{}\msupplus{}].    (mk\_lambdas\_fun(F;m)  \msim{}  \mlambda{}x.mk\_lambdas\_fun(\mlambda{}g.(F  (\mlambda{}f.(g  (f  x))));m  -  1))
By
Latex:
(Auto
  THEN  RepUR  ``mk\_lambdas\_fun``  0
  THEN  (InstLemma  `mk\_lambdas-fun-unroll-first`  [\mkleeneopen{}F\mkleeneclose{};\mkleeneopen{}\mlambda{}x.x\mkleeneclose{};\mkleeneopen{}m\mkleeneclose{};\mkleeneopen{}0\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  RepUR  ``mk\_applies``  (-1)
  THEN  RWO  "-1"  0
  THEN  MemCD
  THEN  (Subst  \mkleeneopen{}\mlambda{}x1.(x1  x)  \msim{}  \mlambda{}x1.mk\_applies(x1;\mlambda{}i.x;1  +  0)\mkleeneclose{}  0\mcdot{}
              THENA  (RepUR  ``mk\_applies``  0  THEN  Auto)
              )
  THEN  (RWO  "mk\_lambdas-fun-shift-init"  0  THENA  Auto)
  THEN  Reduce  0
  THEN  RepUR  ``mk\_applies``  0
  THEN  Auto)
Home
Index