Predicate logic
SET07106 Mathematics for Software Engineering
School of Computing Edinburgh Napier University
Module Leader: Uta Priss
2010
Outline
Predicate logic Proofs
Artificial intelligence
Predicate logic
Propositional logic: “and, or, not” and variables.
Propositional logic does not have quantifiers:
“Allpoodles are dogs.”
“There isat least oneblack swan.”
“Onlysupervisors are allowed to fill in the form.”
“Noperson can solve this problem.”
These sentences cannot be expressed in propositional logic.
Predicate logic
Quantifiers: all, at least one
First order logic: quantifiers for individuals.
“All squirrels eat nuts.”
Second order logic: quantifiers for predicates.
S = “squirrels eat nuts”
“All S involves chewing.”
Third order logic: ...
Syntax and semantics
Predicate logic is a formal language (like a programming language) with rules for
syntax (i.e. how to write expressions) and
semantics (i.e. how to formalise the meaning of expressions).
Syntax: well-formed formulas
I logical symbols: and, or, not, all, at least one, brackets, variables, equality (=), true, false
I predicate and function symbols (for example, Cat(x) for “x is a Cat”)
I term: variables and functions (for example, Cat(x))
I formula: any combination of terms and logical symbols (for example, “Cat(x) and Sleeps(x)”)
I sentence: formulas without free variables (for example, “All x: Cat(x) and Sleeps(x)”)
Semantics: meaning
The meaning of a term or formula is a set of elements. The meaning of a sentence is a truth value.
The function that maps a formula into a set of elements is called an interpretation.
An interpretation maps
an intensional description (formula/sentence) into an extensional description (set or truth value).
Validity
A sentence is ...
I satisfiable if it is true under at least one interpretation.
I valid if it is true under all interpretations.
I invalid if it is false under some interpretation.
I contradictory if it is false under all interpretations.
Example: “All x: Cat(x) and Sleeps(x)”
If this is interpreted on an island which only has one cat that always sleeps, this is satisfiable.
Since not all cats in all interpretations always sleep, the sentence is not valid.
Exercises
Are these sentences satisfiable, valid, invalid or contradictory? If a sentence is satisfiable or invalid, provide an interpretation which makes it true (or false).
I 1 + 1 = 1
I A ∩ B = not(not A ∪ not B)
I All x: ToBe(x) or not ToBe(x)
Axioms
Mathematical theories distinguish between axioms and theorems.
Axioms cannot be proven, but are accepted as facts.
Theorems can be proven from axioms by using logical inference.
An example of using axioms
A Boolean logic is a set with operators: and (∧), or (∨), not (A), the elements “true” and “false” and the axioms:
associativity A ∧ (B ∧ C ) = (A ∧ B) ∧ C A ∨ (B ∨ C ) = (A ∨ B) ∨ C commutativity A ∧ B = B ∧ A A ∨ B = B ∨ A
absorption A ∨ (A ∧ B) = A A ∧ (A ∨ B) = A
distributivity A ∨ (B ∧ C ) = (A ∨ B) ∧ (A ∨ C ) A ∧ (B ∨ C ) = (A ∧ B) ∨ (A ∧ C )
complements A ∨ A = 1 A ∧ A = 0
De Morgan’s law is a theorem which can be proven from the axioms.
Proving de Morgan’s law
A ∨ B = (A ∨ B) ∧ 1
= (A ∨ B) ∧ ((A ∧ B) ∨ A ∧ B)
= (A ∧ A ∧ B) ∨ (A ∧ A ∧ B) ∨ (B ∧ A ∧ B) ∨ (B ∧ A ∧ B)
= 0 ∨ (A ∧ A ∧ B) ∨ 0 ∨ (B ∧ A ∧ B)
= (A ∧ A ∧ B) ∨ (B ∧ A ∧ B)
= ((A ∨ B) ∧ A ∧ B)
= ((A ∨ B) ∧ A ∧ B) ∨ 0
= ((A ∨ B) ∧ A ∧ B) ∨ (A ∧ B ∧ A ∧ B)
= A ∧ B ∧ ((A ∨ B) ∨ (A ∧ B))
= A ∧ B ∧ ((A ∨ B) ∨ (A ∧ B) ∨ (A ∧ B))
= A ∧ B ∧ (((A ∨ (A ∧ B)) ∨ (B ∨ (A ∧ B)))
= A ∧ B ∧ (A ∨ B ∨ B ∨ A)
= A ∧ B ∧ 1 = A ∧ B
Syllogisms
The ancient Greek philosopher Aristotle introduced logical syllogisms.
Premise 1: All humans are mortal.
Premise 2: Socrates is a human.
Conclusion: Therefore, Socrates is mortal.
Logical inference
I Law of excluded middle: either P is true or (not P) is true
I Principle of contradiction: P and (not P) cannot both be true Examples:
? Either you are currently sitting in this class room or not.
? The gender of the baby is either male or female or unknown.
? Either you are wearing shoes or sandals.
? Are you wearing a shirt or a t-shirt? Could be both.
Logical inference
I Modus ponens: (P implies Q) and P is true =⇒ Q is true
I Modus tollens: (P implies Q) and Q is false =⇒ P is false
I Contradiction: P implies (Q is true and false) =⇒ P is false
I Contraposition: (not Q implies not P) =⇒ (P implies Q) Other types of proofs used in mathematics:
mathematical induction, construction, exhaustion, visual proof, ...
Exercise: which of these inferences are valid?
The days are becoming longer.
The nights are becoming shorter if the days are becoming longer.
Hence, the nights are becoming shorter.
The earth is spherical implies that the moon is spherical.
The earth is not spherical.
Hence, the moon is not spherical.
The new people in the neighbourhood have a beautiful boat.
They also have a nice car.
Hence, they must be nice people.
All dogs are carnivorous.
Some animals are dogs.
Reasoning (Charles Sanders Peirce)
Induction: Every dog I know has ears. =⇒ Dogs have ears.
(from specific examples to general)
Deduction: Dogs bark. Bobby is a dog. =⇒ Bobby barks.
(from general to specific)
Abduction: Sherlock Holmes: the murderer was left-handed.
Smith is left-handed. =⇒ Smith is the murderer.
(based on shared attributes)
Predicate logic Proofs Artificial intelligence
Exercises: induction, deduction or abduction?
Birds fly. Penguins are birds.
Hence, penguins fly.
All swans on this lake are white.
Hence, all swans are white.
Some dogs are animals.
Some cats are animals.
Hence, some cats are dogs.
Induction and abduction always need to be treated with caution.
Exercises: induction, deduction or abduction?
Birds fly. Penguins are birds.
Hence, penguins fly.
All swans on this lake are white.
Hence, all swans are white.
Some dogs are animals.
Some cats are animals.
Hence, some cats are dogs.
Using deduction in unclear domains can lead to false results.
Induction and abduction always need to be treated with caution.
Artificial intelligence
I The term “artificial intelligence” was coined in 1956 by John McCarthy.
I An attempt to build computer software which has reasoning capabilities similar to humans.
I Processing of natural language.
I Understanding and modelling of spatial, temporal and social situations.
I Knowledge representation and problem solving.
I Many approaches: neural networks, evolutionary algorithms, robots, distributed devices, ...
Knowledge representation
Uses formal languages to represent knowledge.
I Conceptual structures
I Ontologies
I Knowledge bases
I Expert systems
Tasks for knowledge representation systems
I Acquisition: new information is integrated into the system
I Retrieval: existing information is retrieved, query answering
I Reasoning: logical inferences
Reasoning
I Is this concept an element of this class?
I Are concepts, relations and assertions satisfiable/valid?
I Is the knowledge base consistent (i.e. free of contradictions)?
Complexity: the reasoning tasks must not take too much time or computing resources.
Predicate logic Proofs Artificial intelligence
Natural language can be ambiguous
They drank two cups of tea because they were warm.
They drank two cups of tea because they were cold.
Fruit flies like a banana. (Groucho Marx)
=⇒ It is difficult to write software that extracts information from natural language or that translates between different languages.
Natural language can be ambiguous
They drank two cups of tea because they were warm.
They drank two cups of tea because they were cold.
Time flies like an arrow.
Fruit flies like a banana. (Groucho Marx)
=⇒ It is difficult to write software that extracts information from natural language or that translates between different languages.
Programming with logic
I Prolog: declarative, logic programming language
I Lisp: favourite language for artificial intelligence programming
I Smalltalk: object-oriented, dynamically typed, reflective language
I Description logics: knowledge representation languages
I OWL: web ontology language