Title: Logische Grundlagen des Software Engineerings
1Logische Grundlagen des Software Engineerings
- Prof. Dr. Jakob Rehof
- Lehrstuhl 14, Software Engineering
2Intuitionistic logic
- Classical logic is about truth
- Intuitionistic logic is about constructibility
- Intuitionistic logic is therefore also called
constructive logic - All statements are classically regarded as either
true or false p v p holds (tertium non datur) - there is 7 sevens somewhere in the decimal
representation of the number - there are irrational p and q such that pq is
rational - Intuitionistic logic, in contrast, requires that
we can construct the objects whose existence we
assert and hence rejects the tertium non datur
principle
3Intuitionistic logic
- L.E.J.Brouwer (1881-1966)
- Arend Heyting (1898-1980)
- Glivenko
- Kolmogorov
- Gentzen
- Gödel
- ...
4BHK-interpretation(informal constructive
semantics)
5BHK-interpretation(informal constructive
semantics)
6BHK-interpretation(informal constructive
semantics)
- Note This informal interpretation can be
formalized in -
- recursion theory Kleenes notion of
realizability - lambda calculus the Curry-Howard isomorphism
7Natural deduction
8Proof trees
9Examples of classical tautologies
Not all of these are intuitionistic theorems!
10Example
--- p ? -p
Write p as p?0. We are to prove (((p?0)?0)?0) ?
(p?0) ((p?0)?0)?0, p, p?0 - p?0
((p?0)?0)?0, p, p?0 - p ---------------------
--------------------------------------------------
-------------------------
((p?0)?0)?0, p, p?0 - 0
-----------------------------------------------
((p?0)?0)?0, p -
(p?0)?0 ((p?0)?0)?0, p - ((p?0)?0)?0
---------------------------------
--------------------------------------------------
--------------
((p?0)?0)?0, p - 0
------------------------------------
((p?0)?0)?0 - p?0
------------------------
---------------
- (((p?0)?0)?0) ? (p?0)
11Algebraic semantics of classical logic
- Boolean semantics
- Set semantics
- Boolean algebra
12Boolean semantics of classical logic
13Set semantics of classical logic
14Set semantics of classical logic
15Semantics of classical logic
16Boolean algebra
17Algebraic semantics of intuitionistic logic
- Lindenbaum algebra
- Heyting algebra
- Topological semantics
- Algebraic semantics
- Kripke semantics
18Lindenbaum algebra
19Lindenbaum algebra
20Lindenbaum algebra
21Lindenbaum algebra
22Lindenbaum algebra
23The problem with complement
24Heyting algebra
25Heyting algebra
26Topological semantics
27Algebraic semantics of intuitionistic logic
28Algebraic semantics
29Algebraic semantics
30Example!
31Example!
32Characterization
33Characterization
Property 1. shows that propositional
intuitionistic logic is decidable (in doubly
exponential space). In fact, as we will see
later, it can be decided in polynomial space.
34Kripke model
35Kripke model
Implied rule for negation
36Example
Kripke model
p
c1
c0
q
c2
- In this Kripke model we have
- c0 - - - (p v q)
- c0 - (p?q)?q
- not c0 - (p v q)
37Kripke model
Soundness and completeness of Kripe semantics
Proof By turning every Heyting algebra into a
Kripke model, using prime filter construction.
38Disjunction property
39Implicational fragment
Note that this requires a proof (right-to-left
implication)!
Conservativity over the implicational fragment