HackerPapers

arXiv:0904.3036cs.LO

Inconsistency Robustness in Logic Programs

Carl Hewitt

Abstract

Inconsistency robustness is "information system performance in the face of continually pervasive inconsistencies." A fundamental principle of Inconsistency Robustness is to make contradictions explicit so that arguments for and against propositions can be formalized. This paper explores the role of Inconsistency Robustness in the history and theory of Logic Programs. Robert Kowalski put forward a bold thesis: "Looking back on our early discoveries, I value most the discovery that computation could be subsumed by deduction." However, mathematical logic cannot always infer computational steps because computational systems make use of arbitration for determining which message is processed next by a recipient that is sent multiple messages concurrently. Since reception orders are in general indeterminate, they cannot be inferred from prior information by mathematical logic alone. Therefore mathematical logic cannot in general implement computation. Over the course of history, the term "Functional Program" has grown more precise and technical as the field has matured. "Logic Program" should be on a similar trajectory. Accordingly, "Logic Program" should have a general precise characterization. In the fall of 1972, different characterizations of Logic Programs that have continued to this day: * A Logic Program uses Horn-Clause syntax for forward and backward chaining * Each computational step (according to Actor Model) of a Logic Program is deductively inferred (e.g. in Direct Logic). The above examples are illustrative of how issues of inconsistency robustness have repeatedly arisen in Logic Programs.

arXiv comments
Limits of Classical Logic
Journal reference
DOI
Subjects
cs.LOLogic in Computer Science

On Hacker News

Linked by 4 identifiable commenters in 5 comments across 2 threads, from Feb 2021 to Jan 2025.

Comments linking this paper, per year.

Discussed in comments2 threads

  1. Do Files want to be Actors? 1 comment
    • It mentions the names of message-passing and the well-known actors model, but the ideas it engages with are the ideas of io_uring, which is a system for asynchronous I/O using a message queue. The two designs are not unrelated, and you could write an interesting post exploring…

      kragenView on HNParent context

    • As Kowalski has acknowledged and reported by others, Prolog was invented as a subset of Planner that only implemented backward chaining. See the following for further information: "Middle History of Logic Programming: Resolution, Planner, Prolog and the Japanese Fifth Generation…

      ProfHewittView on HNParent context

    • Thank you very much for helping me find this paper, but I am still somewhat confused. When I couldn't find the paper in arxiv, it didn't occur me at first to go back to the beginning and use a general search engine. When I did plug the title into DDG it took me to arxiv, which…

      inetseeView on HNParent context

    • thats interesting, one slightly different link i found was https://arxiv.org/pdf/0904.3036.pdf seems like your link is versioned (v22) and the one i found was unversioned... i wonder which one is the latest...?

      andrekandreView on HNParent context

    • Thanks Tom! Being a linguist of note, Colmerauer evidently didn't know (or didn't want to admit) that Kowalski had been carefully studying Planner and Shrdlu (Winograd's Phd thesis based on Planner) for quite a while in Edinburgh, where he felt quite in the minority defending…

      ProfHewittView on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.