Vous êtes sur la page 1sur 6

Chapitre 2: La logique des prédicats

Introduction
Si on prend le fameux syllogisme :
Tout homme est mortel
Socrate est un homme
Alors Socrate est mortel
Avec la logique propositionnelle, on ne peut pas exprimer ce syllogisme avec précision.
Le langage des prédicats a les éléments et les outils qui nous permettent de représenter ce
genre d’énoncés.

Langage des prédicats

1. L’alphabet :
 Les connecteurs logiques : ¬ , ˄ , ˅ , ⟹ , ⟺
 Les quantificateurs : ∀ , ∃
 Les variables : x , y , …
 Les constantes : a , b , …
 Les symboles de prédicats : P , Q , …
 Les symboles de fonctions : f , g , …

2. Les fonctions
C’est une généralisation des fonctions numériques sur n’importe quel domaine D (personnes,
villes, …).
Exemples :
 D = R : f(x) = x2
 D = l’ensemble des humains : g(x) = père(x)
 D = N : h(x,y) = PGCD(x,y)
Le résultat de la fonction est un élément du même domaine

3. Les prédicats
C’est une propriété ( caractéristique) d’un élément du domaine ou une relation entre les
éléments du domaine.
Exemples :
 P(x) : x est un nombre premier
 Q(x,y) : x > y
La valeur du prédicat est booléenne V ou F.

4. Les quantificateurs
 Le quantificateur universel ∀ (quelque soit)
 Le quantificateur existentiel ∃ (il existe au moins)

Exemple :
Si on a : P(x) : x est présent , A(x) : x est absent
∀x P(x) : Tout les étudiants sont présents
∃x A(x) : Il existe des étudiants absents
5. Les termes
 Toute constante est un terme
 Toute variable est un terme
 Si t1 , … tn sont des termes et f est une fonction alors : f(t1 , … tn) est un terme.

6. Les formules
 Si t1 , … , tn sont des termes et P est un prédicat alors :
P(t1 , … , tn) est une formule.
 Si x est une variable et α, β deux formules alors :
¬ α , α ˄ β , α ˅ β , α ⟹β , α ⟺ β , ∀x α , ∃x α sont des formules.

Exemples de formules
 ∀x P(x) ˄ ∃y Q(y) ⟹P(x)
 ∀x ∀y ∃z (P(x,y) ⟹ Q(x,y,z))

Priorité des connecteurs + quantificateurs :


- La priorité des connecteurs de la plus forte à la plus faible: (¬,∀, ∃ ), ˄ , ˅ , ⟹ , ⟺
- Lorsque le même connecteur se répète dans la même formule, la priorité est donné à celui le
plus à gauche.
- Lorsqu’un connecteur est mis entre parenthèse alors il est prioritaire

Négation des quantificateurs


 ¬ (∀ x P(x)) ≡ ∃ x ¬P(x)
 ¬ (∃ x P(x)) ≡ ∀ x ¬P(x)

Le champ d’un quantificateur


Le champ d’un quantificateur dans une formule est la sous formule concernée par ce
quantificateur

Exemples :
1. ∀x P(x) ˄ ∃y Q(y) ⟹P(x)
- Le champ de ∃ est Q(y)
- Le champ de ∀ est P(x)
2. ∀x (α ˄ β) : Le champ de ∀ est (α ˄ β)
3. ∀x α ⟹β : Le champ de ∀ est α

Les variables libres et les variables liées


o Une occurrence de x dans une formule α est liée si elle apparait dans le
champ d’un quantificateur, sinon elle est libre

