logique - homepage de thomas pietrzak système complet de connecteurs c ensemble de connecteurs...

69
Logique Logique Propositionnelle Thomas Pietrzak Licence Informatique

Upload: donhi

Post on 16-Sep-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

LogiqueLogique Propositionnelle

Thomas Pietrzak Licence Informatique

Page 2: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Logique propositionnelle

Logique de base

Raisonnements simples

Connecteurs usuels : ET, OU, NON, …

Page 3: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Syntaxe

Page 4: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Variables propositionnelles

Ensemble de variables propositionnelles.

P = {p, q, r, . . . }

Page 5: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Connecteurs logiques

⟘ bottom, absurde

¬ non

∧ et

∨ ou

⇒ implication

⇔ équivalence

Page 6: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Formules propositionnellesEnsemble des formules propositionnel :

Plus petit ensemble qui contient :

Les variables propositionnelles

Si et alors les termes suivants sont aussi des formules :

conjonction

disjonction

implication

équivalence

négation

parenthésage

F0 = {', , . . . }

2 F0' 2 F0

' ^ ' _ ')

',

¬'(')

} formules atomiques

Page 7: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Priorité

L’ordre de priorité des connecteurs est le suivant :

Les connecteurs binaires sont associatifs gauche.

Ex : est interprété comme

¬ > {^,_} > {),,}

' ^ ^ ✓ (' ^ ) ^ ✓

Page 8: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

InductionDémonstration de propriétés des formules

Soit A une propriété. Si :

pour tout

Si et alors , , ,

Si alors et

Alors pour toute formule

A(?)

A(p) p 2 P

