A
quick recap
After a small break in the series of AI articles with no article
appearing on diGIT magazine’s August issue, here we are again exploring the
area of knowledge representation and reasoning with respect to AI. Hope our
readers have not forgotten all the concepts which were introduced in the last
couple of articles with respect to ‘First Order Logic’ which we are going to go
in depth in today’s article. Just to give you a quick glimpse of what we
presented in the last article (which appeared in diGIT’s July 2009 issue), I
would remind you the concepts we discussed. We learnt what ‘First Order Logic’ (FOL)
also known as ‘Predicate Logic’ is in the context of representing knowledge
using logical symbols. We also learnt the syntax of FOL under two sections such
as logical symbols and non-logical symbols. The descriptions on connectives,
punctuation and variable fell in the logical symbol section while variables,
predicate symbols and function symbols belonged to the non-logical symbol section.
Then we also looked at the scope of the quantifiers such as ‘For all’
and ‘Exists’
,
where understanding of the scope is highly essential to construct as well as
interpret FOL based statements. Next we went to understand the semantics of FOL
based statements and the article consisted of various examples to give the
flavor of different interpretations of the statements. The last section also
consisted of a comparison between FOL and Propositional Logic so that you could
understand the pros and cons of each logical representation method. I hope you
would go through the previous article and refresh your memory on the above
stated concepts before going through today’s article so that you could get the
most out of it easily.
Today we are going to look at interpretations, models, reasoning
and resolution with regard to FOL which we would be discussing in the following
sections in detail.
What
is an ‘Interpretation’?
An interpretation is ‘an assignment to a variable which gives
some semantic meaning to the predicate, function or statement in concern’. For
example let’s consider a predicate as follows.
Boy(x)
Then all the possible assignments to
the variable x in the predicate Boy() are interpretations.
Further, an interpretation assigns a
denotation to all non-logical constants in the FOL language. It enables each
term to be assigned to a specific object that it represents and based on that
each sentence is assigned a truth value which gives semantic meaning to the FOL
statements. Therefore, an interpretation is extremely important with respect to
understanding and interpreting the meaning or the semantics of FOL. Interpretations
in general specifies exactly which objects, relations and functions are
referred to by the constant, predicate and function symbols respectively.
Practically, when we are defining knowledge of a certain domain using FOL, we
build up a specific set of available and useful interpretations which is known
as ‘intended interpretation’ when we possess a certain understanding of the
domain in concern. In such as case, for example if we are dealing with a domain
of a school we know that certain constants such as ‘Bill’ are the intelligent
boy where as ‘Jane’ is the smart girl. We may also know that the predicates
‘teaches’ refers to the teaching relationship between subject and teacher while
‘study’ refers to studying relationship between student and subject.