12 research outputs found

    Matching, unification and complexity

    No full text

    Translation of Resolution Proofs into Short First-Order Proofs without Choice Axioms

    No full text
    We present a way of transforming a resolution proof containing Skolemization into a natural deduction proof of the same formula but not using Skolemization. The size of the proof increases only moderately (polynomially). This makes it possible to translate the output of a resolution theorem prover into a purely first-order proof that is moderate in size

    A Folding Algorithm for Eliminating Existential Variables from Constraint Logic Programs

    Get PDF
    The existential variables of a clause in a constraint logic program are the variables which occur in the body of the clause and not in its head. The elimination of these variables is a transformation technique which is often used for improving program efficiency and verifying program properties. We consider a folding transformation rule which ensures the elimination of existential variables and we propose an algorithm for applying this rule in the case where the constraints are linear inequations over rational or real numbers. The algorithm combines techniques for matching terms modulo equational theories and techniques for solving systems of linear inequations. We show that an implementation of our folding algorithm performs well in practice

    On the Complexity of Counting the Hilbert Basis of a Linear Diophantine System

    No full text
    We investigate the computational complexity of counting the Hilbert basis of a homogeneous system of linear Diophantine equations. We establish lower and upper bounds on the complexity of this problem by showing that counting the Hilbert basis is #P-hard and belongs to the class #NP. Moreover, we investigate the complexity of variants obtained by restricting the number of occurrences of the variables in the system
    corecore