Problem:
 U31(tt()) -> N
 U41(tt()) -> s(plus(N,M))
 and(tt()) -> X
 U11(tt()) -> U12(isNat())
 U12(tt()) -> U13(isNat())
 U13(tt()) -> tt()
 U21(tt()) -> U22(isNat())
 U22(tt()) -> tt()
 isNat() -> tt()
 isNat() -> U11(and(isNatKind()))
 isNat() -> U21(isNatKind())
 isNatKind() -> tt()
 isNatKind() -> and(isNatKind())
 isNatKind() -> isNatKind()
 plus(N,0()) -> U31(and(isNat()))
 plus(N,s(M)) -> U41(and(and(isNat())))

Proof:
 Fresh Variable Processor: loop length: 1
                           terms:
                            U31(tt())
                           context: []
                           substitution:
                            N -> U31(tt())
  Qed