Step * of Lemma primrec-as-fix

[n,b,c:Top].  (primrec(n;b;c) fix((λp,n. if (n) < (1)  then b  else (c (n 1) (p (n 1))))) n)
BY
(Auto
   THEN (Assert ∀n:ℕ. ∀[b,c:Top].  (primrec(n;b;c) fix((λp,n. if (n) < (1)  then b  else (c (n 1) (p (n 1))))) n) \000CBY
               ((InductionOnNat THEN Reduce THEN Auto)
                THENL [ByComputation 10
                      ((RWO "primrec-unroll" THENA Auto)
                         THEN AutoSplit
                         THEN RW (AddrC [2;1] UnrollRecursionC) 0
                         THEN Reduce 0
                         THEN Auto)]
               ))
   }

1
1. Top
2. Top
3. Top
4. ∀n:ℕ. ∀[b,c:Top].  (primrec(n;b;c) fix((λp,n. if (n) < (1)  then b  else (c (n 1) (p (n 1))))) n)
⊢ primrec(n;b;c) fix((λp,n. if (n) < (1)  then b  else (c (n 1) (p (n 1))))) n


Latex:


Latex:
\mforall{}[n,b,c:Top].    (primrec(n;b;c)  \msim{}  fix((\mlambda{}p,n.  if  (n)  <  (1)    then  b    else  (c  (n  -  1)  (p  (n  -  1)))))  n)


By


Latex:
(Auto
  THEN  (Assert  \mforall{}n:\mBbbN{}
                                \mforall{}[b,c:Top].
                                    (primrec(n;b;c)  \msim{}  fix((\mlambda{}p,n.  if  (n)  <  (1)    then  b    else  (c  (n  -  1)  (p  (n  -  1))))) 
                                                                        n)  BY
                          ((InductionOnNat  THEN  Reduce  0  THEN  Auto)
                            THENL  [ByComputation  10
                                        ;  ((RWO  "primrec-unroll"  0  THENA  Auto)
                                              THEN  AutoSplit
                                              THEN  RW  (AddrC  [2;1]  UnrollRecursionC)  0
                                              THEN  Reduce  0
                                              THEN  Auto)]
                          ))
  )




Home Index