Definition checkPrf (f p : nat) : nat :=
  switchPR (wellFormedFormula f) (checkPrfHelp (cPair f p)) 0.

(* Specifications: *)
Lemma checkPrfIsPR : isPR 2 checkPrf.
Lemma checkPrfCorrect1 : forall (l : list Formula) (f : Formula) (p : Prf l f), checkPrf (codeFormula L codeF codeR f) (codePrf L codeF codeR l f p) = S (codeList (map (codeFormula L codeF codeR) l)).
Lemma checkPrfCorrect2 : forall n m : nat, checkPrf n m <> 0 -> exists f : Formula, codeFormula L codeF codeR f = n /\ (exists l : list Formula, (exists p : Prf l f, codePrf L codeF codeR l f p = m)).