Knowledge Representation and Ontologies
Categories, events, mental objects, expert systems, and robotics.
Knowledge Representation
The previous chapters described the technology for knowledge-based agents: syntax, semantics, and proof theory of logic. This chapter addresses what content to put into an agent’s knowledge base – how to represent facts about the world.
Ontological Engineering
In toy domains, the choice of representation is not critical. Complex domains such as Internet shopping or driving a car require more general and flexible representations. Creating these representations, concentrating on general concepts such as Events, Time, Physical Objects, and Beliefs, is called ONTOLOGICAL ENGINEERING.
Upper Ontology
An UPPER ONTOLOGY is a general-purpose framework of concepts that organises everything in the world into a hierarchy of categories. It serves as a top-level structure from which domain-specific ontologies can be derived. Major examples include:
CYC: Built by a team of trained ontologist/logicians; contains over 150,000 concepts.
SUMO: Suggested Upper Merged Ontology ( 1000 terms in the upper level, linked to 20,000+ domain-specific terms).
OWL: Web Ontology Language – a description logic for the Semantic Web.
The general framework of concepts is drawn with general concepts at the top and specific concepts below.

Categories and Objects in Ontological Engineering
In ontological engineering, CATEGORIES organise objects into classes. Categories support inheritance, prediction, and reasoning. Objects are members of categories; categories can be subcategories of other categories.
A general-purpose ontology has two distinguishing characteristics:
It should be applicable in any special-purpose domain (with the addition of domain-specific axioms).
In demanding domains, different areas of knowledge must be unified because reasoning may involve several areas simultaneously.
Upper Ontology Examples
CYC contains concepts like “OLED Display” and “iPhone” as types of “cellular phone”, which is a type of “consumer electronics”.
DBPEDIA extracts structured data from Wikipedia infoboxes – 2.6 million concepts with 100 facts per concept.
OWL supports inferences over RDF triples on the Semantic Web.
Categories and Objects
The organisation of objects into categories is a vital part of knowledge representation. Interaction with the world occurs at the level of individual objects, but much reasoning takes place at the level of categories.
Category and Reification
A CATEGORY is a class or collection of objects that share common properties. Categories can be represented in first-order logic either as predicates (e.g., $Basketball(b)$) or as reified objects (e.g., $b \in Basketballs$). REIFICATION is the process of turning a proposition into an object – from the Latin res, meaning “thing”.
Subcategory and Inheritance
A SUBCATEGORY is a category that is a subset of another category. We write $Basketballs \subset Balls$ to say that Basketballs is a subcategory of Balls. INHERITANCE allows properties of a supercategory to be automatically inferred for all its members and subcategories.
Taxonomy
A TAXONOMY (or taxonomic hierarchy) is a hierarchical organisation of categories through subclass relations. Taxonomies have been used for centuries in biology, library science (Dewey Decimal system), and commerce.
Figure: A taxonomic hierarchy showing subcategory relationships.
Disjoint, Exhaustive Decomposition, and Partition
\(Disjoint(s) \iff (\forall c_1, c_2 \; c_1 \in s \land c_2 \in s \land c_1 \neq c_2 \Rightarrow Intersection(c_1, c_2) = \{\})\) \(ExhaustiveDecomposition(s, c) \iff (\forall i \; i \in c \iff \exists c_2 \; c_2 \in s \land i \in c_2)\) \(Partition(s, c) \iff Disjoint(s) \land ExhaustiveDecomposition(s, c)\)
Composite Object and Bunch
A COMPOSITE OBJECT is an object composed of parts held together by structural relations. The $PartOf$ relation is transitive and reflexive. A BUNCH denotes the composite object consisting of all elements of a set as parts (not elements). $BunchOf({Apple_1, Apple_2, Apple_3})$ is the composite object with the three apples as parts.
Natural Kinds and Measure
NATURAL KINDS are categories that lack strict logical definitions (e.g., tomatoes, games). They are characterised by typical features rather than necessary and sufficient conditions. A MEASURE is a value assigned to a property such as height, mass, or cost. Measures use units functions: $Length(L_1) = Inches(1.5) = Centimeters(3.81)$.
Count Nouns vs. Mass Nouns
COUNT NOUNS refer to individual objects that can be counted (e.g., “an aardvark”, “a theorem”). MASS NOUNS (or substances) refer to stuff that cannot be individuated (e.g., “butter”, “water”). Any part of a mass noun instance is also an instance of the same category. Properties that are retained under subdivision are INTRINSIC (density, colour); those that change are EXTRINSIC (weight, shape).
Categories and Objects Examples
Category: $BB_9 \in Basketballs$ – a specific basketball belongs to the category.
Subcategory: $Basketballs \subset Balls$ – all basketballs are balls.
Inheritance: $(x \in Basketballs) \Rightarrow Spherical(x)$ – all basketballs are spherical.
Partition: $Partition({Males, Females}, Animals)$ – every animal is exactly one sex.
Bunch: The apples in this bag weigh two pounds; the bunch has weight, the set does not.
Natural Kind: $x \in Typical(Tomatoes) \Rightarrow Red(x) \land Round(x)$ – typical tomatoes are red and round, but some are not.
Events
Actions and events change the world over time. While situation calculus handles discrete, instantaneous actions, event calculus provides a more general formalism.
Event Calculus
EVENT CALCULUS is a formalism for reasoning about actions and their effects over time. It reifies both fluents and events. The key predicates are:
$T(f, t)$: Fluent $f$ is true at time $t$.
$Happens(e, i)$: Event $e$ happens over time interval $i$.
$Initiates(e, f, t)$: Event $e$ causes fluent $f$ to start holding at time $t$.
$Terminates(e, f, t)$: Event $e$ causes fluent $f$ to cease holding at time $t$.
\(Happens(e, (t_1, t_2)) \land Initiates(e, f, t_1) \land \neg Clipped(f, (t_1, t)) \land t_1 < t \Rightarrow T(f, t)\) \(Happens(e, (t_1, t_2)) \land Terminates(e, f, t_1) \land \neg Restored(f, (t_1, t)) \land t_1 < t \Rightarrow \neg T(f, t)\)

