Logic Programming can be broadly defined as “using logic to deduce computational steps from existing propositions” (although this is somewhat controversial). The focus of this article is on the development of this idea. Consequently, it does not treat any other associated topics related to Logic Programming such as constraints, abduction, etc.
The idea has a long development that went through many twists in which important questions turned out to have surprising answers including the following:
- Is computation reducible to logic?
- Are the laws of thought consistent?
Logic Programming was used as the foundation of the Japanese Fifth Generation Computing Project (ICOT) and was a principle cause of the failure of the project.
Continuation of this article can be found at the following location: Middle History of Logic Programming