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)
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 "logic programming, 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 ...
... 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 ...
... His research is in the field of logic programming and in knowledge representation, reasoning and cognitive science more generally ... 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 ...
... See also #Software engineering and #Computer architecture Conferences on programming languages and compilers POPL - Symposium on Principles of Programming Languages PLDI - ACM SIGPLAN ... JICSLP - "Joint International Conference and Symposium on Logic Programming" ICFP - International Conference on Functional Programming CGO - International Symposium on Code ...
... 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 first to exploit 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 drivers 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)
“seizing the swift logic of a woman,
Curse God and die.”
—Edwin Arlington Robinson (18691935)