Exemples :
 P(x) ⟹ Q(y,z) toutes les variables sont libres ( l'absence des quantificateurs)
 ∀x P(x) ˄ Q(y) x est liée et y est libre ( le quantificateur ∀ pour la variable x et pas de
quantificateur pour la variable y)

La formule close ( Fermée)


C’est la formule dont toutes les variables sont liées et non libres
Exemple : ∀x ∀y ∃z (P(x,y) ⟹ Q(x,y,z))
Formes normales

1- Forme normale prénexe


On dit que α est sous la forme prénexe si :
 α est de la forme : Q1x1 … Qnxn β telque : Qi ϵ {∀ , ∃ } ( tous les quantificateur sont à
gauche de la formule)
 Le champ de Qnxn est β
 β ne contient pas des quantificateurs.

Pour transformer les formules en forme normale prénexe, on se base sur les propriétés
suivantes :

1. ∀x α ⟹ β ≡ ∃x (α ⟹β) et
∃x α ⟹ β ≡ ∀x (α ⟹β)
Sous condition : x n’apparait pas libre dans β

2. α ⟹ ∀x β ≡ ∀x (α ⟹β) et
α ⟹ ∃x β ≡ ∃x (α ⟹β)
Sous condition : x n’apparait pas libre dans α

Exemple : ∃x P(x) ⟹ ∃y P(y) … (1)


x n’apparait pas libre dans ∃y P(y)
(1) ≡ ∀x (P(x) ⟹ ∃y P(y))
y n’apparait pas libre dans P(x)
(1) ≡ ∀x ∃y (P(x) ⟹ P(y))

Remarque : Si les conditions posées pour les propriétés ne sont pas satisfaites, on procède à
des modifications selon les règles suivantes :

 ∀x β ≡ ∀s β(s/x)
 ∃x β ≡ ∃s β(s/x)

On obtient β(s/x) par remplacement de x par s.


Autrement dit: on renomme la variable x par s.

Exemple : Transformer en forme normale prénexe :


∃x P(x,y) ⟹ ∃y Q(y,x) .... (*)

x apparait libre dans «∃y Q(y,x) », on change la variable (on renomme la variable x par u)
(*) ≡ ∃u P(u,y) ⟹ ∃y Q(y,x)

u n'apparait pas libre dans «∃y Q(y,x) »


(*) ≡ ∀ u (P(u,y) ⟹ ∃y Q(y,x))

y apparait libre dans « P(u,y) », on change la variable ( on renomme la variable y par v)


(*) ≡ ∀ u (P(u,y) ⟹ ∃ v Q(v,x))

u n’apparait pas libre dans « P(u,y) »


(*) ≡ ∀u ∃v (P(u,y) ⟹ Q(v,x))
2- Forme normale de Skolem
Elle consiste à éliminer tous les quantificateurs existentiels en utilisant de nouveaux
symboles de fonction ou des constantes.

 Etant donné : α = ∀x ∃y P(x,y) cette formule veut dire que pour chaque x il existe un y
qui vérifie P(x,y), c-à-d, on peut définir une fonction f(x) qui remplacera y dans la
formule.

La forme de skolem de α est donc : αs = ∀x P(x,f(x))

Exemple 1 :
β = ∀x1 ∀x2 ∃y P(x1,x2,y)
βs = ∀x1 ∀x2 P(x1,x2,f(x1,x2))

 Pour une formule de la forme ∃x β , on élimine le quantificateur et on remplace x par


une nouvelle constante.

Exemple 2 :
α = ∃x P(x)
αs = P(a)

Remarques :
- La skolémisation d’une formule suppose qu'elle est sous la forme prénexe.
- La skolémisation d’une formule ne donne pas une formule équivalente.

Exemple 3 :
α = ∃x ∀y ∀z ∃v P(x,y,z,v)
αs = ∀y ∀z p(a,y,z,f(y,z))

3. LA forme clausale
Consiste à écrire une formule α sous forme de clauses
Il faut suivre les étapes suivantes:
1. Ecrire α sous forme prénexe
2. Ecrire α sous forme de skolem
3. Supprimer le quantificateur universel ∀
4. Ecrire la formule obtenue sous forme d'une FNC ( forme normale conjonctive)
5. Extraire les clauses

Exemple:
Soit la formule :
∀ x ∃ y (P(x) ⟹ P(y)) : sous forme prénexe
∀x (P(x) ⟹ P(f(x)) : sous forme de skolem
∀ x (¬ P(x) ˅ P(f(x))) : Elimination de ⟹
¬ P(x) ˅ P(f(x)) : Elimination du quantificateur ∀
¬ P(x) ˅ P(f(x)) : forme clausale

Exemple 2:
∀ x ∃ y (P(x) ⟺ P(y)) : Forme prénexe
∀ x ∃ y (P(x) ⟹ P(y) ˄ P(y) ⟹ P(x)) : Elimination de ⟺
∀ x (P(x) ⟹ P(f(x)) ˄ P(f(x)) ⟹ P(x)) : Forme de skolem
(P(x) ⟹ P(f(x)) ˄ P(f(x)) ⟹ P(x)) : Elimination du quantificateur ∀
(¬P(x) ˅ P(f(x))) ˄ (¬P(f(x)) ˅ P(x)) : Obtention de la FNC
(¬P(x) ˅ P(f(x))) : première clause
(¬P(f(x)) ˅ P(x)) : deuxième clause

Représentation des connaissances

En théorie du concept et structure de la proposition , il existe 4 types de propositions


1. Proposition universelle affirmative (UA):
- Tous les corbeaux sont noirs
2. Proposition universelle négative (UN):
- aucun corbeau n'est noir
3. Proposition particulière affirmative (PA):
- certains corbeaux sont noirs
4. Proposition particulière négative (PN):
- certains corbeaux ne sont pas noirs

Formulation
1. UA: ∀x (F(x) ⟹ G(x))
- tous les F sont G
- les F sont G
- chaque F est G
- tout ce qui est F est G
- n'import quel F est G
2.UN : ∀x (F(x) ⟹ ¬ G(x))
- aucun F n'est G
- rien n'est à la fois F et G
3. PA : ∃ x (F(x) ˄ G(x))
- quelques F sont G
- il y a des F qui sont G
- certains F sont G
- il y a F et G
4. PN : ∃ x (F(x) ˄ ¬ G(x))
- quelques F ne sont pas G
- il y a F qui n'est pas G
- certains F ne sont pas G

Application

Pour chaque phrase, donnez la formule bien formée ( fbf) en langage des prédicats

a. Marcus est un homme


b. Marcus est un pompéien
c. Tous les pompéiens sont des romains
d. César était souverain
e. Tous les Romains étaient fidèles à César, soit le haïssent
f. Chacun est fidèle à quelqu'un
g. Les gens n'essayent d'assassiner que les souverains auxquels ils ne sont pas fidèles
h. Marcus a essayer d'assassiner César
Solution:

Constantes :

- a: Marcus
- b: César

Prédicats :

- Homme (x) : x est un homme


- Pompéien (x) : x est un pompéien
- Romain (x) : x est un Romain
- Souverain (x) : x est un souverain
- Fidèle (x,y): x est fidèle à y
- Hair ( x, y) : x hait y
- Personne (x): x est une personne
- Assassiner ( x, y) : x essaie d'assassiner y

fbf:

a. Homme ( Marcus) ou Homme (a)


b. Pompéien (a)
c. ∀ x ( Pompéien(x) ⟹ Romain (x))
d. Souverain ( b)
e. ∀ ( Romain (x) ⟹ Fidèle ( x, b) ˅ hair ( x,b))
f. ∀ x ∃ y ( personne (x) ˄ personne (y) ⟹ Fidèle ( x, y))
g. ∀ x ∀ y ( personne (x) ˄ souverain (y) ˄ ¬ Fidèle ( x,y) ⟹ Assassiner ( x,y))
h. Assassiner (a,b)

Vous aimerez peut-être aussi