A(') A( ) A(' ^ ) A(' _ ) A(') ) A(', )

A(¬') A(('))A(')

A(') ' 2 F0

Page 9: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Exemple contient au moins une variable ou ⟘

est vrai

est vrai pour tout

Si et alors , , et

sont vraies par construction

Si alors et sont vraies de la même manière

Donc pour toute formule

A(?)

A(p) p 2 P

A(') A( ) A(' ^ ) A(' _ ) A(') ) A(', )

A(¬') A(('))A(')

A(') ' 2 F0

A(') = '

Page 10: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Sémantique

Page 11: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Valuation de variable

Une valuation définit la valeur de vérité des variables propositionnelles.

v : P ! {0, 1}

Page 12: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Valuation de formule

Toute valuation se prolonge de façon unique en une valuation sur les formules

propositionnelles :

v J·Kv

J·Kv : F0 ! {0, 1}

Page 13: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Valuation de formule

Elle se définit récursivement sur la structure des formules :

JpKv = v(p)

J?Kv = 0

J(' _ )Kv = max(J'Kv, J Kv)J(' ^ )Kv = min(J'Kv, J Kv)

J(¬')Kv = 1� J'Kv

J(', )Kv = 1 ssi J'Kv = J KvJ(') )Kv = 0 ssi J'Kv = 1 et J Kv = 0

J(')Kv = J'Kv

Page 14: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Exemplev(a) = 0, v(b) = 1

J¬(a _ b) , (¬a ^ ¬b)Kv = 1 ssi J¬(a _ b)Kv = J¬a ^ ¬bKv

J¬(a _ b)Kv = 1� Ja _ bKv= 1�max(JaKv, JbKv)= 1�max(v(a), v(b))

= 1�max(0, 1)

= 1� 1

= 0

J¬(a _ b) , (¬a ^ ¬b)Kv = 1

J¬a ^ ¬bKv = min(J¬aKv, J¬bKv)= min(1� JaKv, 1� JbKv)= min(1� v(a), 1� v(b))

= min(1� 0, 1� 1)

= min(1, 0)

= 0

Page 15: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Table de vérité

La table de vérité d’une formule énumère toutes ses valuations possibles.

p q ¬p p ∨ q

p ∧ q

p ⇒ q

p ⇔ q

0 0 1 0 0 1 1

0 1 1 1 0 1 0

1 0 0 1 0 0 0

1 1 0 1 1 1 1

Page 16: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Propriétés

Page 17: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Satisfiabilité

Une valuation satisfait une formule ssi

est satisfaisable s’il existe une valuation qui la satisfait

v ' J'Kv = 1

'

Page 18: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Satisfiabilité

Une formule est une tautologie, dénoté , ssi pour toute valuation .

Soit un ensemble de formules, est une conséquence sémantique de , dénoté

si est satisfaite par toute valuation qui satisfait toutes les formules de .

v' J'Kv = 1

' � |= '� �

|= '

' �

Page 19: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Équivalence sémantique

Deux formules et sont sémantiquement équivalentes, dénoté ,

ssi pour toute valuation .

Autrement dit :

' ' ⌘

J'Kv = J Kv v

' ⌘ ssi ',

Page 20: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Proposition

La relation ≣ est une relation d’équivalence :

Réflexivité

Symétrie

Transitivité

' ⌘ '

si ' ⌘ alors ⌘ '

si ' ⌘ et ⌘ ✓ alors ' ⌘ ✓

Page 21: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Démonstration

évident

donc

et donc

' ⌘ '

si ' ⌘ alors ⌘ '

si ' ⌘ et ⌘ ✓ alors ' ⌘ ✓

J'Kv = J'Kv

J'Kv = J Kv J Kv = J'Kv

J Kv = J✓Kv J'Kv = J✓KvJ'Kv = J Kv

Page 22: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Propriétés algébriques

Commutativité

Associativité

Distributivité

Idempotence

' _ ⌘ _ ' ' ^ ⌘ ^ ' ', ⌘ , '

' _ ( _ ✓) ⌘ (' _ ) _ ✓ ' ^ ( ^ ✓) ⌘ (' ^ ) ^ ✓ ', ( , ✓) ⌘ (', ) , ✓

' _ ( ^ ✓) ⌘ (' _ ) ^ (' _ ✓) ' ^ ( _ ✓) ⌘ (' ^ ) _ (' ^ ✓)

' ^ ' ⌘ ' ' _ ' ⌘ '

Page 23: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Propriétés algébriquesNeutralité de ⊥

Absorbtion de ⊥

Lois de De Morgan

Double négation

Propriétés de ⇒

'_ ?⌘ '

'^ ?⌘?

¬(' ^ ) ⌘ ¬' _ ¬ ¬(_ ^ ) ⌘ ¬' ^ ¬

¬¬' ⌘ '

') ⌘ ¬' _ ') ⌘ ¬ ) ¬'

Page 24: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système complet

Système complet de connecteurs C

Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant que les connecteurs de C.

Théorème

Les ensembles de connecteurs {⋁, ¬}, {⇒, ¬}, {⋀, ¬} et {⇒, ⊥} sont des systèmes complets.

Page 25: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Formes Normales

Page 26: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Formes normales

Forme normale disjonctive (FND) : disjonction de conjonctions

Littéral : variable propositionnelle ou négation de variable propositionnelle

Forme normale conjonctive (FNC) : conjonction de disjonctions

('1,1 ^ . . .'1,n1) _ · · · _ ('k,1 ^ . . .'k,n1)

('1,1 _ . . .'1,n1) ^ · · · ^ ('k,1 _ . . .'k,n1)

Page 27: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Théorème

Toute formule propositionnelle est équivalente à une FND ou une FNC.

Démonstration : par transformation des formules

Page 28: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Mise en FNC ou FND

1. Éliminer les ⇒

2. Placer les ¬ devant les variables

3. Distribution des ⋀ et ⋁

4. Simplification

A ) B ⌘ ¬A _B

¬¬A ⌘ A

¬(A _B) ⌘ ¬A ^ ¬B

¬(A ^B) ⌘ ¬A _ ¬B

A ^ ¬A ⌘ ? A ^ ? ⌘ ? A ^ ¬? ⌘ A

A _ ¬A ⌘ ¬? A _ ? ⌘ A A _ ¬? ⌘ ¬?

(A _B) ^ C ⌘ (A ^ C) _ (B ^ C)

(A ^B) _ C ⌘ (A _ C) ^ (B _ C)

Page 29: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Exemple

Mettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

Page 30: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Exemple

Mettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

FND

¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A)) =

Page 31: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Exemple

Mettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

FND

¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A)) = ¬(¬A ⋁ B) ⋁ C ⋁ ¬(¬D ⋁ A) suppression des ⇒

A ) B ⌘ ¬A _B

Page 32: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Exemple

Mettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

FND

¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A)) = ¬(¬A ⋁ B) ⋁ C ⋁ ¬(¬D ⋁ A)

= (A ⋀ ¬B) ⋁ C ⋁ (D ⋀ ¬A) déplacement des ¬

¬(A _B) ⌘ ¬A ^ ¬B¬¬A ⌘ A

Page 33: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Exemple

Mettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

FNC

¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A)) =