Discrete Events, Process, and Liquid Event
DISCRETE EVENTS
have a definite structure with a beginning, middle, and end (e.g., a trip from San Francisco to Washington).
PROCESS
categories (or LIQUID EVENT categories) are events that happen over any subinterval of their occurrence. If a process happens over an interval, it also happens over any subinterval.
TEMPORAL SUBSTANCE
is another name for liquid events. SPATIAL SUBSTANCE refers to physical stuff like butter.
Conceptual Dependency (CD)
CONCEPTUAL DEPENDENCY (CD), developed by Roger Schank, is a representation scheme for natural language meaning. It decomposes actions into a small set of primitive actions.
Conceptual Dependency
CONCEPTUAL DEPENDENCY (CD) is a representation scheme that represents the meaning of natural language sentences at a primitive, language-independent level. CD actions have specific case frames (slots) such as object, source, destination, and instrument.
CD Primitive Actions
CD defines a small set of PRIMITIVE ACTIONS from which all other actions are composed:
ATRANS: Transfer of an abstract relationship (e.g., “give”, “take”, “own”).
PTRANS: Physical transfer of an object (e.g., “go”, “move”, “put”).
MTRANS: Transfer of mental information (e.g., “tell”, “remember”, “forget”).
MBUILD: Building new information from existing information (e.g., “decide”, “conclude”).
INGEST: Ingesting something (e.g., “eat”, “drink”).
EXPEL: Expelling something (e.g., “spit”, “sweat”).
PROPEL: Applying force (e.g., “push”, “pull”).
MOVE: Movement of a body part (e.g., “raise arm”).
GRASP: Grasping an object (e.g., “hold”, “grab”).
ATTEND: Attending to a stimulus (e.g., “see”, “hear”).
Ontological Building Blocks of CD
CD uses four basic ONTOLOGICAL BUILDING BLOCKS:
ACTs: The primitive actions (ATRANS, PTRANS, etc.).
PPs: Picture Producers – physical objects (nouns).
AAs: Action Aiders – modifiers of actions (adverbs).
PAs: Picture Aiders – modifiers of objects (adjectives).

