UNIT IV
UNIT IV
The agent starts visiting from first square [1, 1], and we already know that
this room is safe for the agent. To build a knowledge base for wumpus
world, we will use some rules and atomic propositions. We need symbol [i,
j] for each location in the wumpus world, where i is for the location of
rows, and j for column location.
After applying Unit resolution on W13 ∨ W12 ∨ W22, and ¬W22, we will
get W13 ∨ W12 as output.
After Applying Unit resolution on W13 ∨ W12 and ¬ W12, we will get W13 as
an output, hence it is proved that the Wumpus is in the room [1, 3].
Propositional logic in Artificial intelligence
Propositional logic (PL) is the simplest form of logic where all the
statements are made by propositions. A proposition is a declarative
statement which is either true or false. It is a technique of knowledge
representation in logical and mathematical form.
Example:
1. a) It is Sunday.
2. b) The Sun rises from West (False proposition)
3. c) 3+3= 7(False proposition)
4. d) 5 is a prime number.
a. Atomic Propositions
b. Compound propositions
Example:
Example:
Logical Connectives:
Logical connectives are used to connect two simpler propositions or
representing a sentence logically. We can create compound propositions
with the help of logical connectives. There are mainly five connectives,
which are given as follows:
Truth Table:
In propositional logic, we need to know the truth values of propositions in
all possible scenarios. We can combine all the possible combination with
logical connectives, and the representation of these combinations in a
tabular format is called Truth table. Following are the truth table for all
logical connectives:
Truth table with three propositions:
We can build a proposition composing three propositions P, Q, and R. This
truth table is made-up of 8n Tuples as we have taken three proposition
symbols.
Precedence of connectives:
Just like arithmetic operators, there is a precedence order for propositional
connectors or logical operators. This order should be followed while
evaluating a propositional problem. Following is the list of the precedence
order for operators:
Precedence Operators
Logical equivalence:
Logical equivalence is one of the features of propositional logic. Two
propositions are said to be logically equivalent if and only if the columns
in the truth table are identical to each other.
ADVERTISEMENT
o Commutativity:
o P∧ Q= Q ∧ P, or
o P ∨ Q = Q ∨ P.
o Associativity:
o (P ∧ Q) ∧ R= P ∧ (Q ∧ R),
o (P ∨ Q) ∨ R= P ∨ (Q ∨ R)
o Identity element:
o P ∧ True = P,
o P ∨ True= True.
o Distributive:
o P∧ (Q ∨ R) = (P ∧ Q) ∨ (P ∧ R).
o P ∨ (Q ∧ R) = (P ∨ Q) ∧ (P ∨ R).
o DE Morgan's Law:
o ¬ (P ∧ Q) = (¬P) ∨ (¬Q)
o ¬ (P ∨ Q) = (¬ P) ∧ (¬Q).
o Double-negation elimination:
o ¬ (¬P) = P.
Inference rules:
Inference rules are the templates for generating valid arguments.
Inference rules are applied to derive proofs in artificial intelligence, and
the proof is a sequence of the conclusion that leads to the desired goal.
From the above term some of the compound statements are equivalent to
each other, which we can prove using truth table:
ADVERTISEMENT
Hence from the above truth table, we can prove that P → Q is equivalent
to ¬ Q → ¬ P, and Q→ P is equivalent to ¬ P → ¬ Q.
Example:
2. Modus Tollens:
The Modus Tollens rule state that if P→ Q is true and ¬ Q is true, then ¬
P will also true. It can be represented as:
Example:
4. Disjunctive Syllogism:
The Disjunctive syllogism rule state that if P∨Q is true, and ¬P is true,
then Q will be true. It can be represented as:
Example:
Proof by truth-table:
ADVERTISEMENT
5. Addition:
The Addition rule is one the common inference rule, and it states that If P
is true, then P∨Q will be true.
Example:
Proof by Truth-Table:
6. Simplification:
The simplification rule state that if P∧ Q is true, then Q or P will also be
true. It can be represented as:
Proof by Truth-Table:
7. Resolution:
The Resolution rule state that if P∨Q and ¬ P∧R is true, then Q∨R will also
be true. It can be represented as
Proof by Truth-Table:
ADVERTISEMENT
First-Order logic:
o First-order logic is another way of knowledge representation in
artificial intelligence. It is an extension to propositional logic.
o FOL is sufficiently expressive to represent the natural language
statements in a concise way.
o First-order logic is also known as Predicate logic or First-order
predicate logic. First-order logic is a powerful language that
develops information about the objects in a more easy way and can
also express the relationship between those objects.
o First-order logic (like natural language) does not only assume that
the world contains facts like propositional logic but also assumes the
following things in the world:
o Objects: A, B, people, numbers, colors, wars, theories,
squares, pits, wumpus, ......
o Relations: It can be unary relation such as: red, round, is
adjacent, or n-any relation such as: the sister of, brother
of, has color, comes between
o Function: Father of, best friend, third inning of, end of, ......
o As a natural language, first-order logic also has two main parts:
a. Syntax
b. Semantics
Variables x, y, z, a, b,....
Connectives ∧, ∨, ¬, ⇒, ⇔
Equality ==
Quantifier ∀, ∃
Atomic sentences:
Complex Sentences:
Universal Quantifier:
Universal quantifier is a symbol of logical representation, which specifies
that the statement within its range is true for everything or every instance
of a particular thing.
o For all x
o For each x
o For every x.
Example:
All man drink coffee.
It will be read as: There are all x where x is a man who drink coffee.
Existential Quantifier:
Existential quantifiers are the type of quantifiers, which express that the
statement within its scope is true for at least one instance of something.
Example:
Some boys are intelligent.
∃x: boys(x) ∧ intelligent(x)
It will be read as: There are some x where x is a boy who is intelligent.
Points to remember:
o The main connective for universal quantifier ∀ is implication →.
o The main connective for existential quantifier ∃ is and ∧.
Properties of Quantifiers:
o In universal quantifier, ∀x∀y is similar to ∀y∀x.
o In Existential quantifier, ∃x∃y is similar to ∃y∃x.
o ∃x∀y is not similar to ∀y∃x.
∀x bird(x) →fly(x).
And since there are all birds who fly so it will be represented as follows.
game. Since there are some boys so we will use ∃, and it will be
In this question, the predicate is "play(x, y)," where x= boys, and y=
Since there are not all students, so we will use ∀ with negation,
y= subject.
Science)].
At the first level or highest level, we will examine the functionality of the
circuit:
At the second level, we will examine the circuit structure details such as:
3. Decide on vocabulary:
The next step of the process is to select functions, predicate, and
constants to represent the circuits, terminals, signals, and gates. Firstly
we will distinguish the gates from each other and from other objects. Each
gate is represented as an object which is named by a constant, such
as, Gate(X1). The functionality of each gate is determined by its type,
which is taken as constants such as AND, OR, XOR, or NOT. Circuits will
be identified by a predicate: Circuit (C1).
For gate input, we will use the function In(1, X1) for denoting the first
input terminal of the gate, and for output terminal we will use Out (1,
X1).
o If two terminals are connected then they have the same input
signal, it can be represented as:
1. ∀ t1, t2 Terminal (t1) ∧ Terminal (t2) ∧ Connect (t1, t2) → Signal (t1
) = Signal (2).
o Output of AND gate will be zero if and only if any of its input is zero.
o All the gates in the above circuit have two inputs and one output
(except NOT gate).
For the given circuit C1, we can encode the problem instance in atomic
sentences as below:
Since in the circuit there are two XOR, two AND, and one OR gate so
atomic sentences for these gates will be:
What should be the combination of input which would generate the first
output of circuit C1, as 0 and a second output to be 1?
1. ∃ i1, i2, i3 Signal (In(1, C1))=i1 ∧ Signal (In(2, C1))=i2 ∧ Signal (In
(3, C1))= i3
2. ∧ Signal (Out(1, C1)) =0 ∧ Signal (Out(2, C1))=1
Substitution:
Note: First-order logic is capable of expressing facts about some or all objects in the
universe.
Equality:
PauseNext
Unmute
Duration 18:10
Loaded: 6.24%
Â
Fullscreen
ADVERTISEMENT
First-Order logic does not only use predicate and terms for making atomic
sentences but also uses another way, which is equality in FOL. For this, we
can use equality symbols which specify that the two terms refer to the
same object.
1. Universal Generalization:
2. Universal Instantiation:
Example:1.
Example: 2.
Let's take a famous example,
"All kings who are greedy are Evil." So let our knowledge base contains
this detail as in the form of FOL:
3. Existential Instantiation:
o The restriction with this rule is that c used in the rule must be a new
term for which P(c ) is true.
Example:
According to Modus Ponens, for atomic sentences pi, pi', q. Where there
is a substitution θ such that SUBST (θ, pi',) = SUBST(θ, pi), it can be
represented as:
Example:
We will use this rule for Kings are evil, so we will find some x such
that x is king, and x is greedy so we can infer that x is evil.
What is Unification?
ADVERTISEMENT
ADVERTISEMENT
o Unification is a process of making two different logical atomic
expressions identical by finding a substitution. Unification depends
on the substitution process.
o It takes two literals as input and makes them identical using
substitution.
Let Ψ1 and Ψ2 be two atomic sentences and 𝜎 be a unifier such
that, Ψ1𝜎 = Ψ2𝜎, then it can be expressed as UNIFY(Ψ1, Ψ2).
o
o The UNIFY algorithm is used for unification, which takes two atomic
sentences and returns a unifier for those sentences (If any exist).
o Unification is a key component of all first-order inference algorithms.
o It returns fail if the expressions do not match with each other.
o The substitution variables are called Most General Unifier or MGU.
E.g. Let's say there are two different expressions, P(x, y), and P(a, f(z)).
o Substitute x with a, and y with f(z) in the first expression, and it will
be represented as a/x and f(z)/y.
o With both the substitutions, the first expression will be identical to
the second expression and the substitution set will be: [a/x, f(z)/y].
Unification Algorithm:
Algorithm: Unify(Ψ1, Ψ2)
For each pair of the following atomic sentences find the most
general unifier (If exist).
5. Find the MGU of Q(a, g(x, a), f(y)), Q(a, g(f(b), a), x)}
SUBST θ= {b/y}
S1 => {Q(a, g(f(b), a), f(b)); Q(a, g(f(b), a), f(b))}, Successfully Unified.
Resolution in FOL
Resolution
Resolution is a theorem proving technique that proceeds by building
refutation proofs, i.e., proofs by contradictions. It was invented by a
Mathematician John Alan Robinson in the year 1965.
Resolution is used, if there are various statements are given, and we need
to prove a conclusion of those statements. Unification is a key concept in
proofs by resolutions. Resolution is a single inference rule which can
efficiently operate on the conjunctive normal form or clausal form.
Note: To better understand this topic, firstly learns the FOL in AI.
This rule is also called the binary resolution rule because it only
resolves exactly two literals.
Example:
We can resolve two clauses which are given below:
Where two complimentary literals are: Loves (f(x), x) and ¬ Loves (a,
b)
These literals can be unified with unifier θ= [a/f(x), and b/x] , and it will
generate a resolvent clause:
Example:
In the first step we will convert all the given statements into its first order
logic.
In First order logic resolution, it is required to convert the FOL into CNF as
CNF form makes easier for resolution proofs.
a. ∀x ¬ food(x) V likes(John, x)
b. food(Apple) Λ food(vegetables)
e. ∀x ¬ eats(Anil, x) V eats(Harry, x)
f. ∀x¬ [¬ killed(x) ] V alive(x)
g. ∀x ¬ alive(x) V ¬ killed(x)
h. likes(John, Peanuts).
a. ∀x ¬ food(x) V likes(John, x)
b. food(Apple) Λ food(vegetables)
e. ∀x ¬ eats(Anil, x) V eats(Harry, x)
f. ∀x ¬killed(x) ] V alive(x)
g. ∀x ¬ alive(x) V ¬ killed(x)
h. likes(John, Peanuts).
a. ∀x ¬ food(x) V likes(John, x)
b. food(Apple) Λ food(vegetables)
f. ∀g ¬killed(g) ] V alive(g)
g. ∀k ¬ alive(k) V ¬ killed(k)
h. likes(John, Peanuts).
Eliminate existential instantiation quantifier by elimination.
In this step, we will eliminate existential quantifier ∃, and this
o
a. ¬ food(x) V likes(John, x)
b. food(Apple)
c. food(vegetables)
f. alive(Anil)
g. ¬ eats(Anil, w) V eats(Harry, w)
h. killed(g) V alive(g)
i. ¬ alive(k) V ¬ killed(k)
j. likes(John, Peanuts).
Inference engine:
The inference engine is the component of the intelligent system in
artificial intelligence, which applies logical rules to the knowledge base to
infer new information from known facts. The first inference engine was
part of the expert system. Inference engine commonly proceeds in two
modes, which are:
a. Forward chaining
b. Backward chaining
Horn clause and definite clause are the forms of sentences, which enables
knowledge base to use a more restricted and efficient inference algorithm.
Logical inference algorithms use forward and backward chaining
approaches, which require KB in the form of the first-order definite
clause.
It is equivalent to p ∧ q → k.
A. Forward Chaining
Forward chaining is also known as a forward deduction or forward
reasoning method when using an inference engine. Forward chaining is a
form of reasoning which start with atomic sentences in the knowledge
base and applies inference rules (Modus Ponens) in the forward direction
to extract more data until a goal is reached.
The Forward-chaining algorithm starts from known facts, triggers all rules
whose premises are satisfied, and add their conclusion to the known facts.
This process repeats until the problem is solved.
Properties of Forward-Chaining:
Example:
"As per the law, it is a crime for an American to sell weapons to
hostile nations. Country A, an enemy of America, has some
missiles, and all the missiles were sold to it by Robert, who is an
American citizen."
To solve the above problem, first, we will convert all the above facts into
first-order definite clauses, and then we will use a forward-chaining
algorithm to reach the goal.
In the first step we will start with the known facts and will choose the
sentences which do not have implications, such as: American(Robert),
Enemy(A, America), Owns(A, T1), and Missile(T1). All these facts will
be represented as below.
Step-2:
At the second step, we will see those facts which infer from available facts
and with satisfied premises.
Rule-(1) does not satisfy premises, so it will not be added in the first
iteration.
B. Backward Chaining:
Backward-chaining is also known as a backward deduction or backward
reasoning method when using an inference engine. A backward chaining
algorithm is a form of reasoning, which starts with the goal and works
backward, chaining through rules to find known facts that support the
goal.
Example:
In backward-chaining, we will use the same above example, and will
rewrite all the rules.
Backward-Chaining proof:
In Backward chaining, we will start with our goal predicate, which
is Criminal(Robert), and then infer further rules.
Step-1:
At the first step, we will take the goal fact. And from the goal fact, we will
infer other facts, and at last, we will prove those facts true. So our goal
fact is "Robert is Criminal," so following is the predicate of it.
Step-2:
At the second step, we will infer other facts form goal fact which satisfies
the rules. So as we can see in Rule-1, the goal predicate Criminal (Robert)
is present with substitution {Robert/P}. So we will add all the conjunctive
facts below the first level and will replace p with Robert.
Step-3:t At step-3, we will extract further fact Missile(q) which infer from
Weapon(q), as it satisfies Rule-(5). Weapon (q) is also true with the
substitution of a constant T1 at q.
Step-4:
Step-5: