143 research outputs found

    An analysis and implementation of linear derivation strategies

    Get PDF
    This study examines the efficacy of six linear derivation strategies: (i) s-linear resolution, (ii) the ME procedure; (iii) t-linear resolution, (iv) SL -resolution, (v) the GC procedure, and (vi) SLM. The analysis is focused on the different restrictions and operations employed in each derivation strategy. The selection function, restrictive ancestor resolution, compulsory ancestor resolution on literals having atoms which are or become identical, compulsory merging operations, reuse of truncated literals, spreading of FALSE literals, no-tautologies resection, no two non-B-literals having identical atoms restriction, and the use of semantic information to trim irrelevant derivations from the search tree are the major features found In these six derivation strategies. Detecting loops and minimizing irrelevant derivations are the identified weak points of SLM. Two variations of SLM are suggested to rectify these problems. The ME procedure, SL-resolution, the GC procedure, SLM and one of the suggested variations of SLM were implemented using the Arity/Prolog compiler to produce the ME -TP, SL-TP, GC-TP, SLM-TP and SLM5-TP theorem provers respectively. In addition to the original features of each derivation strategy, the following search strategies were included in the implementations : the modified consecutively bounded depth-first search unit preference strategy, set of support strategy, pure literal elimination, tautologous clause elimination, selection function based on the computed weight of a literal, and a match check. The extension operation used by each theorem prover was extended to include subsumed unit extension and paramodulation. The performance of each theorem prover was determined. Experimental results were obtained using twenty four selected problems. The performance was measured in terms of the memory use and the execution time. A comparison of results between the five theorem provers using the, ME-TP as the basis was done. The results show that none of the theorem provers, consistently perform better than the others. Two of the selected problems were not proved by SL-TP and one problem was not proved by SLM-TP due to memory problems. The ME-TP, GC-TP and SLM5-TP proved all the selected problems. In some problems, the ME-TP and GC-TP performed better than SLM5-TP. However, the ME-TP and GC-TP had difficulties in some problems in which SLM5-TP performed well

    PrologPF: Parallel Logic and Functions on the Delphi Machine

    Get PDF
    PrologPF is a parallelising compiler targeting a distributed system of general purpose workstations connected by a relatively low performance network. The source language extends standard Prolog with the integration of higher-order functions. The execution of a compiled PrologPF program proceeds in a similar manner to standard Prolog, but uses oracles in one of two modes. An oracle represents the sequence of clauses used to reach a given point in the problem search tree, and the same PrologPF executable can be used to build oracles, or follow oracles previously generated. The parallelisation strategy used by PrologPF proceeds in two phases, which this research shows can be interleaved. An initial phase searches the problem tree to a limited depth, recording the discovered incomplete paths. In the second phase these paths are allocated to the available processors in the network. Each processor follows its assigned paths and fully searches the referenced subtree, sending solutions back to a control processor. This research investigates the use of the technique with a one-time partitioning of the problem and no further scheduling communication, and with the recursive application of the partitioning technique to effect dynamic work reassignment. For a problem requiring all solutions to be found, execution completes when all the distributed processors have completed the search of their assigned subtrees. If one solution is required, the execution of all the path processors is terminated when the control processor receives the first solution. The presence of the extra-logical Prolog predicate cut in the user program conflicts with the use of oracles to represent valid open subtrees. PrologPF promotes the use of higher-order functional programming as an alternative to the use of cut. The combined language shows that functional support can be added as a consistent extension to standard Prolog

    Extracting proofs from documents

    Get PDF
    Often, theorem checkers like PVS are used to check an existing proof, which is part of some document. Since there is a large difference between the notations used in the documents and the notations used in the theorem checkers, it is usually a laborious task to convert an existing proof into a format which can be checked by a machine. In the system that we propose, the author is assisted in the process of converting an existing proof into the PVS language and having it checked by PVS. 1 Introduction The now-classic ALGOL 60 report [5] recognized three different levels of language: a reference language, a publication language and several hardware representations, whereby the publication language was intended to admit variations on the reference language and was to be used for stating and communicating processes. The importance of publication language ---often referred to nowadays as "pseudo-code"--- is difficult to exaggerate since a publication language is the most effective way..

    A Classification Approach for Automated Reasoning Systems--A Case Study in Graph Theory

    Get PDF
    Reasoning systems which create classifications of structured objects face the problem of how object descriptions can be used to reflect their components as well as relations among these components. Current reasoning systems on graph theory do not adequately provide models to discover complex relations among mathematical concepts (eg: relations involving subgraphs) mainly due to the inability to solve this problem. This thesis presents an approach to construct a knowledge-based system, GC (Graph Classification), which overcomes this difficulty in performing automated reasoning in graph theory. We describe graph concepts based on an attribute called Linear Recursive Constructivity (LRC). LRC defines classes by an algebraic formula supported by background knowledge of graph types. We use subsumption checking on decomposed algebraic expressions of graph classes as a major proof method. The search is guided by case-split-based inferencing. Using the approach GC has generated proofs for many theorems such as any two distinct cycles (closed paths) having a common edge e contain a cycle not traversing e , if cycle C1 contains edges e1, e2, and cycle C2 contains edges e2, e3, then there exists a cycle that contains e1 and e3 and the union of a tree and a path is a tree if they have only a single common vertex. The main contributions of this thesis are: (1) Development of a classification-based knowledge representation and a reasoning approach for graph concepts, thus providing a simple model for structured mathematical objects. (2) Development of an algebraic theory for simplifying and decomposing graph concepts. (3) Development of a proof search and a case-splitting technique with the guidance of graph type knowledge. (4) Development of a proving mechanism that can be generate constructive proofs by manipulating only simple linear formalization of theorems

    Proceedings of the Workshop on Change of Representation and Problem Reformulation

    Get PDF
    The proceedings of the third Workshop on Change of representation and Problem Reformulation is presented. In contrast to the first two workshops, this workshop was focused on analytic or knowledge-based approaches, as opposed to statistical or empirical approaches called 'constructive induction'. The organizing committee believes that there is a potential for combining analytic and inductive approaches at a future date. However, it became apparent at the previous two workshops that the communities pursuing these different approaches are currently interested in largely non-overlapping issues. The constructive induction community has been holding its own workshops, principally in conjunction with the machine learning conference. While this workshop is more focused on analytic approaches, the organizing committee has made an effort to include more application domains. We have greatly expanded from the origins in the machine learning community. Participants in this workshop come from the full spectrum of AI application domains including planning, qualitative physics, software engineering, knowledge representation, and machine learning
    • …
    corecore