Title: Mathematical Logic
1Mathematical Logic
- Data and Knowledge Representation
Originally by Alessandro Agostini and Fausto
Giunchiglia Modified by Fausto Giunchiglia, Rui
Zhang and Vincenzo Maltese
2Outline
- Modeling and logical modeling
- Domain
- Language
- Theory
- Model
- Languages
- Logic formal languages
- Using Logic
- Specification
- Automation
- Expressiveness
- Efficiency VS. Complexity
- Decidability
3Modeling the world
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
A model is an abstraction of a part of the world
INDIVIDUAL
SET
RELATION (e.g. Near, Sister)
DOMAIN (e.g. the girls in foreground)
4Modeling
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
Language L
Theory T
Data Knowledge
World
Mental Model
Domain D
Model M
Meaning
SEMANTIC GAP
5Modeling explained
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- World the phenomenon we want to describe
- Domain the abstract relevant elements in the
real world - Mental Model what we have in mind. It is the
first abstraction of the world (subject to the
semantic gap) - Language the set of words and rules we use to
build sentences used to express our mental model - Theory the set of sentences (constraints) about
the world expressed in the language that limit
the possible models - Model the formalization of the mental model,
i.e. the set of true facts in the language, in
agreement with the theory - Semantic gap the impossibility to capture the
entire reality - NOTE this does not necessarily need to be in
formal semantics
6Mental models
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
There is a monkey in a laboratory with some
bananas hanging out of reach from the ceiling. A
box is available that will enable the monkey to
reach the bananas if he climbs on it. The monkey
and box have height Low,
but if the monkey climbs onto the box he will
have height High, the same as the bananas. ...
NOTE each picture is a different model
7Example of informal Modeling
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
Mental Model
Model M
Theory T
Language L
Domain D
World
L natural language D monkey, banana,
tree T If the monkey climbs on the tree, he
can get the banana M The monkey actually
climbs on the tree and gets the banana
SEMANTIC GAP
8Logical Modeling
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
Language L
Theory T
Data Knowledge
Interpretation
Modeling
Entailment
World
Mental Model
?
I
Realization
Domain D
Model M
Meaning
SEMANTIC GAP
NOTE the key point is that in logical modeling
we have formal semantics
9Logical Modeling explained
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- Domain relevant objects
- Logical Language the set of formal words and
rules we use to build complex sentences - Interpretation the function that associates
elements of the language to the elements in the
domain - Theory / Knowledge Base (KB) the set of facts
which are always true (in data and knowledge) - Model the set of true facts in the language
describing the mental model (the part of the
world observed), in agreement with the theory - Truth-relation / logical entailment (?)
deduction, reasoning, inference
10Intensional vs Extensional semantics
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- Intensional I can only express the fact that a
given proposition is true or false
Bananas are yellow Bananas have a curve
shape All men are mortal man ?
mortal GirlsPlaying True
- Extensional I provides the objects of the domain
corresponding to the proposition
The author of Romeo and Juliet is
Shakespeare author(RG, Shakespeare) GirlsPlayin
g Mary, Sara, Julie
11Example of formal (intentional) modeling
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
Mental Model
Model M
Theory T
Language L
Domain D
World
L MClimbs, MGetBanana, ?, ?, ? D T, F T
? MClimbs? MGetBanana A possible model
M I(MClimbs) T I(MGetBanana) T
SEMANTIC GAP
12Example of formal (extensional) modeling
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
Mental Model
Model M
Theory T
Language L
Domain D
World
L Monkey, Climbs, GetBanana, ?, ?, ? D
Cita, Banana1, Tree1 T ? (Monkey ?
Climbs) ? GetBanana A possible model
M I(Monkey) Cita I(Climbs) (Cita,
Tree1) I(GetBanana) (Cita, Banana1)
SEMANTIC GAP
13Language
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- A (usually finite) set of words (the alphabet)
and rules to compose them to build correct
sentences - e.g. Monkey and GetBanana are words
- e.g. Monkey ? GetBanana is a sentence (rule A ?
B) - A tool for codifying our (mental) model (what we
have in mind) - Sentences (syntax) with an intended meaning
(semantics) - e.g. with the word Monkey we mean
14Language and correctness
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- We need an algorithm for checking correctness of
the sentences in a language
- We say that a language is decidable if it is
possible to create such a tool that in finite
time can take the decision
15Syntax and Semantics
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- Syntax the way a language is written
- Syntax is determined by a set of rules saying how
to construct the expressions of the language from
the set of atomic tokens (i.e., terms,
characters, symbols). - The set of atomic tokens is called alphabet of
symbols, or simply the alphabet). - Semantics the way a language is interpreted
- It determines the meaning of the syntactic
constructs (expressions), that is, the
relationship between syntactic constructs and the
elements of some universe of meanings (the
intended model). - Such relationship is called interpretation.
16Example of Syntax and Semantics
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- Suppose we want to represent the fact that Mary
and Sara are near each other.
ENGLISH Mary is near Sara. formal syntax, informal semantics
SYMBOLIZED ENGLISH near(M,S) near(Mary, Sara) formal syntax, informal semantics
LOGICS with an interpretation function I near by I it means near as spatial relation M by I it means Mary the girl S by I it means Sara the girl formal syntax, formal semantics
17Formal vs. Informal languages
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- Language Syntax (what we write) Semantics
(what we mean) - Formal syntax
- Infinite/finite (always recognizable) alphabet
- Finite set of formal constructors and building
rules for phrase construction - Algorithm for correctness checking (a phrase in a
language) - Formal Semantics
- The relationship between syntactic constructs in
a language L and the elements of an universe of
meanings D is a (mathematical) function I L ?
pow(D) - Informal syntax/semantics
- the opposite of formal, namely the absence of the
elements above.
18Levels of Formalization
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
Both Syntax and Semantics can be formal or
informal.
ProgrammingLanguages
Diagrams
Logics
NL
Level1
Leveln
EnglishItalianRussianHindi...
PLFOLDL...
SQL...
ERUML...
FORMALITY
informal
semi-formal
formal
18
19Informal languages natural language
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- Let us try to recognize relevant entities,
relations and properties in the NL text below - The Monkey-Bananas (MB) problem by McCarthy, 1969
- There is a monkey in a laboratory with some
bananas hanging out of reach from the ceiling. A
box is available that will enable the monkey to
reach the bananas if he climbs on it. The monkey
and box have height Low, but if the monkey climbs
onto the box he will have height High, the same
as the bananas. ... - Question
- How shall the monkey reach the bananas?
20Languages with formal syntax
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- In the Entity-Relationship (ER) Model Chen 1976
the alphabet is a set of graphical objects, that
are used to construct schemas (the sentences).
Relation
Attribute
Entity
21Languages with formal syntax and semantics
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- Logics has two fundamental components
- L is a formal language (in syntax and semantics)
- I is an interpretation function which maps
sentences into a formal model M (over all
possible ones) with a domain D - Domain D T, F or D o1, , on
- Language L A,?,?,?
- Interpretation I L ? D is intensional or I L ?
pow(D) is extensional - Theory a set of sentences which are always true
in the language (facts) - Model the set of true facts in the language
describing the mental model (the part of the
world observed), in agreement with the theory
22Theory
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- A theory T is set of facts
- A fact written in the language L defines a piece
of knowledge (something true) about the domain D - A theory can be seen as a set of constraints on
possible models to filter out all undesired ones
23Data and Knowledge
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- Knowledge is factual information about what is
true in general (axioms and theorems) e.g.
singers sing songs - Data is factual information about specific
individuals (observed knowledge) e.g. Michael
Jackson is a singer - A finite theory T is called
- An ontology if it contains knowledge only
- A knowledge base (KB) if it contains knowledge
and data - A database (DB) if it only contains data.
- A database its schema is the simplest kind of
knowledge base - NOTE Sometimes the terms Ontology and KB are
used interchangeably
24Model
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- A model M is an abstract (in mathematical sense)
representation of the intended truths via
interpretation I of the language L - e.g. Madonna is a singer, Sting is a singer,
- M ? T (M entails T) iff M ? A, for each formula A
in T - A model M of a theory T is any interpretation
function that satisfies all the facts in T (M
satisfies T) - There can be many models satisfying the theory T.
They are a subset of all possible interpretation
functions over L. - In case there are no models for T, we say that
the theory T is unsatisfiable.
25Usages of Representation Languages
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- The two purposes in modeling
- Specification
- Representation of the problem at the proper level
of abstraction - Allow informal/formal syntax and informal/formal
semantics - Automation (Automated Reasoning)
- Computing consequences or properties of the
chosen specifications - It requires formal semantics.
- Logics have formal syntax and formal semantics!
26Why Natural Languages?
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
Used for Advantages Disadvantages
For informal specification Often used at the very beginning of problem solving, when we need a direct, flexible, well-understood language and the problem is still largely unclear Useful to interact with users Semantics is informal, largely ambiguous Pragmatically inefficient for automation
27Why Diagrams?
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
Used for Advantages Disadvantages
To provide more structured and organized specification than natural languages Informal/formal syntax (depends on the kind of diagram) Largely structured and organized usually used in representation with unified languages when things are non-trivial or more precision is required w.r.t. Natural Language Useful to interact with users Semantics is informal, largely ambiguous Pragmatically inefficient for automation
27
28Why Logic?
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
Used for Advantages Disadvantages
Formal specification Automation Well-understood with formal syntax and formal semantics we can better specify and prove correctness Pragmatically efficient for automation exploiting the explicitly codified semantics reasoning services It can be hardly used to interact with users An exponential grow in cost (computational, man power)
28
29Logics for Automation reasoning
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- Logics provides a notion of deduction
- axioms, deductive machinery, theorem
- Deduction can be used to implement reasoners
- Reasoners allow inferring conclusions from known
facts (i.e., a set of premises, premises can be
axioms or theorems). - From implicit knowledge to explicit knowledge
- Reasoning services
- Model Checking (EVAL) Is a sentence ? true in
model M? - Satisfiability (SAT) Is there a model M where ?
is true? - Validity (VAL) Is ? true according to all
possible models? - Entailment (ENT) ?1 true implies ?2 true (in all
models)
29
30How to use logical modeling in practice
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- Define a logic
- most often by reseachers
- once for all (not a trivial task!)
- Choose the right logic for the problem
- Given a problem the computer scientist must
choose the right logic, most often one of the
many available - Write the theory
- The computer scientist writes a theory T
- Use reasoning services
- Computer scientists use reasoning services to
solve their programs
30
31An Important Trade-Off
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- There is a trade-off between
- expressive power (expressiveness) and
- computational efficiency provided by a (logical)
language - This trade-off is a measure of the tension
between specification and automation - To use logic for modeling, the modeler must find
the right trade off between expressiveness in the
language for more tractable forms of reasoning
services.
32Examples of Expressiveness
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
LANGUAGE NL SENTENCE FORMULA
Propositional logic Fausto likes skiing I like skiing Fausto-likes-skiing I-like-skiing
Modal logic I believe I like skiing B(I-like-skiing)
First-order logic Every person likes skiing I like skiing Fausto likes skiing ? person.like-skiing(person) like-skiing(I) like-skiing(Fausto)
Description Logic Every person likes cars person ? ? likes.Car
33Efficiency VS. Complexity
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- Efficiency
- Performing in the best possible manner
satisfactory and economical to use Webster - In modeling it applies to reasoning
- In time, space, consumption of resources
- Complexity (or computational complexity) of
reasoning - The difficulty to compute a reasoning task
expressed by using a logic - With degrees of expressiveness, we may classify
the logical languages according to some degrees
of complexity - NOTE When logic is used we always pay a
performance price and therefore we use it when it
is cost-effective
34Decidability
MODELING LOGICAL MODELING LANGUAGES
LOGIC USING LOGIC
- The existence of an effective method to determine
the validity of formulas in a logical language - A logic is decidable if there is an effective
method to determine whether arbitrary formulas
are included in a theory - A decision procedure is an algorithm that, given
a decision problem, terminates with the correct
yes/no answer. - In this course we focus on logics that are
expressive enough to model real problems but are
still decidable
35Appendix Greek letters
?a Alpha ?? Nu
?ß Beta ?? Xi
G? Gamma ?? Omicron
?d Delta ?p Pi
?e Epsilon ?? Rho
?? Zeta Ss? Sigma
?? Eta ?t Tau
T? Theta ?? Upsilon
?? Iota Ff Phi
?? Kappa ?? Chi
?? Lamdba ?? Psi
?µ Mu O? Omega
35