Annals of Mathematics and Artificial Intelligence 23 (1998) 247–266 247 Heuristics used by HERBY for semantic tree theorem proving Qingxun Yu a , Mohammed Almulla b and Monroe Newborn a a School of Computer Science, McGill University, Montreal, PQ, Canada H3A 2A7 E-mail: {qingxun;newborn}@cs.mcgill.ca b Department of Mathematics and Computer Science, Kuwait University, Kuwait E-mail: almulla@sci.kuniv.edu.kw This paper describes a number of heuristics that have been implemented in a program that proves theorems by constructing closed semantic trees. The program is called HERBY. We studied the effectiveness of these heuristics on the Stickel Test Set and found that when HERBY was given two hours to prove each theorem, it was able to prove 78 of the 84 theorems in the set. Constructing semantic trees has been used as a theoretical tool for confirming the unsatisfiability of a set of clauses in first-order predicate calculus; this paper shows that this approach has some practicality as well. 1. Introduction Constructing semantic trees is a well-known theoretical tool for confirming the unsatisfiability of sets of clauses in first-order predicate calculus [3–5,12]. However, it has seemed impractical to use this approach to prove theorems of any significant size [2,5,7,8]. To study just how impractical it is, we implemented a semantic tree theorem prover called HERBY. We developed a number of heuristics for choosing Herbrand base atoms in an effective order, and we measured the performance of the resulting program on the 84 theorems of the Stickel Test Set [13]. The results obtained are summarized in table 1. In table 2, we compare the results with those reported for other theorem provers [6,9]. HERBY is written in C, and the results reported here were obtained using a SUN SPARC 20 computer. This paper is organized as follows. Section 2 describes Herbrand’s theorem and how to construct a semantic tree. Sections 3 and 4 describe heuristics in HERBY that permit most of the theorems of the Stickel Test Set to be proved. Section 5 presents the results of experiments carried out and some observations. 2. Herbrand’s theorem and constructing semantic trees Familiarity with the basic concepts of automated theorem proving can be found in [10,11]. In this section, definitions related to constructing semantic trees are pre- J.C. Baltzer AG, Science Publishers