Eliminating definitions and Skolem functions in first-order logic Summary: Eliminating definitions and Skolem functions in first-order logic JEREMY AVIGAD Carnegie Mellon University From proofs in any classical first-order theory that proves the existence of at least two elements, one can eliminate definitions in polynomial time. From proofs in any classical first-order theory strong enough to code finite functions, including sequential theories, one can also eliminate Skolem functions in polynomial time. Categories and Subject Descriptors: F.4.1 [Mathematical Logic and Formal Languages]: Mathematical Logic--Proof Theory General Terms: Algorithms, Theory Additional Key Words and Phrases: definitions, Skolem functions, proof complexity, lengths of proofs 1. INTRODUCTION When working with a first-order theory, it is often convenient to use definitions. That is, if (x) is a first-order formula with the free variables shown, one can introduce a new relation symbol R to abbreviate , with defining axiom x (R(x) (x)). Of course, this definition can later be eliminated from a proof, simply by replacing every instance of R by . But suppose the proof involves nested definitions, with a sequence of relation symbols R0, . . . , Rk abbreviating formulae Collections: Multidisciplinary Databases and Resources; Mathematics