9 research outputs found

    Ars Mathematica

    Get PDF

    Proof Theory

    Get PDF

    HORNLOG: A graph-based interpreter for general Horn clauses

    Get PDF
    AbstractThis paper presents hornlog, a general Horn-clause proof procedure that can be used to interpret logic programs. The system is based on a form of graph rewriting, and on the linear-time algorithm for testing the unsatisfiability of propositional Horn formulae given by Dowling and Gallier [8]. hornlog applies to a class of logic programs which is a proper superset of the class of logic programs handled by PROLOG systems. In particular, negative Horn clauses used as assertions and queries consisting of disjunctions of negations of Horn clauses are allowed. This class of logic programs admits answers which are indefinite, in the sense that an answer can consist of a disjunction of substitutions. The method does not use the negation-by- failure semantics [6] in handling these extensions and appears to have an immediate parallel interpretation

    Theorem Proving Using Equational Matings and Rigid E-Unifications

    Get PDF
    In this paper, it is shown that the method of matings due to Andrews and Bibel can be extended to (first-order) languages with equality. A decidable version of E-unification called rigid E-unification is introduced, and it is shown that the method of equational matings remains complete when used in conjunction with rigid E-unification. Checking that a family of mated sets is an equational mating is equivalent to the following restricted kind of E-unification. Problem: Given →/E = {Ei | 1 ≤ i ≤ n} a family of n finite sets of equations and S = {〈ui, vi〉 | 1 ≤ i ≤ n} a set of n pairs of terms, is there a substitution θ such that, treating each set θ(Ei) as a set of ground equations (i.e. holding the variables in θ(Ei) rigid ), θ(ui) and θ(vi) are provably equal from θ(Ei) for i = 1, ... ,n? Equivalently, is there a substitution θ such that θ(ui) and θ(vi) can be shown congruent from θ(Ei) by the congruence closure method for i 1, ... , n? A substitution θ solving the above problem is called a rigid →/E-unifier of S, and a pair (→/E, S) such that S has some rigid →/E-unifier is called an equational premating. It is shown that deciding whether a pair 〈→/E, S〉 is an equational premating is an NP-complete problem
    corecore