Logic Programming

Logic programming is one of the 4 main programming paradigms. Its theory of computation is based on first order logic. Programming languages such as Prolog and Datalog implement it.

A form of logical sentences commonly found in logic programming, but not exclusively, is the Horn clause. An example is:

p(X, Y) if q(X) and r(Y)

Some logic programming languages accept other logical sentences, such as the "choice" sentence in answer set programming.

Logical sentences can be understood purely declaratively. They can also be understood procedurally as goal-reduction procedures : to solve p(X, Y), first solve q(X), then solve r(Y).

The programmer can use the declarative reading of logic programs to verify their correctness. In addition, the programmer can use the known behaviour of the program executor to develop a procedural understanding of his program. This may be helpful when seeking better execution speed. However, many logically-based program transformation techniques have been developed to transform logic programs automatically and make them efficient.

Read more about Logic Programming:  History, Prolog, Negation As Failure, Problem Solving, Knowledge Representation, Abductive Logic Programming, Metalogic Programming, Constraint Logic Programming, Concurrent Logic Programming, Inductive Logic Programming, Higher-order Logic Programming, Linear Logic Programming

Other articles related to "programming, logic programming, logic":

List Of Computer Science Conferences - Programming Languages
... See also #Software engineering and #Computer architecture Conferences on programming languages and compilers POPL - Symposium on Principles of Programming Languages PLDI - ACM SIGPLAN Conference on Programming ... International Conference and Symposium on Logic Programming" ICFP - International Conference on Functional Programming CGO - International Symposium on Code Generation and Optimization ESOP ...
Linear Logic Programming
... Basing logic programming within linear logic has resulted in the design of logic programming languages that are considerably more expressive than those based on classical logic ... In linear logic programming, one can use the ambient linear logic to support state change ... Some early designs of logic programming languages based on linear logic include LO, Lolli, ACL, and Forum ...
Lateral Computing - Logical Thinking and Artificial Intelligence - Logic Programming
... The attempts to use logic programming such as prolog to represent knowledge and build artificial intelligent systems has not provided the anticipated thrust to solving interesting problems ...
Luis Moniz Pereira
... His research is in the field of logic programming and in knowledge representation, reasoning and cognitive science more generally ... association, and has been a founding member of the editorial boards of the journals of Logic Programming, Automated Reasoning, New Generation Computing, Theory and Practice of Logic ... He coordinates the Erasmus Mundus European MSc in Computational Logic at UNL, is vice-president of EASE, the European Association for semantic Web Education ...
Semmle Code - Background - Academic
... The next significant development was therefore the use of logic programming, which does allow such recursive queries, in the XL C++ Browser ... The disadvantage of using a full logic programming language is however that it is very difficult to attain acceptable efficiency ... the observation that Datalog, a very restrictive version of logic programming, is in the sweet spot between expressive power and efficiency ...

Famous quotes containing the words programming and/or logic:

    If there is a price to pay for the privilege of spending the early years of child rearing in the driver’s seat, it is our reluctance, our inability, to tolerate being demoted to the backseat. Spurred by our success in programming our children during the preschool years, we may find it difficult to forgo in later states the level of control that once afforded us so much satisfaction.
    Melinda M. Marshall (20th century)

    Our argument ... will result, not upon logic by itself—though without logic we should never have got to this point—but upon the fortunate contingent fact that people who would take this logically possible view, after they had really imagined themselves in the other man’s position, are extremely rare.
    Richard M. Hare (b. 1919)