7.
Convert into conjunction of disjuncts
as we have no ANDs we will just have to use the associative property to get rid of the
brackets.
In case of ANDs we will need to use the distributive property.
We have :
~Roman(x) Ú ~know(x,Marcus) Ú hate(x,Caesar) Ú ~hate(y,z) Ú thinkcrazy(x,y)
8. Separate each conjunct into a new clause.
As we did not have ANDs in out example, this step is avoided for our example and the final
output of the conversion is :
~Roman(x) Ú ~know(x,Marcus) Ú hate(x,Caesar) Ú ~hate(y,z) Úthinkcrazy(x,y)
Unit-3:
Two-marks problem:
1. What are the limitations in using propositional logic to represent the knowledge base? May-11
Propositional logic has following limitations to represent the knowledge base.
i. It has limited expressive power.
ii. It cannot directly represent properties of individuals or relations between
individuals.
iii. Generalizations, patterns, regularities cannot easily be represented.
iv. Many rules (axioms) are requested to write so as to allow inference.
2. Name two standard quantifiers. Dec – 09,May – 13
The two standard quantifier are universal quantifiers and existential quantifier.
They are used for expressing properties of entire collection of objects rather just a single
object.
Eg. x Happy(x) means that “if the universe of discourse is people, then
everyone is happy”.
x Happy(x) means that “if the universe of discourse is people, then this
means that there is at-least one happy person.”
3. What is the purpose of unification? May – 12,Dec – 12,Dec - 09
It is for finding substitutions for inference rules, which can make different logical
expression to look identical. It helps to match to logical expressions. Therefore it is used
in many algorithm in first order logic.
[Link] is ontological commitment (what exists in the world) of first order logic? Represent the
sentence “Brothers are siblings” in first order logic? Dec - 10
Ontological commitment means what assumptions language makes about the nature if reality.
Representation of “Brothers are siblings” in first order logic is
x, y [Brother (x, y) Siblings (x, y)]
[Link] between propositional and first order predicate logic? May – 10 , Dec – 11
Following are the comparative differences versus first order logic and propositional logic.
1) Propositional logic is less expressive and do not reflect individual object`s properties
explicitly. First order logic is more expressive and can represent individual object along
with all its properties.
2) Propositional logic cannot represent relationship among objects whereas first order logic
can represent relationship.
3) Propositional logic does not consider generalization of objects where as first order logic
handles generalization.
4) Propositional logic includes sentence letters (A, B, and C) and logical connectives, but
not quantifier.
First order logic has the same connectives as propositional logic, but it also has variables
for individual objects, quantifier, symbols for functions and symbols for relations.
[Link] factors justify whether the reasoning is to be done in forward or backward reasoning?
Dec - 11
Following factors justify whether the reasoning is to be done in forward or backward
reasoning:
a. possible to begin with the start state or goal state?
b. Is there a need to justify the reasoning?
c. What kind of events trigger the problem - solving?
d. In which direction is the branching factor greatest? One should go in the
direction with lower branching factor?
7. Define diagnostic rules with example? May – 12
Diagnostics rules are used in first order logic for inference. The diagnostics rules generate
hidden causes from observed effect. They help to deduce hidden facts in the world. For
example consider the Wumpus world.
The diagnostics rule finding ‘pit’ is
“If square is breezy some adjacent square must contain pit”, which is written as, s
Breezy(s) => Adjacent (r,s) pit (r).
8. Represent the following sentence in predicate form:
“All the children like sweets” Dec – 12
x child(x) sweet(y) likes (x,y).
5. what is Skolemization? May - 13
It is the process of removing existential quantifier by elimination. It converts a sentence
with existential quantifier into a sentence without existential quantifier such that the first
sentence is satisfiable if and only if the second is.
For eliminating an existential quantifier each occurrence of its variable is replaced by a
skolem function whose argument are the variables of universal quantifier whose
argument are the variables of universal quantifier whose scope includes the scope of
existential quantifier.
6. Define the first order definite clause? Dec – 13
1) They are disjunctions of literals of which exactly one is positive.
2) A definite clause is either atomic sentence or is an implication whose antecedents (left
hand side clause) is a conjunction of positive literals and consequent (right hand side
clause) is a single positive literal.
For example:
Princess (x) Beautiful (x) Goodhearted(x)
Princess(x)
Beautiful(x)
7. Write the generalized Modus ponens Rule? May – 14
1) Modus ponens :
If the sentence P and P Q are known to be true, then modus ponens lets us infer Q
For example : if we have statement , “ If it is raining then the ground will be wet” and “It is
raining”. If P denotes “It is raining” and Q is “The ground is wet” then the first expression
becomes P Q. Because if it is indeed now raining (P is true), our set of axioms becomes,
P Q
P
Through an application of modus ponens, the fact that “The ground is wet” (Q) may be added
to the set of true expressions.
2) The generalized modus ponens :
For atomic sentences P i , P'i and q, where there is a substitution Q such that
SUBST (,P'i) = SUBST (,P'i) ,
For all i ,
P'1, P'2 , …… P'n , (P1 P2 ….. Pn q)
SUBST (, q)
There is n+ 1 premise to this rule: The ‘n’ atomic sentences P'i and the one implication. The
conclusion is the result applying the substitution to the consequent q.
8. Define atomic sentence and complex sentence? Dec – 14
Atomic sentences
1. An atomic sentence is formed from a predicate symbol followed by a parenthesized list of
terms.
For example: Stepsister (Cindrella, Drizella)
2. Atomic sentences can have complex terms as the arguments.
For example: Married (Father (Cindrella), Mother (Drizella))
3. Atomic sentences are also called atomic expressions, atoms or propositions.
For example: Equal (plus (two, three), five) is an atomic sentence.
Complex sentences
i) Atomic sentences can be connected to each other to form complex sentence.
Logical connectives, , , , can be used to connect atomic sentences.
For example:
Princess (Drizella) Princess (Cindrella)
ii) (foo(two, two, plus(two, three))) (Equal (plus (three, two), five) true) is a sentence
because all its components are sentences, appropriately connected by logical operators.
iii) Various sentences in first order logic formed using connectives:
1) If S is a sentence, then so its negation, S.
2) If S1, and S2 are sentences, then so their conjunction, S1 S2.
3) If S1, and S2 are sentences, then so their disjunction, S1 S2.
4) If S1, and S2 are sentences, then so their implication, S1S2.
5) If S1, and S2 are sentences, then so their equivalence, S1 S2.
9. What is Unification? Dec - 14
1) It is the process of finding substitutions for lifted inference rules, which can make different
logical expression to look similar (identical).
2) Unification is a procedure for determining substitutions needed to make two first order logic
expressions match.
3) Unification is important component of all first order logic inference algorithms.
4) The unification algorithm takes two sentences and returns a unifier for them, if one exists.
10. Differentiate forward chaining and backward chaining? May – 15
Forward chaining is data driven
It is automatic unconscious processing.
Ex. – Object reorganization, routine decision.
It may do lots of work that is irrelevant to the goal.
Backward chaining is goal driven.
It is appropriate for the problem solving.
Ex. Where are my keys?, How do I get into a Ph.D programme?
Complexity of backward chaining can be much less than linear in size of knowledge
base.
11. Define metarules? May - 17
The rules that determine the conflict resolution strategy are called meta rules. Meta rules
define knowledge about how the system will work. For example, meta rules may define that
knowledge from expert1 is to be trusted more than knowledge from expert 2. Meta rules are
treated by the system like normal rules but are they are given higher priority.
Convert the following into Horn clauses. Dec -17
𝑒𝑎𝑡
∀𝑥: ∀𝑦: 𝑐𝑎𝑡(𝑥) ∨ 𝑓𝑖𝑠ℎ(𝑦) → 𝑙𝑖𝑘𝑒𝑠 𝑥, 𝑦
Horn clauses are as follows,
𝑒𝑎𝑡
¬𝑐𝑎𝑡(𝑥) ∨ ¬𝑓𝑖𝑠ℎ(𝑦) ∨ 𝑙𝑖𝑘𝑒𝑠 𝑥, 𝑦
12. Explain following term with reference to prolog programming language :clauses
Clauses: clauses are the structure elements of the program. A prolog programmer develops a
program by writing a collection of clauses in a text file. The programmer the uses the consult
command ,specifying the name of the text file, to load the process into the prolog
environment.
The two types of clauses – facts and rules.
Facts – a fact is an atom or structure followed by fullstop .examples of valid prolog syntax
defining facts are :cold , male(homer).and father(homer,bart)
Rules: a rule consist of a head and body . the head and body are separated by a :- and
followed by a fullstop. If the body of a clause id true then the head of the clause is true.
Examples of valid prolog syntax for defining rules are: bigger(X,Y):-X>[Link]
parents(F,M,C):-father (F,C),mother(M,C).
13. explain following term with refernce to prolog programming language : predicates
Each predicate has a name and zero or more arguments .the predicate name is a prolog atom .
each argument is an arbitrary prolog term. A predicate with pred and n arguments is denoted
by pred/N, which is called a predicate indicator. A predicate is defined by a collection of
clauses.
A clause is either a rule or fact . A clauses that constitute a predicate denote logical
alternative: if any clause is true, then the whole predicate is true.
14. explain the following term with reference to prolog programming language : domains
Domains : the argument to the predicates must belong to know prolog domains. A
domain can be a standard domain, or it can be one you declare in the domain section. The
two types of process- facts and rules. Examples :
If you declare a predicate my_predicate(symbol,integer) in the predicate section, like this:
predicates:
My_predicate(symbol,integer)
You don’t need to declare its arguments domains in the domain section, because symbol
and integer are standard domains. But if you declare a predicate
my_predicate(name,number) in the predicates section, like this
Predicates:
my_predicate(name,number) you will need to declare suitable domains for name and
number.
Assuming you want these to be symbol and integer respectively, the domain declaration
looks like this.
Domains:
Name=symbol
Number = integer
Predicates:
my_predicate(name,number)
15. explain the following term with reference to prolog programming language :goal
a goal is a statement starting with a predicate and probably followed by its arguments. In
a valid goal,the predicate must have appeared in atleast one fact or a rule in the consulted
program, and a number of arguments in the goal must be the same as that appears in the
consulted program . also, al the arguments (if any) or constants.
The purpose of submitting a goal is to find out whether the statement represented by the
goal is true according to the knowledge database(i.e. the facts and rules in the consulted
program). This is similar to proving a hypothesis – the goal being the hypothesis, the
facts being the axioms and the rules being the theorem.
16. explain the following term with reference to prolog programming language : cut
The cut, in prolog , is a goal, return us !,which always succeeds, but cannot be
backtracked past. The prolog cut predicate, or ‘!’,eliminates choices is a prolog derivation
tree it is used to prevent unwanted backtracking, for example, to prevent extra solutions
being found by prolog.
The cut should be used sparingly. There is a temptation to insert cuts experimentally into
code that is not working correctly.
17. explain the following term with reference to prolog programming language :fail
It is the built-in prolog predicate with no arguments, which, as the name suggest, always fails, it
is useful for forcing backtracking and various other contexts.
The two types of process- facts and rules.
18. explain the following term with reference to prolog programming language : Inference engine
Inference engine: prolog built-in backward chaining inference engine which can be used
to partially implement some expert system. Prolog rules are used for the knowledge
representation, and the prolog inference engine is used to derive conclusions. Other
portions of the system, such as the user interface, must be coded using prolog as a
programming language. The prolog inference engine thus simple backward chaining.
Each rule has a goal and a number of each sub-goals. The prolog inference engine either
proves or disproves each goal. There is no uncertainty associated with the results.
This rule structure and inference strategy is adequate for many expert system
applications. Only the dialogue with the user needs to be improved to create a simple
expert system. These feature are used in he chapter to build a sample application called,
“birds,”which identifies birds.
19. define ontological engineering?
It is a process of representing the abstract concepts like actions,time which are related to
the real world domains. This process is complex and lengthy because in real world
objects have many different characteristics with various values which can differ over
time. In such cases ontological engineering generalizes the objects having similar
characteristics.
20. Differentiate general purpose ontology from special purpose ontology.
Special purpose ontology considers some basics facts about the world in such a way tat
they may notbe represented in generalized manner. It provides domain specific axioms.
Whereas the general purpose ontology is applicable to any special purpose domain with
the addiction of domain specific axioms, it tries to represent real world abstract concepts
in more generic manner, so as to cover larger domains.
A general purpose ontology unifies and do reasoning for sufficiently large domains and
different areas, where as special purpose ontology is restricted to specific problem
domain.
16 MARKS QUESTIONS:
1. Write the algorithm for deciding entailment in propositional logic. May 13 Dec 14
REFER Qno 7
2. What is conductive normal form of a rule? What is solemnizations?(4) Dec -10
REFER Qno 7
3. Describe the detail the steps involved in the knowledge engineering process?May – 10,May
– 11,May-13,Dec-13
Knowledge Engineering is the process of imitating how a human expert in a specific domain
would act and take decisions. It looks at the metadata (information about a data object that
describes characteristics such as content, quality, and format), structure and processes that are the
basis of how a decision is made or conclusion reached. Knowledge engineering attempts to take