# UGCNET-AUG2016-III: 75

1 vote
1.5k views

Which formal system provides the semantic foundation for Prolog ?

1. Predicate calculus
2. Lambda calculus
3. Hoare logic
4. Propositional logic
in Others
retagged

ans should    A  Predicate calculus

Prolog is based on First Order Predicate Logic ---sometimes abbreviated to FOPL.

First order predicate logic implies the existence of a set of predicate symbols along with a set of connectives.
First order predicate logic implies that there are no means provided for "talking about'' the predicates themselves.

Prolog is based on FOPL but uses a restricted version of statements in FOPL, called Horn clause form.

• Propositional logic is an axiomatization of Boolean logic.
• Predicate logic includes propositional logic and predicates and quantifiers. It is used for making logical programming languages like prolog.
• Lambda logic is used to represent computation as a combination of functions and variables.
• Hoare logic is used to check correctness of computer program. Each calculation must be of the form PCQ where P is precondition, C is the calculation and Q is the post condition

Prolog is based on Predicate calculus

Prolog is basically a propositional logic based language.Quoted from wiki about Prolog's basis :

"Prolog has its roots in first-order logic, a formal logic, and unlike many other programming languages, Prolog is declarative: the program logic is expressed in terms of relations, represented as facts and rules. A computation is initiated by running a query over these relations".

First order logic is nothing but an extension of propositional logic by use of unviersal and existential quantifiers.

Hence D) option should be correct.

## Related questions

1
537 views
In Artificial Intelligence , a semantic network Is a graph-based method of knowledge representation where nodes represent concepts and arcs represent relations between concepts. Is a graph-based method of knowledge representation where nodes represent relations between concepts and arcs ... concepts. Represents an entity as a set of slots and associated rules. Is a subset of first-order logic.