Definition codeSysPrf :=
  codeSysPrf LNT codeLNTFunction codeLNTRelation codeArityLNTF codeArityLNTR
    codeArityLNTFIsPR codeArityLNTRIsPR (LNT2LNN_formula repT) v0.Definition codeSysPrfCorrect1 :=
  codeSysPrfCorrect1 LNT codeLNTFunction codeLNTRelation codeArityLNTF
    codeArityLNTR codeArityLNTFIsPR codeArityLNTFIsCorrect1 codeArityLNTRIsPR
    codeArityLNTRIsCorrect1 T' extendsNN T (LNT2LNN_formula repT) v0
    freeVarRepT' expressT'1.Definition codeSysPrfCorrect2 :=
  codeSysPrfCorrect2 LNT codeLNTFunction codeLNTRelation codeArityLNTF
    codeArityLNTR codeArityLNTFIsPR codeArityLNTFIsCorrect1 codeArityLNTRIsPR
    codeArityLNTRIsCorrect1 T' extendsNN T (LNT2LNN_formula repT) v0
    freeVarRepT' expressT'2.Definition codeSysPrfCorrect3 :=
  codeSysPrfCorrect3 LNT codeLNTFunction codeLNTRelation codeArityLNTF
    codeArityLNTR codeArityLNTFIsPR codeArityLNTFIsCorrect1
    codeArityLNTFIsCorrect2 codeArityLNTRIsPR codeArityLNTRIsCorrect1
    codeArityLNTRIsCorrect2 codeLNTFunctionInj codeLNTRelationInj T'
    extendsNN.Definition codePrf := codePrf LNT codeLNTFunction codeLNTRelation.Definition codeSysPrfNot :=
  codeSysPrfNot LNT codeLNTFunction codeLNTRelation codeArityLNTF
    codeArityLNTR codeArityLNTFIsPR codeArityLNTRIsPR 
    (LNT2LNN_formula repT) v0.Definition freeVarCodeSysPrfN :=
  freeVarCodeSysPrfN LNT codeLNTFunction codeLNTRelation codeArityLNTF
    codeArityLNTR codeArityLNTFIsPR codeArityLNTRIsPR 
    (LNT2LNN_formula repT) v0 freeVarRepT'.Definition codeSysPrfNCorrect1 :=
  codeSysPrfNCorrect1 LNT codeLNTFunction codeLNTRelation codeArityLNTF
    codeArityLNTR codeArityLNTFIsPR codeArityLNTFIsCorrect1 codeArityLNTRIsPR
    codeArityLNTRIsCorrect1 T' extendsNN T (LNT2LNN_formula repT) v0
    freeVarRepT' expressT'1.Definition codeSysPrfNCorrect2 :=
  codeSysPrfNCorrect2 LNT codeLNTFunction codeLNTRelation codeArityLNTF
    codeArityLNTR codeArityLNTFIsPR codeArityLNTFIsCorrect1 codeArityLNTRIsPR
    codeArityLNTRIsCorrect1 T' extendsNN T (LNT2LNN_formula repT) v0
    freeVarRepT' expressT'2.Definition codeSysPrfNCorrect3 :=
  codeSysPrfNCorrect3 LNT codeLNTFunction codeLNTRelation codeArityLNTF
    codeArityLNTR codeArityLNTFIsPR codeArityLNTFIsCorrect1
    codeArityLNTFIsCorrect2 codeArityLNTRIsPR codeArityLNTRIsCorrect1
    codeArityLNTRIsCorrect2 codeLNTFunctionInj codeLNTRelationInj T'
    extendsNN (LNT2LNN_formula repT) v0 freeVarRepT'.

(* Specifications: *)
Lemma decideAxioms : (forall x : Formula, mem _ T x \/ ~ mem _ T x) -> forall x : Formulas, (forall g : Formula, In g x -> mem _ T g) \/ (exists g : Formula, In g x /\ ~ mem _ T g).
Lemma searchProof : (forall x : Formula, mem _ T x \/ ~ mem _ T x) -> forall (a b : Formula) (A : Formulas) (p : Prf LNT A a), (exists B : Formulas, (exists q : Prf LNT B b, codePrf _ _ q < S (codePrf _ _ p) /\ (forall x : Formula, In x B -> mem _ T x))) \/ (forall (B : Formulas) (q : Prf LNT B b), codePrf _ _ q < S (codePrf _ _ p) -> exists g : Formula, In g B /\ ~ mem _ T g).
Lemma T'prf2Tprf : forall f : fol.Formula LNN, folProof.SysPrf LNN T' f -> SysPrf T (LNN2LNT_formula f).
Theorem Rosser'sIncompleteness : (forall x : Formula, mem _ T x \/ ~ mem _ T x) -> exists f : Formula, (forall v : nat, ~ In v (freeVarFormula LNT f)) /\ (SysPrf T f \/ SysPrf T (notH f) -> Inconsistent LNT T).
Theorem PAIncomplete : exists f : Formula, (Sentence f) /\ ~(SysPrf PA f \/ SysPrf PA (notH f)).