The Essence of Artificial Intelligence
Chapter 2.1: Knowledge Representation and Inference
Top Ten Salient Sentences:
1. "One of the assumptions underlying most work in artificial intelligence is that intelligent
behaviour can be achieved through the manipulation of symbol structures representing bits of
knowledge." 2. "To solve an AI problem we first have to work out how to represent the real world knowledge
using our representation language. Then our AI program churns away, inferring new facts and
coming to some conclusions." 3. "A knowledge representation language must support inference. We can’t represent explicitly
represent everything that the system might ever need to know – some things should be left
implicit, to be deduced by the system as and when needed in problem solving." 4. "The ability to represent adequately complex facts is referred to as the representational
adequacy of a language. Some facts are hard to represent. Or to be more precise, some facts
are hard to represent in a way that allows those facts to be reasoned with." 5. "The most important knowledge representation language is arguably predicate logic. Predicate
logic allows us to represent fairly complex facts about the world, and to derive new facts in a
way that guarantees that if the initial facts are true, so are the conclusions. It is a well
understood formal language, with well defined syntax, semantics, and rules of inference." 6. "Predicate logic provides a powerful way to represent and reason with knowledge. Some things
that cannot be easily represented with frames, such as negation, disjunction, and quantification,
are easily represented with predicate logic. The available inference rules and proof procedures
mean that a much wider range of inference rules are possible than the simple inheritance-based
inference allowed in a frame system." 7. "A common feature of all the approaches is that the problem-specific rules and facts are
represented separately from the more general problem-solving and inference procedures used to
reason with these. It should be possible to modify a system, or write a system to solve a related
problem, without ever modifying the problem-solving or inference methods." 8. "Within AI, logic is used not just as a knowledge representation language, but also: to
communicate AI theories within the community, as the basis of AI programming languages, to
give the meaning of natural language sentences in a natural language understanding system, and
to define the semantics of other simpler representation languages." 9. "Representing and reasoning with anything that involves time, beliefs or uncertainty is hard in
predicate logic. There are special logics such as temporal and modal logics, which allow such things
to be represented, but reasoning in such logics may not be efficient." 10. "Condition-action rules are widely used in expert systems, providing a fairly flexible way of
representing expert knowledge and efficient techniques for reasoning with this knowledge."