Page 34: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Exemple

Mettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

FNC

¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A)) = ¬(¬A ⋁ B) ⋁ (C ⋁ ¬(¬D ⋁ A)) suppression des ⇒

A ) B ⌘ ¬A _B

Page 35: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Exemple

Mettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

FNC

¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A)) = ¬(¬A ⋁ B) ⋁ (C ⋁ ¬(¬D ⋁ A))

= (A ⋀ ¬B) ⋁ (C ⋁ (D ⋀ ¬A)) déplacement des ¬

¬(A _B) ⌘ ¬A ^ ¬B

¬¬A ⌘ A

Page 36: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Exemple

Mettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

FNC

¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A)) = ¬(¬A ⋁ B) ⋁ (C ⋁ ¬(¬D ⋁ A))

= (A ⋀ ¬B) ⋁ (C ⋁ (D ⋀ ¬A))

= (A ⋀ ¬B) ⋁ ((C ⋁ D) ⋀ (C ⋁ ¬A)) distribution' _ ( ^ ✓) ⌘ (' _ ) ^ (' _ ✓)

Page 37: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Exemple

Mettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

FNC

¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A)) = ¬(¬A ⋁ B) ⋁ (C ⋁ ¬(¬D ⋁ A))

= (A ⋀ ¬B) ⋁ (C ⋁ (D ⋀ ¬A))

= (A ⋀ ¬B) ⋁ ((C ⋁ D) ⋀ (C ⋁ ¬A))

= ((A ⋀ ¬B) ⋁ (C ⋁ D)) ⋀ ((A ⋀ ¬B) ⋁ (C ⋁ ¬A)) distribution

' _ ( ^ ✓) ⌘ (' _ ) ^ (' _ ✓)

Page 38: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

ExempleMettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

FNC

¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A)) = ¬(¬A ⋁ B) ⋁ (C ⋁ ¬(¬D ⋁ A))

= (A ⋀ ¬B) ⋁ (C ⋁ (D ⋀ ¬A))

= (A ⋀ ¬B) ⋁ ((C ⋁ D) ⋀ (C ⋁ ¬A))

= ((A ⋀ ¬B) ⋁ (C ⋁ D)) ⋀ ((A ⋀ ¬B) ⋁ (C ⋁ ¬A))

= (A ⋁ C ⋁ D) ⋀ (¬B ⋁ C ⋁ D) ⋀ (A ⋁ C ⋁ ¬A) ⋀ (¬B ⋁ C ⋁ ¬A)

associativité

' _ ( _ ✓) ⌘ (' _ ) _ ✓

Page 39: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

ExempleMettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

FNC

¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A)) = ¬(¬A ⋁ B) ⋁ (C ⋁ ¬(¬D ⋁ A))

= (A ⋀ ¬B) ⋁ (C ⋁ (D ⋀ ¬A))

= (A ⋀ ¬B) ⋁ ((C ⋁ D) ⋀ (C ⋁ ¬A))

= ((A ⋀ ¬B) ⋁ (C ⋁ D)) ⋀ ((¬¬A ⋀ ¬B) ⋁ (C ⋁ ¬A))

= (A ⋁ C ⋁ D) ⋀ (¬B ⋁ C ⋁ D) ⋀ (A ⋁ C ⋁ ¬A) ⋀ (¬B ⋁ C ⋁ ¬A)

= (A ⋁ C ⋁ D) ⋀ (¬B ⋁ C ⋁ D) ⋀ (C ⋁ ¬⟘) ⋀ (¬B ⋁ C ⋁ ¬A)

simplification

A _ ¬A ⌘ ¬?

Page 40: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

ExempleMettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

FNC

¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A)) = ¬(¬A ⋁ B) ⋁ (C ⋁ ¬(¬D ⋁ A))

= (A ⋀ ¬B) ⋁ (C ⋁ (D ⋀ ¬A))

= (A ⋀ ¬B) ⋁ ((C ⋁ D) ⋀ (C ⋁ ¬A))

= ((A ⋀ ¬B) ⋁ (C ⋁ D)) ⋀ ((¬¬A ⋀ ¬B) ⋁ (C ⋁ ¬A))

= (A ⋁ C ⋁ D) ⋀ (¬B ⋁ C ⋁ D) ⋀ (A ⋁ C ⋁ ¬A) ⋀ (¬B ⋁ C ⋁ ¬A)

