2 research outputs found

    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

    Incremental parsing algorithms for speech-editing mathematics and computer code

    Get PDF
    The provision of speech control for editing plain language text has existed for a long time, but does not extend to structured content such as mathematics. The requirements of a user interface for a spoken mathematics editor are explored through the lens of an intuitive natural user interface (NUI) for speech control, the desired properties of which are based on a combination of existing literature on NUIs and intuitive user interfaces. An important aspect of an intuitive NUI is timely update of display of the content in response to editing actions. This is not feasible using batch parsing alone, and this issue will be more serious for larger documents such as computer program code. The solution is an incremental parser designed to work with operator precedence (OP) grammars. The contribution to knowledge provided by this thesis is to improve the efficiency in terms of processing time, of the OP incremental parsing algorithm developed by Heeman, and extend it to handle the distfix (mixfix) operators described by Attanayake to model brackets and mathematical functions. This is implemented successfully for the TalkMaths system and shows a greatly reduced response time compared with using batch scanning and parsing alone. The author is not aware of any other incremental OP parser that handles such operators. Furthermore, a proposal is made for modifications to the data structures produced by Attanayake's parser, along with appropriate adjustments to the incremental parser, that will in the future, facilitate application of OP grammar to program code or other structured content by changing the definition of its content language
    corecore