Knowledge Representation using Logic

The aim of this section is to show how logic can be used to form representations of the world and how a process of inference can be used to derive new representations about the world and how these can be used by an intelligent agent to deduce what to do.

We require:

Why logic?

The challenge is to design a language which allows one to represent all the necessary knowledge. We need to be able to make statements about the world such as describing things - people, houses, theories etc; relations between things and properties of things.

Logic makes statements about the world which are true (or false) if the state of affairs it represents is the case (or not the case). Compared to natural languages (expressive but context sensitive) and programming languages (good for concrete data structures but not expressive) logic combines the advantages of natural languages and formal languages. Logic is:

A logic is defined by the following:

  1. Syntax - describes the possible configurations that constitute sentences.
  2. Semantics - determines what facts in the world the sentences refer to i.e. the interpretation. Each sentence makes a claim about the world.
  3. Proof theory - set of rules for generating new sentences that are necessarily true given that the old sentences are true. The relationship between sentences is called entailment. The semantics link these sentences (representation) to facts of the world. The proof can be used to determine new facts which follow from the old.

We will consider two kinds of logic: propositional logic and first-order logic or more precisely first-order predicate calculus. Propositional logic is of limited expressiveness but is useful to introduce many of the concepts of logic's syntax, semantics and inference procedures.

<<<Previous Section Next>>>