= (A ⋁ C ⋁ D) ⋀ (¬B ⋁ C ⋁ D) ⋀ (C ⋁ ¬⟘) ⋀ (¬B ⋁ C ⋁ ¬A)

= (A ⋁ C ⋁ D) ⋀ (¬B ⋁ C ⋁ D) ⋀ ¬⟘ ⋀ (¬B ⋁ C ⋁ ¬A)

simplification A _ ¬? ⌘ ¬?

Page 41: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

ExempleMettre la formule suivante en FND et FNC : ¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A))

FNC

¬(A ⇒ B) ⋁ (C ⋁ ¬(D ⇒ A)) = ¬(¬A ⋁ B) ⋁ (C ⋁ ¬(¬D ⋁ A))

= (A ⋀ ¬B) ⋁ (C ⋁ (D ⋀ ¬A))

= (A ⋀ ¬B) ⋁ ((C ⋁ D) ⋀ (C ⋁ ¬A))

= ((A ⋀ ¬B) ⋁ (C ⋁ D)) ⋀ ((¬¬A ⋀ ¬B) ⋁ (C ⋁ ¬A))

= (A ⋁ C ⋁ D) ⋀ (¬B ⋁ C ⋁ D) ⋀ (A ⋁ C ⋁ ¬A) ⋀ (¬B ⋁ C ⋁ ¬A)

= (A ⋁ C ⋁ D) ⋀ (¬B ⋁ C ⋁ D) ⋀ (C ⋁ ¬⟘) ⋀ (¬B ⋁ C ⋁ ¬A)

= (A ⋁ C ⋁ D) ⋀ (¬B ⋁ C ⋁ D) ⋀ ¬⟘ ⋀ (¬B ⋁ C ⋁ ¬A)

= (A ⋁ C ⋁ D) ⋀ (¬B ⋁ C ⋁ D) ⋀ (¬B ⋁ C ⋁ ¬A) simplification

A ^ ¬? ⌘ A

Page 42: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Déduction Naturelle

Page 43: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Séquent

Signifie

'1, . . . ,'n ` 1, . . . , m

Hypothèses Conclusions

'1 ^ · · · ^ 'n ) 1 _ · · · _ m

Page 44: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Déduction naturelle

Système de déduction

Axiomes

Règles d’inférence

Prémisses

Conclusion

0 ` �

0�

00 ` �

00nom

� ` �

Page 45: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Déduction naturelle

On commence par le système complet {⋀, ⇒, ⊥}

Chaque connecteur a 1 ou 2 règles d’introduction et 1 ou 2 règles d’élimination

On utilisera la notation ¬𝜑, équivalent à 𝜑 ⇒ ⊥

Page 46: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋀, ⇒, ⊥}

Règle de l’axiome

Un terme est démontrable s’il fait partie des hypothèses.

ax

�, A ` A

Page 47: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋀, ⇒, ⊥}

Affaiblissement

Certaines hypothèses sont inutiles.

� ` Aa↵

�, B ` A

Page 48: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋀, ⇒, ⊥}

Implique intro

Pour montrer qu’une formule implique une autre, il faut montrer que la 2e se démontre avec la première en hypothèse.

�, A ` B )i� ` A ) B

Page 49: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋀, ⇒, ⊥}

Implique élim (modus ponens)

Si on a montré qu’une formule en implique une seconde, et que l’on a aussi montré la première formule, alors on a montré la seconde.

� ` A ) B � ` A )e� ` B

Page 50: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋀, ⇒, ⊥}

Absurdité classique

Pour prouver une formule, on suppose son contraire pour déduire l’absurde.

�,¬A ` ? ?c� ` A

¬A ⌘ A ) ?

Page 51: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋀, ⇒, ⊥}

Ex falso quodlibet

Si des hypothèses permettent de déduire l’absurde, elles permettent de tout déduire.

� ` ? ?e� ` A

Page 52: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋀, ⇒, ⊥}

Négation - intro

Implique intro avec B = ⊥

(Raccourci)

�, A ` ? ¬i� ` ¬A

�, A ` ? )i� ` A ) ?

¬A ⌘ A ) ?

Page 53: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋀, ⇒, ⊥}

Négation - élim

Implique élim avec B = ⊥

(Raccourci)

¬A ⌘ A ) ?

� ` A ) ? � ` A )e� ` ?

� ` ¬A � ` A ¬e� ` ?

Page 54: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋀, ⇒, ⊥}

Et - intro

Pour montrer la conjonction de deux formules, il faut montrer ces deux formules.