CD Representation Examples
ATRANS (transfer of possession):
“John gave a book to Mary.”
John $\Leftrightarrow$ ATRANS $\leftarrow$ Object: Book
$\leftarrow$ From: John $\rightarrow$ To: MaryPTRANS (physical transfer):
“John went to the store.”
John $\Leftrightarrow$ PTRANS $\leftarrow$ Object: John
$\leftarrow$ From: Location$_1$ $\rightarrow$ To: StoreMTRANS (mental transfer):
“John told Mary the news.”
John $\Leftrightarrow$ MTRANS $\leftarrow$ Object: News
$\leftarrow$ From: John’s Mind $\rightarrow$ To: Mary’s Mind
Mental Events and Mental Objects
Agents need knowledge about beliefs – both their own and those of others. This enables reasoning about what others know, planning communication, and controlling inference.
Propositional Attitude
A PROPOSITIONAL ATTITUDE is a mental state that an agent has toward a proposition. Examples include Believes, Knows, Wants, Intends, and Informs. These attitudes do not behave like normal predicates because they are referentially opaque.
Referential Transparency
REFERENTIAL TRANSPARENCY is the property that the truth of a statement depends only on the objects referred to, not on how they are described. Propositional attitudes like knows and believes violate this – we want REFERENTIAL OPACITY: the terms used matter because agents may not know which terms are co-referential.
Modal Logic and Possible Worlds
MODAL LOGIC extends first-order logic with modal operators to handle propositional attitudes. $K_A P$ means “Agent $A$ knows $P$”. The semantics uses POSSIBLE WORLDS: a model consists of a collection of worlds connected by ACCESSIBILITY RELATIONS. A knowledge atom $K_A P$ is true in world $w$ if and only if $P$ is true in every world accessible from $w$.

Logical Omniscience
LOGICAL OMNISCIENCE is the property that if an agent knows a set of axioms, it knows all consequences of those axioms. This is an assumption of modal logic that is problematic for belief, because real agents have finite reasoning capacity. Limited rationality attempts to address this by restricting the number of reasoning steps or computation time.
Scripts
Scripts
A SCRIPT is a structured representation of a stereotypical sequence of events in a particular context. Developed by Roger Schank, scripts organise knowledge about familiar situations (e.g., going to a restaurant, visiting a doctor). Components include:
Entry Conditions: Conditions that must hold for the script to be activated.
Roles: Participants in the script.
Props: Objects used in the script.
Scenes: Ordered sequence of events.
Results: Outcomes of the script.

ICPC Organising Script
Script for organising an ICPC (International Collegiate Programming Contest) at a university:
Entry Conditions: University has computing facilities, faculty approval obtained, budget allocated.
Roles: Contest Director, Problem Setter, Judge, Technical Support, Volunteers, Participants.
Props: Computers, contest platform, problem statements, scoreboard, certificates.
Scenes:
Registration: Teams register and receive credentials.
Briefing: Rules and environment explained.
Contest: Teams solve problems (typically 5 hours).
Judging: Solutions are tested and scored.
Closing: Winners announced, certificates distributed.
Results: Teams ranked by problems solved, tie-breaking by time.
Reasoning Systems for Categories
Categories are the primary building blocks of large-scale knowledge representation. Two closely related families of systems support category reasoning: semantic networks and description logics.
Multiple Inheritance and Default Value
MULTIPLE INHERITANCE occurs when an object belongs to more than one category, or a category is a subset of more than one other category. The inheritance algorithm may find conflicting values. A DEFAULT VALUE is a property assumed to hold for all members of a category unless contradicted by more specific information.
Overriding
OVERRIDING is the process by which a more specific value replaces a default value inherited from a supercategory. In semantic networks, the inheritance algorithm follows links upward from the object and stops as soon as it finds a value – specific information takes precedence over general defaults.
Description Logic
DESCRIPTION LOGIC is a formalism designed to describe definitions and properties of categories. Key inference tasks are SUBSUMPTION (checking if one category is a subset of another by comparing definitions) and CLASSIFICATION (checking whether an object belongs to a category).

Frame Structures
Frame Structures
A FRAME is a data structure for representing a stereotyped concept or object. Developed by Marvin Minsky, frames organise knowledge into slots with fillers. Each frame represents a concept, and slots represent properties or relationships. Frames support inheritance through a class hierarchy.
Key elements:
Frame Name: Identifies the concept.
Slots: Attributes or relations of the concept.
Fillers: Values of slots (can be other frames, numbers, strings, or procedures).
Procedural Attachment: Procedures attached to slots for computing values.

