A Prototype Theorem Prover with Variable Splitting Christian Mahesh Hansen and Martin Giese Department of Informatics, University of Oslo chrisha@ifi.uio.no, martingi@ifi.uio.no Abstract. The variable splitting method for free-variable calculi pro- vides an admissibility condition under which the same free variables can be assigned values independently on different branches. We present a prototype theorem prover which combines the incremental closure frame- work for free variables with variable splitting tableaux by treating the admissibility condition for closing substitutions as a constraint satisfac- tion problem. The resulting mechanism allows to check the existence of an admissible closing substitution incrementally during the construction of a proof. We explain the main algorithms and data structures of the prover, and state experimental results from TPTP library problems. 1 Introduction In free-variable tableau calculi, free variables are introduced as place-holders when expanding universal formulas in order to postpone the choice of an in- stantiation, see e.g. [4]. The expansion of disjunctive formulas splits a proof into several branches, and the same free variable can occur on more than one branch. Antonsen and Waaler [1,2] have arrived at an admissibility condition for substi- tutions that, in some cases, permits to instantiate a free variable differently on different branches. Such divergent instantiation is referred to as variable split- ting. Unfortunately, this admissibility condition is not immediately suitable for implementation. We show in [7] how to combine the variable splitting technique with the incremental closure approach proposed by Giese [5]. The idea of incremental closure is to keep track of the set of closing substitutions for every subderivation during proof search, and updating this information whenever a new connection is found. Syntactic unification constraints are used to represent sets of substitu- tions. In [7], the constraint language of [5] is extended to permit expressing the admissibility condition for variable splitting substitutions as a constraint satis- faction problem and the incremental constraint calculations of [5] are adapted to accommodate the index bookkeeping of the variable splitting calculus. In this paper, we present a description of the first implementation of a variable splitting theorem prover 1 . We focus on the data structures and algorithms that are novel for the variable splitting technique, as well as the proof procedure and 1 The system can be downloaded at http://heim.ifi.uio.no/chrisha/prover/.