� ` A � ` B ^i� ` A ^B

Page 55: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋀, ⇒, ⊥}

Et elim (gauche et droite)

La preuve d’une conjonction permet de montrer chaque partie de cette conjonction.

� ` A ^B ^eg� ` A

� ` A ^B ^ed� ` B

Page 56: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋀, ⇒, ⊥}� ` A

a↵�, B ` A

ax

�, A ` A

� ` A � ` B ^i� ` A ^B

� ` A ^B ^eg� ` A

� ` A ^B ^ed� ` B

�, A ` B )i� ` A ) B

� ` A ) B � ` A )e� ` B

� ` ¬A � ` A ¬e� ` ?

�, A ` ? ¬i� ` ¬A

�,¬A ` ? ?c� ` A¬A ⌘ A ) ?� ` ? ?e� ` A

Page 57: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Propriétéssi ' 2 � alors � ` '

si � ` ' et �0 ` alors � [ �0 ` ' ^

si � ` ' ^ alors � ` ' et � `

si � [ ' ` alors � ` ')

si � ` ' et �0 ` ') alors � [ �0 `

si � `? alors � ` '

si � [ {¬'} `? alors � ` '

Page 58: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Propriétés` ') ( ) ')

` ') (¬') )

` (') ) ) (( ) ✓) ) (') ✓))

` (') ) ) (¬ ) ¬')` (¬ ) ¬') ) (') )

` ¬¬' ) '

` ' ) ¬¬'

` ((' ^ ) ) ✓) ) (') ( ) ✓))

` (') ( ) ✓)) ) ((' ^ ) ) ✓)

` (' ^ ¬') ) ?` ? ) (' ^ ¬')

Page 59: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Correction

Lemme de correction

Explication : si on peut prouver une formule sous certaines hypothèses, et que ces hypothèses sont satisfiables, alors cette formule est vraie.

si � ` ' alors � |= '

Page 60: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Idée de démonstration

Démonstration par récurrence sur la longueur de la démonstration.

On considère chaque règle pour la dernière étape.

Les étapes d’avant de la démonstration sont des hypothèses de récurrence.

Page 61: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Complétude

Théorème de complétude

Explication : si une formule est une conséquence sémantique d’un ensemble de formules Γ, alors cette formule est prouvable sous les hypothèses Γ.

si � |= ' alors � ` '

Page 62: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Idée de démonstration

Démonstration par induction sur 𝜑.

On considère le connecteur le plus « haut ».

Les sous-formules sont des hypothèses de récurrence.

Page 63: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋁, ¬, ⋀, ⇒, ⇔, ⊥}

Ou intro (gauche et droite)

Si on prouve une formule, alors on prouve la disjonction de cette formule avec une autre.

� ` ' _ig� ` ' _

� ` _id� ` ' _

Page 64: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋁, ¬, ⋀, ⇒, ⇔, ⊥}

Ou elim

Si on prouve une disjonction et que de chaque partie on déduit une autre formule, alors on peut déduire cette formule.

� ` ' _ �,' ` ✓ �, ` ✓ _e� ` ✓

Page 65: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋁, ¬, ⋀, ⇒, ⇔, ⊥}

Equiv intro

Si deux formules permettent de se déduire l’une de l’autre, alors on déduit leur équivalence.

�, ` ' �,' ` ,i� ` ',

Page 66: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋁, ¬, ⋀, ⇒, ⇔, ⊥}

Equiv elim

Si on déduit une formule, et qu’elle est équivalente à une autre, on déduit cette dernière.

� ` ' � ` ', ,ed� `

� ` � ` ', ,eg� ` '

Page 67: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Système {⋁, ¬, ⋀, ⇒, ⇔, ⊥}

� ` ' _ig� ` ' _

� ` _id� ` ' _

� ` ' _ �,' ` ✓ �, ` ✓ _e� ` ✓

�, ` ' �,' ` ,i� ` ',

� ` ' � ` ', ,ed� `

� ` � ` ', ,eg� ` '

Page 68: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Propriétés

` ' _ , ¬(¬' ^ ¬ )

` ¬' , (' ) ?)

` (', ) , (') ) ^ ( ) ')

Page 69: Logique - Homepage de Thomas Pietrzak Système complet de connecteurs C Ensemble de connecteurs logiques tel que toute formule propositionnelle est équivalente à une formule n’utilisant

Complétude

La déduction naturelle reste complète pour {⋁, ¬, ⋀, ⇒, ⇔, ⊥}.