What is "prolog"

Prolog is a programming language that fits the paradigm of Programming in Mathematical Logic. It is a general-purpose language that is especially associated with artificial intelligence and computational linguistics. It consists of a purely logical language, which can be called pure Prolog, and a concrete language, which adds pure Prolog with extra-logical components.

Pure Prolog use was originally restricted in proofs of the resolution theorem with Horn clauses.

H :- B1, …, Bn..

Theorem prover application treats these clauses as procedures for showing/solving H, show/resolve B1 and ... and Bn.

Pure Prolog was then extended to include negation by failure, in which negative conditions of the form not(Bi) are shown by trial and failure to resolve the corresponding positive conditions Bi).

The name Prolog for concrete language was chosen by Philippe Roussel as an abbreviation of "Programmation en Logique". It was created in mid-1972 by Alain Colmerauer and Philippe Roussel, based on Robert Kowalski’s concept of the procedural interpretation of the Horn clauses. The motivation for this came in part from the desire to reconcile the use of logic as a declarative language of knowledge representation with the procedural representation of knowledge, which was popular in North America in the late 1960s to early 1970s.

Much of the modern development of Prolog came from fifth generation computer designs (FGCS), which developed a variant of Prolog called Kernel Language for its first operating system.

Source: Prolog - Wikipedia