Problem
Formalize factorial with successor; refute ¬fact(5, 120)
// Symbols: // 0 // zero // s(x) // successor // Predicates: // add(x,y,z) // x + y = z // mult(x,y,z) // x · y = z // fact(n,z) // n! = z // // Axioms (Horn-friendly): // Addition: // A1: add(X, 0, X). // A2: add(X, Y, Z) -> add(X, s(Y), s(Z)). // // Multiplication: // M1: mult(X, 0, 0). // M2: mult(X, Y, Z) ∧ add(Z, X, Z2) -> mult(X, s(Y), Z2). // // Factorial: // F1: fact(0, s(0)). // 0! = 1 // F2: fact(N, F) ∧ mult(s(N), F, Z) -> fact(s(N), Z). // // Goal (ground): fact(s⁵(0), s¹²⁰(0)). (where sⁿ(0) abbreviates n successors)
We’ll show the axioms plus the negation of the goal derive ⟂ under Resolution.