[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
2 KNOWLEDGE-REPRESENTATION
AND REASONING
UNIT
KNOWLEDGE-REPRESENTATION
Humans are best at understanding, reasoning, and interpreting
knowledge. Human knows things, which is knowledge and as per their
knowledge they perform various actions in the real world. But how
machines do all these things comes under knowledge representation
and reasoning. Hence we can describe Knowledge representation as
following:
o Knowledge representation and reasoning (KR, KRR) is the part of
Artificial intelligence which concerned with AI agents thinking
and how thinking contributes to intelligent behavior of agents.
o It is responsible for representing information about the real
world so that a computer can understand and can utilize this
knowledge to solve the complex real world problems such as
diagnosis a medical condition or communicating with humans in
natural language.
o It is also a way which describes how we can represent knowledge
in artificial intelligence. Knowledge representation is not just
storing data into some database, but it also enables an
intelligent machine to learn from that knowledge and
experiences so that it can behave intelligently like a human.
UNIT - II 1
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
What to Represent:
Following are the kind of knowledge which needs to be represented
in AI systems:
o Object: All the facts about objects in our world domain. E.g.,
Guitars contains strings, trumpets are brass instruments.
o Events: Events are the actions which occur in our world.
o Performance: It describe behavior which involves knowledge
about how to do things.
o Meta-knowledge: It is knowledge about what we know.
o Facts: Facts are the truths about the real world and what we
represent.
o Knowledge-Base: The central component of the knowledge-
based agents is the knowledge base. It is represented as KB. The
Knowledgebase is a group of the Sentences (Here, sentences are
used as a technical term and not identical with the English
language).
Knowledge: Knowledge is awareness or familiarity gained by
experiences of facts, data, and situations. Following are the types of
knowledge in artificial intelligence:
Types of knowledge
Following are the various types of knowledge:
UNIT - II 2
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
1. Declarative Knowledge:
o Declarative knowledge is to know about something.
o It includes concepts, facts, and objects.
o It is also called descriptive knowledge and expressed in
declarativesentences.
o It is simpler than procedural language.
2. Procedural Knowledge
o It is also known as imperative knowledge.
o Procedural knowledge is a type of knowledge which is
responsible for knowing how to do something.
o It can be directly applied to any task.
o It includes rules, strategies, procedures, agendas, etc.
o Procedural knowledge depends on the task on which it can be
applied.
UNIT - II 3
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
3. Meta-knowledge:
o Knowledge about the other types of knowledge is called Meta-
knowledge.
4. Heuristic knowledge:
o Heuristic knowledge is representing knowledge of some experts
in a filed or subject.
o Heuristic knowledge is rules of thumb based on previous
experiences, awareness of approaches, and which are good to
work but not guaranteed.
5. Structural knowledge:
o Structural knowledge is basic knowledge to problem-solving.
o It describes relationships between various concepts such as kind
of, part of, and grouping of something.
o It describes the relationship that exists between concepts or
objects.
The relation between knowledge and intelligence:
Knowledge of real-worlds plays a vital role in intelligence and same for
creating artificial intelligence. Knowledge plays an important role in
demonstrating intelligent behavior in AI agents. An agent is only able
to accurately act on some input when he has some knowledge or
experience about that input.
Let's suppose if you met some person who is speaking in a language
which you don't know, then how you will able to act on that. The same
thing applies to the intelligent behavior of the agents.
As we can see in below diagram, there is one decision maker which
act by sensing the environment and using knowledge. But if the
knowledge part will not present then, it cannot display intelligent
behavior.
UNIT - II 4
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
AI knowledge cycle:
An Artificial intelligence system has the following components for
displaying intelligent behavior:
o Perception
o Learning
o Knowledge Representation and Reasoning
o Planning
o Execution
UNIT - II 5
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
The above diagram is showing how an AI system can interact with the
real world and what components help it to show intelligence. AI
system has Perception component by which it retrieves information
from its environment. It can be visual, audio or another form of
sensory input. The learning component is responsible for learning
from data captured by Perception comportment. In the complete
cycle, the main components are knowledge representation and
Reasoning. These two components are involved in showing the
intelligence in machine-like humans. These two components are
independent with each other but also coupled together. The planning
and execution depend on analysis of Knowledge representation and
reasoning.
Approaches to knowledge representation:
There are mainly four approaches to knowledge representation,
which are givenbelow:
1. Simple relational knowledge:
o It is the simplest way of storing facts which uses the relational
method, and each fact about a set of the object is set out
systematically in columns.
o This approach of knowledge representation is famous in
database systems where the relationship between different
entities is represented.
o This approach has little opportunity for inference.
Example: The following is the simple relational knowledge
representation.
Player Weight Age
Player1 65 23
UNIT - II 6
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
Player2 58 18
Player3 75 24
2. Inheritable knowledge:
o In the inheritable knowledge approach, all data must be stored
into a hierarchy of classes.
o All classes should be arranged in a generalized form or a
hierarchal manner.
o In this approach, we apply inheritance property.
o Elements inherit values from other members of a class.
o This approach contains inheritable knowledge which shows a
relation between instance and class, and it is called instance
relation.
o Every individual frame can represent the collection of attributes
and its value.
o In this approach, objects and values are represented in Boxed
nodes.
o We use Arrows which point from objects to their values.
o Example:
UNIT - II 7
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
3. Inferential knowledge:
o Inferential knowledge approach represents knowledge in the
form of formal logics.
o This approach can be used to derive more facts.
o It guaranteed correctness.
o Example: Let's suppose there are two statements:
1. Marcus is a man
2. All men are mortal
Then it can represent as;
man(Marcus)
∀x = man (x) ----------> mortal (x)s
4. Procedural knowledge:
o Procedural knowledge approach uses small programs and codes
which describes how to do specific things, and how to proceed.
o In this approach, one important rule is used which is If-Then
rule.
UNIT - II 8
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
o In this knowledge, we can use various coding languages such
as LISP language and Prolog language.
o We can easily represent heuristic or domain-specific knowledge
using this approach.
o But it is not necessary that we can represent all cases in this
approach.
Requirements for knowledge Representation system:
A good knowledge representation system must possess the following
properties.
1. Representational Accuracy:
KR system should have the ability to represent all kind of
required knowledge.
2. Inferential Adequacy:
KR system should have ability to manipulate the
representational structures to produce new knowledge
corresponding to existing structure.
3. Inferential Efficiency:
The ability to direct the inferential knowledge mechanism into
the most productive directions by storing appropriate guides.
4. Acquisitional efficiency-
The ability to acquire the new knowledge easily using automatic
methods.
KNOWLEDGE BASED AGENTS
o An intelligent agent needs knowledge about the real world for
taking decisions and reasoning to act efficiently.
UNIT - II 9
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
o Knowledge-based agents are those agents who have the
capability of maintaining an internal state of knowledge,
reason over that knowledge, update their knowledge after
observations and take actions. These agents can represent the
world with some formal representation and act intelligently.
o Knowledge-based agents are composed of two main parts:
o Knowledge-base and
o Inference system.
A knowledge-based agent must able to do the following:
o An agent should be able to represent states, actions, etc.
o An agent Should be able to incorporate new percepts
o An agent can update the internal representation of the world
o An agent can deduce the internal representation of the world
o An agent can deduce appropriate actions.
The architecture of knowledge-based agent:
The above diagram is representing a generalized architecture for a
knowledge-based agent. The knowledge-based agent (KBA) take input
UNIT - II 10
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
from the environment by perceiving the environment. The input is
taken by the inference engine of the agent and which also
communicate with KB to decide as per the knowledge store in KB. The
learning element of KBA regularly updates the KB by learning new
knowledge.
Knowledge base: Knowledge-base is a central component of a
knowledge-based agent, it is also known as KB. It is a collection of
sentences (here 'sentence' is a technical term and it is not identical to
sentence in English). These sentences are expressed in a language
which is called a knowledge representation language. The Knowledge-
base of KBA stores fact about the world.
Why use a knowledge base?
Knowledge-base is required for updating knowledge for an agent to
learn with experiences and take action as per the knowledge.
Inference system
Inference means deriving new sentences from old. Inference system
allows us to add a new sentence to the knowledge base. A sentence is
a proposition about the world. Inference system applies logical rules
to the KB to deduce new information.
Inference system generates new facts so that an agent can update the
KB. An inference system works mainly in two rules which are given as:
o Forward chaining
o Backward chaining
Operations Performed by KBA
Following are three operations which are performed by KBA in order
to show the intelligent behavior:
1. TELL: This operation tells the knowledge base what it perceives
from the environment.
UNIT - II 11
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
2. ASK: This operation asks the knowledge base what action it
should perform.
3. Perform: It performs the selected action.
A generic knowledge-based agent:
Following is the structure outline of a generic knowledge-based agents
program:
1. function KB-AGENT(percept):
2. persistent: KB, a knowledge base
3. t, a counter, initially 0, indicating time
4. TELL(KB, MAKE-PERCEPT-SENTENCE(percept, t))
5. Action = ASK(KB, MAKE-ACTION-QUERY(t))
6. TELL(KB, MAKE-ACTION-SENTENCE(action, t))
7. t=t+1
8. return action
The knowledge-based agent takes percept as input and returns an
action as output. The agent maintains the knowledge base, KB, and it
initially has some background knowledge of the real world. It also has
a counter to indicate the time for the whole process, and this counter
is initialized with zero.
Each time when the function is called, it performs its three operations:
o Firstly it TELLs the KB what it perceives.
o Secondly, it asks KB what action it should take
o Third agent program TELLS the KB that which action was chosen.
The MAKE-PERCEPT-SENTENCE generates a sentence as setting that
the agent perceived the given percept at the given time.
The MAKE-ACTION-QUERY generates a sentence to ask which action
should be done at the current time.
UNIT - II 12
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
MAKE-ACTION-SENTENCE generates a sentence which asserts that the
chosen action was executed.
Various levels of knowledge-based agent:
A knowledge-based agent can be viewed at different levels which are
given below:
1. Knowledge level
Knowledge level is the first level of knowledge-based agent, and in this
level, we need to specify what the agent knows, and what the agent
goals are. With these specifications, we can fix its behavior. For
example, suppose an automated taxi agent needs to go from a station
A to station B, and he knows the way from A to B, so this comes at the
knowledge level.
2. Logical level:
At this level, we understand that how the knowledge representation
of knowledge is stored. At this level, sentences are encoded into
different logics. At the logical level, an encoding of knowledge into
logical sentences occurs. At the logical level we can expect to the
automated taxi agent to reach to the destination B.
3. Implementation level:
This is the physical representation of logic and knowledge. At the
implementation level agent perform actions as per logical and
knowledge level. At this level, an automated taxi agent actually
implement his knowledge and logic so that he can reach to the
destination.
Approaches to designing a knowledge-based agent:
There are mainly two approaches to build a knowledge-based agent:
UNIT - II 13
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
1. 1. Declarative approach: We can create a knowledge-based
agent by initializing with an empty knowledge base and telling
the agent all the sentences with which we want to start with.
This approach is called Declarative approach.
2. 2. Procedural approach: In the procedural approach, we directly
encode desired behavior as a program code. Which means we
just need to write a program that already encodes the desired
behavior or agent.
However, in the real world, a successful agent can be built by
combining both declarative and procedural approaches, and
declarative knowledge can often be compiled into more efficient
procedural code.
THE WUMPUS WORLD
The Wumpus world is a simple world example to illustrate the worth
of a knowledge-based agent and to represent knowledge
representation. It was inspired by a video game Hunt the Wumpus by
Gregory Yob in 1973.
The Wumpus world is a cave which has 4/4 rooms connected with
passageways. So there are total 16 rooms which are connected with
each other. We have a knowledge-based agent who will go forward in
this world. The cave has a room with a beast which is called Wumpus,
who eats anyone who enters the room. The Wumpus can be shot by
the agent, but the agent has a single arrow. In the Wumpus world,
there are some Pits rooms which are bottomless, and if agent falls in
Pits, then he will be stuck there forever. The exciting thing with this
cave is that in one room there is a possibility of finding a heap of gold.
So the agent goal is to find the gold and climb out the cave without
fallen into Pits or eaten by Wumpus. The agent will get a reward if he
comes out with gold, and he will get a penalty if eaten by Wumpus or
falls in the pit.
UNIT - II 14
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
Following is a sample diagram for representing the Wumpus world. It
is showing some rooms with Pits, one room with Wumpus and one
agent at (1, 1) square location of the world.
There are also some components which can help the agent to
navigate the cave. These components are given as follows:
a. The rooms adjacent to the Wumpus room are smelly, so that it
would have some stench.
b. The room adjacent to PITs has a breeze, so if the agent reaches
near to PIT, then he will perceive the breeze.
c. There will be glitter in the room if and only if the room has gold.
d. The Wumpus can be killed by the agent if the agent is facing to
it, and Wumpus will emit a horrible scream which can be heard
anywhere in the cave.
PEAS description of Wumpus world:
To explain the Wumpus world we have given PEAS description as
below:
UNIT - II 15
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
Performance measure:
o +1000 reward points if the agent comes out of the cave with the
gold.
o -1000 points penalty for being eaten by the Wumpus or falling
into the pit.
o -1 for each action, and -10 for using an arrow.
o The game ends if either agent dies or came out of the cave.
Environment:
o A 4*4 grid of rooms.
o The agent initially in room square [1, 1], facing toward the right.
o Location of Wumpus and gold are chosen randomly except the
first square [1,1].
o Each square of the cave can be a pit with probability 0.2 except
the first square.
Actuators:
o Left turn,
o Right turn
o Move forward
o Grab
o Release
o Shoot.
Sensors:
o The agent will perceive the stench if he is in the room adjacent
to the Wumpus. (Not diagonally).
o The agent will perceive breeze if he is in the room directly
adjacent to the Pit.
o The agent will perceive the glitter in the room where the gold is
present.
UNIT - II 16
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
o The agent will perceive the bump if he walks into a wall.
o When the Wumpus is shot, it emits a horrible scream which can
be perceived anywhere in the cave.
o These percepts can be represented as five element list, in which
we will have different indicators for each sensor.
o Example if agent perceives stench, breeze, but no glitter, no
bump, and no scream then it can be represented as:
[Stench, Breeze, None, None, None].
The Wumpus world Properties:
o Partially observable: The Wumpus world is partially observable
because the agent can only perceive the close environment such
as an adjacent room.
o Deterministic: It is deterministic, as the result and outcome of
the world are already known.
o Sequential: The order is important, so it is sequential.
o Static: It is static as Wumpus and Pits are not moving.
o Discrete: The environment is discrete.
o One agent: The environment is a single agent as we have one
agent only and Wumpus is not considered as an agent.
Exploring the Wumpus world:
Now we will explore the Wumpus world and will determine how the
agent will find its goal by applying logical reasoning.
Agent's First step:
Initially, the agent is in the first room or on the square [1,1], and we
already know that this room is safe for the agent, so to represent on
the below diagram (a) that room is safe we will add symbol OK. Symbol
A is used to represent agent, symbol B for the breeze, G for Glitter or
gold, V for the visited room, P for pits, W for Wumpus.
UNIT - II 17
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
At Room [1,1] agent does not feel any breeze or any Stench which
means the adjacent squares are also OK.
Agent's second Step:
Now agent needs to move forward, so it will either move to [1, 2], or
[2,1]. Let's suppose agent moves to the room [2, 1], at this room agent
perceives some breeze which means Pit is around this room. The pit
can be in [3, 1], or [2,2], so we will add symbol P? to say that, is this
Pit room?
Now agent will stop and think and will not make any harmful move.
The agent will go back to the [1, 1] room. The room [1,1], and [2,1] are
visited by the agent, so we will use symbol V to represent the visited
squares.
Agent's third step:
At the third step, now agent will move to the room [1,2] which is OK.
In the room [1,2] agent perceives a stench which means there must
be a Wumpus nearby. But Wumpus cannot be in the room [1,1] as by
rules of the game, and also not in [2,2] (Agent had not detected any
stench when he was at [2,1]). Therefore agent infers that Wumpus is
UNIT - II 18
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
in the room [1,3], and in current state, there is no breeze which means
in [2,2] there is no Pit and no Wumpus. So it is safe, and we will mark
it OK, and the agent moves further in [2,2].
Agent's fourth step:
At room [2,2], here no stench and no breezes present so let's suppose
agent decides to move to [2,3]. At room [2,3] agent perceives glitter,
so it should grab the gold and climb out of the cave.
PATTERNS IN PROPOSITIONAL LOGIC
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. It is Sunday.
2. The Sun rises from West (False proposition)
3. 3+3= 7(False proposition)
4. 5 is a prime number.
UNIT - II 19
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
Following are some basic facts about propositional logic:
o Propositional logic is also called Boolean logic as it works on 0
and 1.
o In propositional logic, we use symbolic variables to represent the
logic, and we can use any symbol for a representing a
proposition, such A, B, C, P, Q, R, etc.
o Propositions can be either true or false, but it cannot be both.
o Propositional logic consists of an object, relations or function,
and logical connectives.
o These connectives are also called logical operators.
o The propositions and connectives are the basic elements of the
propositional logic.
o Connectives can be said as a logical operator which connects two
sentences.
o A proposition formula which is always true is called tautology,
and it is also called a valid sentence.
o A proposition formula which is always false is
called Contradiction.
o A proposition formula which has both true and false values is
called
o Statements which are questions, commands, or opinions are not
propositions such as "Where is Rohini", "How are you", "What
is your name", are not propositions.
Syntax of propositional logic:
The syntax of propositional logic defines the allowable sentences for
the knowledge representation. There are two types of Propositions:
a. Atomic Propositions
b. Compound propositions
UNIT - II 20
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
a. Atomic Proposition: Atomic propositions are the simple
propositions. It consists of a single proposition symbol. These are the
sentences which must be either true or false.
Example:
1. 2+2 is 4, it is an atomic proposition as it is a true fact.
2. "The Sun is cold" is also a proposition as it is a false fact.
b.Compound proposition: Compound propositions are constructed
by combining simpler or atomic propositions, using parenthesis and
logical connectives.
Example:
1. "It is raining today, and street is wet."
2. "Ankit is a doctor, and his clinic is in Mumbai."
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:
1. Negation: A sentence such as ¬ P is called negation of P. A literal
can be either Positive literal or negative literal.
2. Conjunction: A sentence which has ∧ connective such as, P ∧
Q is called a conjunction.
Example: Rohan is intelligent and hardworking. It can be
written as,
P= Rohan is intelligent,
Q= Rohan is hardworking. → P∧ Q.
3. Disjunction: A sentence which has ∨ connective, such as P ∨ Q.
is called disjunction, where P and Q are the propositions.
Example: "Ritika is a doctor or Engineer",
Here P= Ritika is Doctor. Q= Ritika is Doctor, so we can write it
as P ∨ Q.
UNIT - II 21
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
4. Implication: A sentence such as P → Q, is called an implica on.
Implications are also known as if-then rules. It can be
represented as
If it is raining, then the street is wet.
Let P= It is raining, and Q= Street is wet, so it is
represented as P → Q
5. Biconditional: A sentence such as P⇔ Q is a Biconditional
sentence, example If I am breathing, then I am alive
P= I am breathing, Q= I am alive, it can be represented as
P ⇔ Q.
Following is the summarized table for Propositional Logic Connectives:
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:
UNIT - II 22
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
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.
UNIT - II 23
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
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
First Precedence Parenthesis
Second Precedence Negation
Third Precedence Conjunction(AND)
Fourth Precedence Disjunction(OR)
Fifth Precedence Implication
Six Precedence Biconditional
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.
UNIT - II 24
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
Let's take two propositions A and B, so for logical equivalence, we can
write it as A⇔B. In below truth table we can see that column for ¬A∨
B and A→B, are identical hence A is Equivalent to B
Properties of Operators:
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.
Limitations of Propositional logic:
o We cannot represent relations like ALL, some, or none with
propositional logic. Example:
1. All the girls are intelligent.
UNIT - II 25
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
2. Some apples are sweet.
o Propositional logic has limited expressive power.
o In propositional logic, we cannot describe statements in terms
of their properties or logical relationships.
INFERENCE IN FIRST-ORDER LOGIC-PROPOSITIONAL
VS FIRST ORDER INFERENCE
Propositional logic is an analytical statement which is either true or false.
It is basically a technique that represents the knowledge in logical &
mathematical form. There are two types of propositional logic; Atomic and
Compound Propositions.
Facts about Propositional Logic
Since propositional logic works on 0 and 1 thus it is also
known as ‘Boolean Logic’.
Proposition logic can be either true or false it can never be
both.
In this type of logic, symbolic variables are used in order to
represent the logic and any logic can be used for representing
the variable.
t is comprised of objects, relations, functions, and logical
connectives.
Proposition formula which is always false is called
‘Contradiction’ whereas a proposition formula which is
always true is called ‘Tautology’.
UNIT - II 26
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
First-Order Logic (FOL)
First-Order Logic is another knowledge representation in AI which is an
extended part of PL. FOL articulates the natural language statements
briefly. Another name of First-Order Logic is ‘Predicate Logic’.
Facts about First Order Logic
FOL is known as the powerful language which is used to
develop information related to objects in a very easy way.
Unlike PL, FOL assumes some of the facts that are related to
objects, relations, and functions.
FOL has two main key features or you can say parts that are;
‘Syntax’ & ‘Semantics’.
Key differences between PL and FOL
Propositional Logic converts a complete sentence into a
symbol and makes it logical whereas in First-Order Logic
relation of a particular sentence will be made that involves
relations, constants, functions, and constants.
The limitation of PL is that it does not represent any individual
entities whereas FOL can easily represent the individual
establishment that means if you are writing a single sentence
then it can be easily represented in FOL.
UNIT - II 27
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
PL does not signify or express the generalization,
specialization or pattern for example ‘QUANTIFIERS’ cannot
be used in PL but in FOL users can easily use quantifiers as it
does express the generalization, specialization, and pattern.
Being a dynamic technology the demand for AI in the industry is increasing
like anything which is resulting in a good career scope. SkyWebcom is the
topmost provider of AI training in Noida where training is offered
extensively on the basis of the latest trends of the IT industry. Best institute
for AWS training in Delhi/NCR is undoubtedly SkyWebcom where trainers
are highly qualified and have experience of 32 years. The Artificial
Intelligence course in Noida at SkyWebcom is very extensive which is
designed by IT experts ranging from basic to advance level. SkyWebcom is
a placement oriented IT institute, where every trainee is ensured with
placement and a 100% record of the same, has also been maintained for
past many years.
UNIFICATION AND LIFTING
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.
o 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 Example: Find the MGU for Unify{King(x), King(John)}
Let Ψ1 = King(x), Ψ2 = King(John),
UNIT - II 28
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
Substitution θ = {John/x} is a unifier for these atoms and applying this
substitution, and both expressions will be identical.
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)).
In this example, we need to make both above statements identical to
each other. For this, we will perform the substitution.
P(x, y)......... (i)
P(a, f(z))......... (ii)
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].
Conditions for Unification:
Following are some basic conditions for unification:
o Predicate symbol must be same, atoms or expression with
different predicate symbol can never be unified.
o Number of Arguments in both expressions must be identical.
o Unification will fail if there are two similar variables present in
the same expression.
UNIT - II 29
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
Unification Algorithm:
Algorithm: Unify(Ψ1, Ψ2)
Step. 1: If Ψ1 or Ψ2 is a variable or constant, then:
a) If Ψ1 or Ψ2 are identical, then return NIL.
b) Else if Ψ1is a variable,
a. then if Ψ1 occurs in Ψ2, then return FAILURE
b. Else return { (Ψ2/ Ψ1)}.
c) Else if Ψ2 is a variable,
a. If Ψ2 occurs in Ψ1 then return FAILURE,
b. Else return {( Ψ1/ Ψ2)}.
d) Else return FAILURE.
Step.2: If the initial Predicate symbol in Ψ1 and Ψ2 are not same, then
return FAILURE.
Step. 3: IF Ψ1 and Ψ2 have a different number of arguments, then
return FAILURE.
Step. 4: Set Substitution set(SUBST) to NIL.
Step. 5: For i=1 to the number of elements in Ψ1.
a) Call Unify function with the ith element of Ψ1 and ith
element of Ψ2, and put the result into S.
b) If S = failure then returns Failure
c) If S ≠ NIL then do,
a. Apply S to the remainder of both L1 and L2.
b. SUBST= APPEND(S, SUBST).
Step.6: Return SUBST.
Implementation of the Algorithm
Step.1: Initialize the substitution set to be empty.
Step.2: Recursively unify atomic sentences:
UNIT - II 30
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
a. Check for Identical expression match.
b. If one expression is a variable vi, and the other is a term ti which
does not contain variable vi, then:
a. Substitute ti / vi in the existing substitutions
b. Add ti /vi to the substitution setlist.
c. If both the expressions are functions, then function name
must be similar, and the number of arguments must be the
same in both the expression.
For each pair of the following atomic sentences find the most general
unifier (If exist).
1. Find the MGU of {p(f(a), g(Y)) and p(X, X)}
Sol: S0 => Here, Ψ1 = p(f(a), g(Y)), and Ψ2 = p(X, X)
SUBST θ= {f(a) / X}
S1 => Ψ1 = p(f(a), g(Y)), and Ψ2 = p(f(a), f(a))
SUBST θ= {f(a) / g(y)}, Unification failed.
Unification is not possible for these expressions.
2. Find the MGU of {p(b, X, f(g(Z))) and p(Z, f(Y), f(Y))}
Here, Ψ1 = p(b, X, f(g(Z))) , and Ψ2 = p(Z, f(Y), f(Y))
S0 => { p(b, X, f(g(Z))); p(Z, f(Y), f(Y))}
SUBST θ={b/Z}
S1 => { p(b, X, f(g(b))); p(b, f(Y), f(Y))}
SUBST θ={f(Y) /X}
S2 => { p(b, f(Y), f(g(b))); p(b, f(Y), f(Y))}
SUBST θ= {g(b) /Y}
S2 => { p(b, f(g(b)), f(g(b)); p(b, f(g(b)), f(g(b))} Unified Successfully.
And Unifier = { b/Z, f(Y) /X , g(b) /Y}.
3. Find the MGU of {p (X, X), and p (Z, f(Z))}
UNIT - II 31
[INTRODUCTION TO ARTIFICIAL INTELLIGENCE & MACHINE LEARNING]
Here, Ψ1 = {p (X, X), and Ψ2 = p (Z, f(Z))
S0 => {p (X, X), p (Z, f(Z))}
SUBST θ= {X/Z}
S1 => {p (Z, Z), p (Z, f(Z))}
SUBST θ= {f(Z) / Z}, Unification Failed.
Hence, unification is not possible for these expressions.
4. Find the MGU of UNIFY(prime (11), prime(y))
Here, Ψ1 = {prime(11) , and Ψ2 = prime(y)}
S0 => {prime(11) , prime(y)}
SUBST θ= {11/y}
S1 => {prime(11) , prime(11)} , Successfully unified.
Unifier: {11/y}.
5. Find the MGU of Q(a, g(x, a), f(y)), Q(a, g(f(b), a), x)}
Here, Ψ1 = Q(a, g(x, a), f(y)), and Ψ2 = Q(a, g(f(b), a), x)
S0 => {Q(a, g(x, a), f(y)); Q(a, g(f(b), a), x)}
SUBST θ= {f(b)/x}
S1 => {Q(a, g(f(b), a), f(y)); Q(a, g(f(b), a), f(b))}
SUBST θ= {b/y}
S1 => {Q(a, g(f(b), a), f(b)); Q(a, g(f(b), a), f(b))}, Successfully Unified.
Unifier: [a/a, f(b)/x, b/y].
6. UNIFY(knows(Richard, x), knows(Richard, John))
Here, Ψ1 = knows(Richard, x), and Ψ2 = knows(Richard, John)
S0 => { knows(Richard, x); knows(Richard, John)}
SUBST θ= {John/x}
S1 => { knows(Richard, John); knows(Richard, John)}, Successfully
Unified.
Unifier: {John/x}.
UNIT - II 32