LIAFA, CNRS et Universit´e Paris VII
El´ements de logique
Jean-Eric Pin
LIAFA, CNRS et Universit´e Paris 7 Jean-Eric.Pin@liafa.jussieu.fr
LIAFA, CNRS et Universit´e Paris VII
Un exemple de formule logique
∃x∃y(x < y)∧ax∧by Interpr´etation sur un motu:
Il existe deux entiers x < ytels que, dansu, la lettre en positionxest unaet la lettre en position y est unb.
L’ensemble des mots v´erifiant la formule est l’ensemble des mots contenant une occurrence dea et ult´erieurement une occurrence de b.
A∗aA∗bA∗
LIAFA, CNRS et Universit´e Paris VII
Un deuxi`eme exemple
∃x∀y(x < y)∨(x=y)∧ax Interpr´etation ?
(x < y)∨(x=y)peut s’´ecrirex6y
∃x∀y x6ypeut s’´ecrirex= min L’ensemble des mots v´erifiant la formule est donc aA∗.
LIAFA, CNRS et Universit´e Paris VII
La logique du premier ordre
Symboles logiques:
• lesconnecteurs logiques:∧(et),∨(ou),
¬(non),→(implique),
• lesymbole d’´egalit´e=,
• lesquantificateurs∃et∀,
• desvariables(x,y,z, oux0,x1,x2, ... )
• desparenth`eses.
Symboles non logiques:
• Symboles derelations(<),
• Symboles defonctions(f, g),
• Symboles deconstantes(0,1).
LIAFA, CNRS et Universit´e Paris VII
R`egles de construction
Exemple:L={< , h,0}
• <est un symbole derelation binaire,
• hest un symbole defonction `a deux variables,
• 0est un symbole deconstante.
Termes
• Lesvariables
• Les symboles deconstantes
• Sit1, t2, . . . , tnsont des termes et sif est un symbole de fonctionn-aire,f(t1, t2, . . . , tn)est un terme.
LIAFA, CNRS et Universit´e Paris VII
Exemple de termes
SiLne contient pas de symbole de fonction, les seuls termessont lesvariableset les symboles de constantes.
SiL={<, h,0}les expressions suivantes sont des termes :
x h(0,0) h(x, h(0, y)) h(h(x, y), h(x, z))
LIAFA, CNRS et Universit´e Paris VII
Formules atomiques
Ce sont les formules soit de la forme(t1=t2)o`ut1
ett2sont destermes, soit de la forme R(t1, . . . , tn)
o`ut1, . . . , tnsont destermeset o`uRest un symbole derelationn-airedeL.
(h(x, h(0, y)) =x) (h(0,0)<0) (h(h(t, x), h(x, y))< h(z, x))
Note: on devrait ´ecrire<(t1, t2)au lieu det1< t2.
LIAFA, CNRS et Universit´e Paris VII
Formules du premier ordre
(1) Les formulesatomiques.
(2) Si(ϕi)16i6nest une famille de formules, alors
^
16i6n
ϕi et _
16i6n
ϕi
sont des formules.
(3) Siϕetψsont des formules, alors¬ϕet (ϕ→ψ)sont des formules.
(4) Siϕest une formule et sixest unevariable, alors(∃xϕ)et(∀xϕ)sont des formules.
LIAFA, CNRS et Universit´e Paris VII
Exemples de formules
Pour simplifier, on pose vrai=^
i∈∅
ϕi et faux=_
i∈∅
ϕi
Les expressions suivantes sont des formules du premier ordre:
(∃x(∀y((y < h(z,0))∧(x <0)))) (∀x(y=x))
On ´ecrira les formules pr´ec´edentes sous la forme
∃x∀y(y < h(x,0))∧(z <0)
∀x y=x LIAFA, CNRS et Universit´e Paris VII
Variables libres et variables li´ees
Certaines variables apparaissent apr`es un quantificateur (existentiel ou universel) : les occurrences de ces variables sontli´ees. Les autres occurrences sont dites libres. Par exemple, dans la formule
∃x(y< h(x,0))∧ ∀y(z<y)
les occurrencesxetysont li´ees et les occurrencesz etysont libres.
On appelle´enonc´eune formule dont toutes les variables sont li´ees.
LIAFA, CNRS et Universit´e Paris VII
D´ef. formelle des variables libres
L’ensembleF V(ϕ)des variables libres d’une formuleϕest d´efini comme suit :
(1) Siϕest atomique,F V(ϕ)est l’ensemble des variables deϕ,
(2) F V(¬ϕ) =F V(ϕ)
(3) F V(ϕ∧ψ) =F V(ϕ∨ψ) =F V(ϕ)∪F V(ψ) (4) F V(ϕ→ψ) =F V(ϕ)∪F V(ψ)
(5) F V(∃xϕ) =F V(∀xϕ) =F V(ϕ)\ {x} Toute variable qui aau moins uneoccurrence libre dansϕest libre.
LIAFA, CNRS et Universit´e Paris VII
S´emantique des formules
UnestructureS surLest donn´ee par un ensemble D, appel´edomaineet par une application d´efinie sur Let qui associe :
(1) `a chaque symbole derelationn-aire deL, une relationn-aire d´efinie surD,
(2) `a chaque symbole defonction`anarguments f deL, une fonction `anarguments d´efinie surD,
(3) `a chaque symbole deconstantecdeL, un
´el´ement deD.
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des variables
Unevaluationest une applicationνde l’ensemble des variables dans l’ensembleD. On ´etendν aux termes deL:
(1) Sicest un symbole deconstante, on pose ν(c) =c,
(2) sif est un symbole defonction`an arguments et sit1, . . . , tnsont des termes
ν f(t1, . . . , tn)
=f(ν(t1), . . . , ν(tn))
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des variables (suite)
Siν est une valuation etaun ´el´ement deD, on note ν
a x
la valuationν′d´efinie par
ν′(y)=
(ν(y) siy6=x a siy=x On d´efinit, pour toute formuleϕet pour toute valuationν,les expressions :
• la valuationν v´erifieϕdansS
• S satisfaitϕ[ν](not´eS |=ϕ[ν]) de la fa¸con suivante :
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des formules
(1) S |=(t1=t2)[ν] ssiν(t1) =ν(t2)
(2) S |=R(t1, . . . , tn)[ν] ssi ν(t1), . . . , ν(tn)
∈ R
(3) S |=¬ϕ[ν] ssi nonS |=ϕ[ν]
(4) S |=(ϕ∧ψ)[ν] ssiS |=ϕ[ν] etψ[ν]
(5) S |=(ϕ∨ψ)[ν] ssiS |=ϕ[ν] ouψ[ν]
(6) S |=(ϕ→ψ)[ν] ssi nonS |=ϕ[ν] ouS |= ψ[ν]
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des formules (suite)
(7) S |=(∃xϕ)[ν] ssi il existea∈Dtel queS |= ϕ[ν
a x
]
(8) S |=(∀xϕ)[ν] ssi pour touta∈D, S |= ϕ[ν
a x
]
La v´eracit´e de l’expression “la valuationνv´erifieϕ dansS” ne d´epend que des valeurs prises par les variables libres deϕ.
Siϕest un ´enonc´e, on dit queϕest v´erifi´e parS (ou queSsatisfaitϕ), et l’on noteS |=ϕ, si, pour toute valuationν,S |=ϕ[ν].
LIAFA, CNRS et Universit´e Paris VII
Formules logiquement ´equivalentes
Deux formulesϕetψsont diteslogiquement
´equivalentessi, pour toute structureSsurL, de domainenon vide, on aS |=ϕssiS |=ψ.
L’´equivalence logique ne concerne que les structures de domaine non vide. Par exemple, les formules
∀x ϕ(x)∧ ∃y ψ(y) et
∀x∃y(ϕ(x)∧ψ(y))
sont logiquement ´equivalentes mais ne sont pas
´equivalentes sur une structure de domaine vide...
LIAFA, CNRS et Universit´e Paris VII
Equivalence logique
On d´emontre en logique que les formules suivantes sontlogiquement ´equivalentes:
(1)ϕ∧ψ et ¬(¬ϕ∨ ¬ψ)
(2)ϕ→ψ et ¬ϕ∨ψ
(3)∀xϕ et ¬(∃x¬ϕ)
(4)ϕ∨ψ et ψ∨ϕ
(5)ϕ∧ψ et ψ∧ϕ
(6)ϕ∧f aux et f aux (7)ϕ∨f aux et ϕ
(6)ϕ∧vrai et ϕ
(7)ϕ∨vrai et vrai
LIAFA, CNRS et Universit´e Paris VII
Forme normale disjonctive
Une formule estsous forme normale disjonctivesi c’est une disjonction de conjonctions de formules atomiques ou de n´egations de formules atomiques :
∨i∈I ∧j∈Ji(ϕij∨ ¬ψij)
Proposition
Toute formulesans quantificateurest logiquement
´
equivalente `a une formule sans quantificateursous forme normale disjonctive.
LIAFA, CNRS et Universit´e Paris VII
Forme pr´enexe
Une formule estsous forme pr´enexesi elle s’´ecrit ψ=Q1x1Q2x2 . . . Qnxnϕ o`u lesQisont des quantificateurs existentiels ou universels (∃ou∀) etϕest une formule sans quantificateur. La suiteQ1x1Q2x2 . . . Qnxn s’appelle lepr´efixe de quantificationdeψ.
Proposition
Toute formule est logiquement ´equivalente `a une formule sousforme pr´enexe.
LIAFA, CNRS et Universit´e Paris VII
Hi´erarchie et forme pr´enexe
Une formule deΣnest une formule sous forme pr´enexe dont le pr´efixe de quantification estune suite altern´ee denblocsde∃et∀(´eventuellement vides) commen¸cant par un bloc de∃.
Une formule deΠn est une formule sous forme pr´enexe dont le pr´efixe de quantification estune suite altern´ee denblocsde∃et∀(´eventuellement vides) commen¸cant par un bloc de∀.
On montre que toute disjonction ou conjonction finie de formules deΣnest logiquement ´equivalente
`a une formule deΣn.
LIAFA, CNRS et Universit´e Paris VII
La hi´erarchie Σ
n(1) Σ0= Π0= ensemble des formulessans quantificateur.
(2) BΣnensemble descombinaisons bool´eennes des formules de Σn
(3) Σn+1: formules de la forme
∃x1. . .∃xnϕ(x1, . . . , xn) avecϕ∈Πn
(4) Πn+1: formules de la forme
∀x1. . .∀xnϕ(x1, . . . , xn) avecϕ∈Σn
LIAFA, CNRS et Universit´e Paris VII
Quelques exemples
La formule
∃x1 ∃x2 ∃x3
| {z } bloc 1
∀x4∀x5
| {z } bloc 2
∃x6∃x7
| {z } bloc 3
ϕ
appartient `a Σ3(et aussi `a tous les Σntels que n>3). De mˆeme la formule
bloc 1|{z}
∀x4∀x5
| {z } bloc 2
∃x6∃x7
| {z } bloc 3
ϕ
appartient `a Σ3, et `a Π2, mais pas `a Σ2, car le premier bloc doit toujours ˆetre un bloc de
quantificateurs existentiels. LIAFA, CNRS et Universit´e Paris VII
Logique du second ordre
Les variables utilis´ees dans la logique du premier ordre (variablesdu premier ordre) s’interpr`etent comme des ´el´ements du domaine.
Dans la logique dusecond ordre, on utilise un deuxi`eme type de variables, appel´ees variables du second ordre, qui repr´esentent desrelations. Ces variables sont not´ees traditionnellement par des lettres majuscules :X0,X1, etc..
LIAFA, CNRS et Universit´e Paris VII
Formules du second ordre
L’ensemble des termes deLest le mˆeme qu’au premier ordre. Lesformules atomiquessont les formules soit de la forme
(t1=t2)
o`ut1ett2sont des termes, soit de la forme R(t1, . . . , tn)ouX(t1, . . . , tn)
o`ut1, . . . , tnsont des termes,Rest un symbole de relationn-aire deLetX est une variable
repr´esentant une relationn-aire.
LIAFA, CNRS et Universit´e Paris VII
R`egles de formation
(1) On part des formules atomiques (2) Siϕetψsont des formules, il en est de
mˆeme de
¬ϕ (ϕ∧ψ) (ϕ∨ψ) (ϕ→ψ) (3) Siϕest une formule, sixest une variable et
siXest une variable de relation, alors les expressions
(∃xϕ) (∀xϕ) (∃Xϕ) (∀Xϕ) sont des formules.
LIAFA, CNRS et Universit´e Paris VII
Second ordre monadique
Dans le second ordremonadique, toutes les variables du second ordre sont des variables de relations unaires: elles s’interpr`etent donc comme dessous-ensemblesdu domaine.
∃X(∀x Xx)
ce que l’on ´ecrit aussi sous la forme
∃X (∀x x∈X)
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des variables
Unevaluation du second ordreest une applicationν qui associe `a chaque variable un ´el´ement deDet `a chaque variable de relation n-aire une partie deDn (i.e. une relationn-aire surD).
Siν est une valuation etRune partie deDn, on note ν
R X
la valuationν′d´efinie par
ν′(x)=ν(x)sixest une variable du premier ordre ν′(Y)=
(ν(Y) siY 6=X
R siY =X
LIAFA, CNRS et Universit´e Paris VII
Interpr´etation des formules
La notion d’interpr´etation, d´ej`a d´efinie pour le premier ordre, est compl´et´ee par les r`egles suivantes :
(9) S |=(X(t1, . . . , tn))[ν]ssi ν(t1), . . . , ν(tn)
∈ν(X)
(10) S |=(∃Xϕ)[ν]ssi il existeR⊆Dntel que S |=ϕ[ν
R X
]
(11) S |=(∀xϕ)[ν]ssi pour toutR⊆Dn, S |=ϕ[ν
R X
]