Frame Structure Example
Frame for a “Student” in a university knowledge base:
In LISP, property lists implement frame-like structures:
1
2
3
4
(setf (get 'john 'name) "John Smith")
(setf (get 'john 'age) 21)
(setf (get 'john 'department) 'cse)
(setf (get 'john 'gpa) 3.75)
Associative Networks
Associative Networks
An ASSOCIATIVE NETWORK is a graph representation of knowledge where nodes represent concepts and edges represent associations between them. Nodes may represent objects, categories, or events. Edges are labelled with relation types such as isa, has-part, belongs-to, or domain-specific relations. Associative networks support spreading activation for retrieval and inheritance for inference.
Truth Maintenance Systems (TMS)
Truth Maintenance System
A TRUTH MAINTENANCE SYSTEM (TMS) manages knowledge updates and belief revision. It keeps track of dependencies between sentences and automatically retracts conclusions when their justifications become invalid. TMS ensures the knowledge base remains consistent when beliefs change.

Problem Solver with TMS
The PROBLEM SOLVER generates new inferences and communicates them to the TMS. The TMS records justifications for each inference. When the Problem Solver retracts a belief, the TMS determines which derived sentences must also be retracted based on their justifications.
SL, JTMS, and ATMS
SUPPORT LISTS (SL)
are lists of justifications attached to each sentence, consisting of the set of sentences from which it was inferred.
JTMS (Justification-Based TMS)
maintains a single current state. Each sentence is labelled in or out. Retraction removes sentences whose justifications are no longer valid.
ATMS (Assumption-Based TMS)
represents all hypothetical states simultaneously. Each sentence has a label consisting of sets of assumptions that would make it true.
TMS Example
Given KB: ${P, P \Rightarrow Q}$:
$P$ is asserted with justification ${assumed}$.
$Q$ is derived with justification ${P, P \Rightarrow Q}$.
If $P$ is retracted, $Q$ has no remaining justification and is marked out.
If $Q$ also had justification ${R, R \Rightarrow Q}$ and $R$ is still true, $Q$ remains in.
Reasoning with Default Information
Most real-world knowledge has exceptions. Default reasoning allows agents to jump to conclusions in the absence of contrary evidence.
Nonmonotonicity
NONMONOTONICITY is the property that a set of beliefs does not grow monotonically over time as new evidence arrives. Unlike standard logic (where $KB \models \alpha$ implies $KB \land \beta \models \alpha$), nonmonotonic logics allow conclusions to be retracted when new information is added.
Circumscription
CIRCUMSCRIPTION (McCarthy, 1980) assumes that certain predicates are “as false as possible” – false for every object except those known to be true. It uses an $Abnormal$ predicate: \(Bird(x) \land \neg Abnormal_1(x) \Rightarrow Flies(x)\) Circumscribing $Abnormal_1$ allows concluding $Flies(Tweety)$ from $Bird(Tweety)$ unless $Abnormal_1(Tweety)$ is asserted.
Model Preference and Prioritized Circumscription
MODEL PREFERENCE logics entail a sentence if it is true in all preferred models. For circumscription, one model is preferred over another if it has fewer abnormal objects. PRIORITIZED CIRCUMSCRIPTION gives precedence to minimising certain predicates over others – e.g., religious beliefs taking precedence over political beliefs in the Nixon diamond.
Default Logic
DEFAULT LOGIC (Reiter, 1980) uses DEFAULT RULES of the form: \(P : J_1, \ldots, J_n / C\) where $P$ is the prerequisite, $C$ is the conclusion, and $J_i$ are justifications (if any can be proven false, the conclusion cannot be drawn). An EXTENSION is a maximal set of consequences of a default theory.

Belief Revision
BELIEF REVISION is the process of retracting previously held beliefs when new information contradicts them. It contrasts with BELIEF UPDATE, which occurs when the world changes. Belief revision must handle dependencies: retracting $P$ requires retracting everything inferred from $P$ unless those inferences have other justifications.
Default Reasoning Examples
Birds fly: $Bird(x) : Flies(x) / Flies(x)$. Tweety is a bird; conclude Tweety flies. If Tweety is a penguin, the default is overridden.
Nixon diamond: Nixon is both a Quaker (default pacifist) and a Republican (default non-pacifist). Two extensions: one where Nixon is a pacifist, one where he is not.
Cars have four wheels: Default conclusion unless evidence of a missing wheel is observed.
Expert Systems
Expert System
An EXPERT SYSTEM is a computer system that emulates the decision-making ability of a human expert in a specific domain. It uses knowledge represented as rules to solve problems that normally require human expertise.
Characteristics:
Domain-specific knowledge encoded in IF–THEN rules.
Can explain its reasoning.
Handles uncertainty and incomplete information.
Performs at or near the level of human experts.
Separates knowledge from inference (knowledge base vs. inference engine).

Expert System Applications
MYCIN: Medical diagnosis of bacterial infections (Stanford, 1970s). Outperformed some human specialists.
DENDRAL: Interpretation of mass spectrometer data for chemical analysis.
XCON: Configuration of DEC computer systems (saved millions annually).
PROSPECTOR: Geological exploration for mineral deposits.
Knowledge Engineering and Techniques
Knowledge Acquisition
KNOWLEDGE ACQUISITION is the process of extracting and structuring knowledge from human experts, documents, or data sources for use in a knowledge-based system. It is often the most difficult and time-consuming part of building expert systems.
General Learning Model involves:
Knowledge is elicited from experts (interviews, protocol analysis).
Knowledge is encoded into a formal representation (rules, frames, logic).
The knowledge base is tested and refined.
Performance feedback leads to further acquisition.
Learning Types
ANALOGY
Learning by mapping knowledge from a known domain to a new domain. Example: understanding electric circuits by analogy with water flow.
INDUCTION
Learning general rules from specific examples. Example: inferring “all swans are white” from observing many white swans.
MEMORISATION
Storing facts directly without generalisation. Example: remembering that “Paris is the capital of France”.
DIRECT INSTRUCTION
Learning from explicit teaching. A teacher provides knowledge in a structured form.
Factors Affecting Learning Performance
Key factors that affect learning performance:
Quality of Training Data: Noisy, incomplete, or biased data degrades learning.
Amount of Training Data: More data generally improves performance up to a point.
Representation: How knowledge is encoded affects what can be learned.
Feedback: Timely and accurate feedback improves learning outcomes.
Prior Knowledge: Existing knowledge can accelerate or bias new learning.
Computational Resources: Time and memory constraints limit learning complexity.
Knowledge Engineering Examples
Analogy: A student learning physics uses analogies to water flow when learning about electrical circuits.
Induction: A medical diagnosis system learns rules from patient records: “Fever AND Cough $\Rightarrow$ Flu”.
Memorisation: A geography tutor stores “Dhaka is the capital of Bangladesh” as a fact.
Direct Instruction: A professor teaches students the rules of predicate logic.
Pattern Recognition
Pattern Recognition
PATTERN RECOGNITION is the process of identifying regularities in data and classifying them into categories. It involves sensing the environment, extracting features, and making decisions about the category of the input pattern.

Decision-Theoretic Classification
DECISION-THEORETIC CLASSIFICATION uses statistical decision theory to classify patterns. It computes the probability of each class given the observed features and selects the class with minimum expected risk: \(\text{Choose } C_i \text{ if } P(C_i \mid x) > P(C_j \mid x) \text{ for all } j \neq i\) where $x$ is the feature vector and $P(C_i \mid x)$ is the posterior probability of class $C_i$.
Clustering
CLUSTERING is an unsupervised learning technique that groups similar patterns together without predefined class labels. Clusters are formed such that intra-cluster similarity is maximised and inter-cluster similarity is minimised. K-means and hierarchical clustering are common methods.
Pattern Recognition Examples
Optical Character Recognition (OCR): Sensing scanned text, extracting features (strokes, curves), classifying characters.
Speech Recognition: Sensing audio signals, preprocessing (noise filtering), extracting features (MFCCs), classifying phonemes.
Clustering: Grouping customer purchase data into market segments without predefined categories.
Computer Vision vs. Human Vision
Computer Vision
COMPUTER VISION is the field of AI that enables computers to extract meaningful information from digital images and videos. It includes tasks such as object detection, recognition, tracking, and scene reconstruction.
| Aspect | Computer Vision | Human Vision |
|---|---|---|
| Processing | Sequential, algorithmic, programmed | Parallel, subconscious, learned |
| Adaptability | Requires retraining for new tasks | Highly adaptive, learns from few examples |
| Speed | Fast for specific tasks (object detection in ms) | Fast but slower for precise measurements |
| Accuracy | Highly accurate on trained categories | Prone to illusions, fatigue, bias |
| Feature Detection | Can detect beyond visible spectrum (IR, UV) | Limited to visible spectrum |
| Context | Struggles with context and ambiguity | Excellent at contextual understanding |
| Training Data | Requires thousands of labelled examples | Learns from few examples |
| Robustness | Sensitive to lighting, angle, occlusion | Robust to variations in viewing conditions |
Comparison between Computer Vision and Human Vision.
Vision System Strengths
Computer Vision Strengths: Consistent performance, works in hazardous environments, can process non-visible wavelengths (infrared, X-ray).
Human Vision Strengths: General-purpose understanding, handles novel situations, minimal training required, integrated with other senses.
Computer Vision Weaknesses: Brittleness to domain shift, requires large datasets, poor at common-sense reasoning.
Human Vision Weaknesses: Fatigue, limited to visible light, subjective interpretation, optical illusions.
Robotics
Robotics Engineering
ROBOTICS ENGINEERING is the interdisciplinary field that combines mechanical engineering, electrical engineering, and computer science to design, build, and operate robots. A ROBOT is a programmable machine capable of carrying out actions autonomously or semi-autonomously.
Scope includes: industrial automation, service robots, medical robots, autonomous vehicles, space exploration, and human-robot interaction.
Asimov’s Three Laws of Robotics
Isaac Asimov proposed three fundamental laws governing robot behaviour:
First Law: A robot may not injure a human being or, through inaction, allow a human being to come to harm.
Second Law: A robot must obey orders given by human beings except where such orders would conflict with the First Law.
Third Law: A robot must protect its own existence as long as such protection does not conflict with the First or Second Law.
Key Components of a Robot
The four essential components of a robot:
Sensors: Perceive the environment (cameras, LIDAR, sonar, tactile sensors, encoders).
Actuators: Execute actions (motors, servos, hydraulic pistons, grippers).
Controller: Processes sensor data and makes decisions (CPU, microcontroller, software).
Power Supply: Provides energy (batteries, solar panels, fuel cells, electrical mains).

Robotics Examples
Industrial Robots: Welding arms in car manufacturing (KUKA, FANUC).
Service Robots: Roomba vacuum cleaner, delivery drones.
Medical Robots: Da Vinci surgical system for minimally invasive surgery.
Autonomous Vehicles: Self-driving cars (Waymo, Tesla) using LIDAR, cameras, and AI controllers.
Exploration Robots: Mars rovers (Perseverance, Curiosity) operating autonomously on other planets.
The Internet Shopping World
Internet Shopping Agent
An INTERNET SHOPPING AGENT is a knowledge-based system that helps a buyer find product offers on the Internet. It uses an ontology of product categories, follows hyperlinks to find relevant pages, extracts product information, and compares offers.
The agent’s tasks:
Collect product offers relevant to a query by following links from online stores.
Extract product information (price, specifications) using wrappers.
Compare offers and identify undominated choices.
Present the best options to the buyer.
The ontology includes a hierarchy of product categories:
A product offer is relevant if it can be reached by a chain of relevant category links: \(\begin{aligned} RelevantChain(start, end, query) \iff & (start = end) \; \lor \\ & (\exists u, text \; LinkText(start, u, text) \land {} \\ & \quad RelevantCategoryName(query, text) \land {} \\ & \quad RelevantChain(u, end, query)) \end{aligned}\)
Shopping Agent Example
Query: “laptops”:
Start at ExampleStore homepage ($example.com$).
Follow link “Computers” (names supercategory $Computers$).
Follow link “Laptops” (names $LaptopComputers$).
Extract offer page: “IBM ThinkBook 970, $399, 1.2GHz, 2GB RAM, 250GB disk.”
Compare with other offers. If Offer A is cheaper and faster than Offer C, C is dominated.
Return undominated offers to the buyer.
In this chapter we showed how to use first-order logic and specialised representation systems to represent the most important aspects of the real world: categories, objects, events, time, beliefs, and shopping. The same general ontology can be applied across many domains, and the reasoning systems we described – semantic networks, description logics, nonmonotonic logics, and truth maintenance systems – provide the technology for efficient inference with this knowledge.