An algorithm for deciding validity in the intuitionistic propositional calculus is presented, together with source code in Quintus Prolog and some test data. The algorithm is based on an analysis of the use of contraction in the intuitionistic propositional sequent calculus, and also includes the techniques of "or-locking", "implication gathering", and "irrelevance checking".
Original report number R87010B.