fact: Definition wellFormedFormula : nat -> nat := evalStrongRec 0 (fun f recs : nat => switchPR (cPairPi1 f) (switchPR (pred (cPairPi1 f)) (switchPR (pred (pred (cPairPi1 f))) (switchPR (pred (pred (pred (cPairPi1 f)))) (charFunction 2 Nat.eqb (codeArityR (pred (pred (pred (pred (cPairPi1 f)))))) (S (codeLength (cPairPi2 f))) * wellFormedTerms (cPairPi2 f)) (codeNth (f - S (cPairPi2 (cPairPi2 f))) recs)) (codeNth (f - S (cPairPi2 f)) recs)) (codeNth (f - S (cPairPi1 (cPairPi2 f))) recs * codeNth (f - S (cPairPi2 (cPairPi2 f))) recs)) (wellFormedTerm (cPairPi1 (cPairPi2 f)) * wellFormedTerm (cPairPi2 (cPairPi2 f)))).
imports: hydras.Ackermann(primRec cPair) Coq(Arith Lia) hydras.Ackermann(code folProp extEqualNat codeList) hydras(Compat815)