392 research outputs found

    Nominal Logic Programming

    Full text link
    Nominal logic is an extension of first-order logic which provides a simple foundation for formalizing and reasoning about abstract syntax modulo consistent renaming of bound names (that is, alpha-equivalence). This article investigates logic programming based on nominal logic. We describe some typical nominal logic programs, and develop the model-theoretic, proof-theoretic, and operational semantics of such programs. Besides being of interest for ensuring the correct behavior of implementations, these results provide a rigorous foundation for techniques for analysis and reasoning about nominal logic programs, as we illustrate via examples.Comment: 46 pages; 19 page appendix; 13 figures. Revised journal submission as of July 23, 200

    Logic Programming and the INTERNET

    Get PDF
    Editorial for Theory and Practice of Logic Programming's special issue on 'Logic Programming and the INTERNET'

    Reasoning about Knowledge in Linear Logic: Modalities and Complexity

    No full text
    In a recent paper, Jean-Yves Girard commented that ”it has been a long time since philosophy has stopped intereacting with logic”[17]. Actually, it has no

    Proceedings of the Workshop on the lambda-Prolog Programming Language

    Get PDF
    The expressiveness of logic programs can be greatly increased over first-order Horn clauses through a stronger emphasis on logical connectives and by admitting various forms of higher-order quantification. The logic of hereditary Harrop formulas and the notion of uniform proof have been developed to provide a foundation for more expressive logic programming languages. The λ-Prolog language is actively being developed on top of these foundational considerations. The rich logical foundations of λ-Prolog provides it with declarative approaches to modular programming, hypothetical reasoning, higher-order programming, polymorphic typing, and meta-programming. These aspects of λ-Prolog have made it valuable as a higher-level language for the specification and implementation of programs in numerous areas, including natural language, automated reasoning, program transformation, and databases

    Recommendations for NASA research and development in artificial intelligence

    Get PDF
    Basic artificial intelligence (AI) research, AI applications, engineering, institutional management, and previously impractical missions enabled by AI are discussed

    Parsing/theorem-proving for logical grammar CatLog3

    Get PDF
    CatLog3 is a 7000 line Prolog parser/theorem-prover for logical categorial grammar. In such logical categorial grammar syntax is universal and grammar is reduced to logic: an expression is grammatical if and only if an associated logical statement is a theorem of a fixed calculus. Since the syntactic component is invariant, being the logic of the calculus, logical categorial grammar is purely lexicalist and a particular language model is defined by just a lexical dictionary. The foundational logic of continuity was established by Lambek (Am Math Mon 65:154–170, 1958) (the Lambek calculus) while a corresponding extension including also logic of discontinuity was established by Morrill and Valentín (Linguist Anal 36(1–4):167–192, 2010) (the displacement calculus). CatLog3 implements a logic including as primitive connectives the continuous (concatenation) and discontinuous (intercalation) connectives of the displacement calculus, additives, 1st order quantifiers, normal modalities, bracket modalities, and universal and existential subexponentials. In this paper we review the rules of inference for these primitive connectives and their linguistic applications, and we survey the principles of Andreoli’s focusing, and of a generalisation of van Benthem’s count-invariance, on the basis of which CatLog3 is implemented.Peer ReviewedPostprint (author's final draft

    A procedure for mediation of queries to sources in disparate contexts

    Get PDF
    Includes bibliographical references (p. 17-19).S. Bressan ... [et al.]

    Tools for the construction of correct programs : an overview

    Get PDF
    • 

    corecore