Vous êtes sur la page 1sur 75

Logique mathmatique : introduction.

Paul Rozire
Paris 7 MT3062
29 septembre 2004
(version provisoire 17: 36)
1
Introduction.
La logique est souvent associe lart de raisonner . Elle tudie un certain type de discours
argument, tude qui a commenc trs tt. Ainsi Aristote ( 300 av JC), dgage certaines gures
de raisonnement (les syllogismes) qui sont valides indpendamment des assertions quelles mettent
en oeuvre. Cest exactement le terrain dtude de la logique : ce qui dans le raisonnement est
indpendant du sujet tudi.
Trs tt galement la logique est associe aux mathmatiques, comme terrain dtude privilgi.
Dj lambition des mathmaticiens grecs de lantiquit est eet de prsenter leur science comme
purement dductive : les thormes se dduisent dautres thormes et ultimement de certains
axiomes bien identis considrs comme vidents. Les chanes de dductions sont purement for-
melles : elles peuvent tre tablies indpendamment du sujet tudi. Les lments dEuclide ( 300
av JC) en sont lexemple le plus achev, puisquil va constituer le cadre formel des mathmatiques
europennes jusquau XVIIime sicle.
Cependant, sans ngliger les apports antrieurs, on peut dire que la logique moderne celle
que nous allons tudier date essentiellement de la deuxime moiti du XIXime sicle, avec les
travaux fondateurs de George Boole, Augustus De Morgan, Charles S. Peirce et surtout Gottlob
Frege.
Le dveloppement du calcul intgral et du calcul innitsimal introduits par Isaac Newton
et Gottfried Leibniz au cours du XVIIime sicle, a conduit sortir du cadre de la gomtrie
dEuclide. Cest au cours du XIXme sicle que lon dnit formellement les notions qui fondent
lanalyse moderne comme celles de limite, et de continuit. Lambition de certains mathmaticiens
comme Richard Dedekind et Georg Cantor est alors de redonner des fondements axiomatiques
srs aux mathmatiques, en partant non plus de la gomtrie mais de larithmtique, puis de la
notion densemble.
Paralllement lambition de certains logiciens de lpoque
1
est de mathmatiser la logique, de
laxiomatiser de la mme faon quune thorie mathmatique, et ils utilisent pour cela des notions
et des notations, comme la notation fonctionnelle, les variables, apparues en mathmatique.
Le premier systme logique la fois entirement formalis et susamment riche pour formaliser
les mathmatiques (mais ce ntait pas sa seule ambition) est d Frege en 1879.
Frege souhaite donner des fondements purement logiques aux mathmatiques. Il rejoint en cela
Cantor qui fonde les mathmatiques sur la thorie des ensembles (mais ne cherche pas forma-
liser la logique elle mme). La notion densemble est en eet trs proche de de la notion logique
de prdicat (une proprit dnit lensemble des objets ayant cette proprit). La thorie des
ensembles est dailleurs considre actuellement comme une branche de la logique mathmatique.
Le dveloppement de la logique a permis ensuite de clarier puis de reformuler ces axioma-
tisations, aprs la dcouverte de paradoxes dans les thories de Cantor et Frege. Llaboration
de la logique comme discipline mathmatique a permis au dbut du XXime sicle de poser de
faon prcise un certain nombre de problmes relatifs aux fondements des mathmatiques (cest
le cas dun certain nombre des problmes futurs des mathmatiques lists en 1900 par David
Hilbert). Ainsi Kurt Gdel a pu dmontrer en 1931 le premier thorme dincompltude, qui xe
les limites des axiomatisations, savoir que dans toute thorie axiomatique raisonnable, cest
dire pour laquelle il est possible de reconnatre mcaniquement les axiomes parmi les noncs
de la thorie et susamment expressive, cest dire permettant de dvelopper larithmtique
2
,
il restera toujours des noncs qui ne sont pas consquences de la thorie en question et dont la
ngation nest pas non plus consquence de la thorie. Dit dune faon plus platonicienne, il existe
des noncs vrais de larithmtique qui ne sont dmontrables dans aucune thorie axiomatique
raisonnable.
Ce cours est un cours dintroduction. On seorcera dabord de faire saisir les notions fon-
damentales comme celles de dmontrabilit et de vrit. Le thorme le plus labor que nous
dmontrerons, le thorme de compltude de Gdel, fera justement le rapport entre ces deux no-
tions. On verra galement dans quelle mesure on peut axiomatiser les mathmatiques et de quelle
1
Le premier poser un tel programme est le mathmaticien et philosophe du XVIIime sicle Leibniz
2
il est tout fait possible de donner un sens prcis ces deux hypothses
2
faon. On ne dmontrera pas le thorme dincompltude de Gdel cit au paragraphe prcdent,
mais au moins son nonc devrait devenir plus comprhensible.
An dviter les malentendus, prcisons que ce cours ne traite que de logique mathmatique.
Bien-sr la logique ne se rduit pas la logique mathmatique. Cette dernire a quelques ca-
ractristiques trs particulires. Elle est bien plus pauvre que la logique naturelle : la logique
mathmatique classique na que deux valeurs de vrits, un nonc est vrai ou faux, il ny a pas
de notion dincertain, de possible, de ncessaire, le temps nintervient pas . . . Mais en un autre
sens la logique mathmatique est bien plus riche que la logique naturelle : les noncs peuvent tre
beaucoup plus complexes, certains raisonnements comme le raisonnement par labsurde semblent
surtout utiliss en mathmatique, les chanes de dductions sont beaucoup plus longues. . .
Ce cours ne sera pas non plus un apprentissage de lart de raisonner en mathmatique.
La logique des mathmatiques repose sur le prsuppos dune aptitude commune raisonner qui
nous permet de communiquer et de convaincre quun raisonnement est correct. Sil existe bien un
raisonnement mathmatique, il slabore sur une spcialisation du raisonnement commun dans le
contexte des mathmatiques. Ses spcicits sacquirent dabord ... par la pratique des math-
matiques (y compris bien-sr la pratique de la logique mathmatique), mme si nous esprons que
la formalisation de la logique que nous allons donner permettra de clarier et de prciser cette
pratique.
3
1 Une prsentation informelle du langage de la logique ma-
thmatique.
Il nest bien-sr pas question dtudier la langue mathmatique en gnral.
Tout dabord un texte mathmatique contient quasi forcment des lments de nature non
mathmatique, annotations utiles la comprhension dune preuve, mais aussi rappels historiques
et bien dautres choses.
Ensuite le langage formel que nous allons dcrire est articiel et ne couvre pas tous les noncs
mathmatiques tels quels. Par exemple nous naccepterons pas directement la formulation Tout
entier naturel est pair ou impair, que lon considre comme une abrviation de x N(pair(x)
impair(x)), supposer que pair et impair aient t introduits dans le langage formel. Lavantage
est que ce langage articiel peut tre prsent de faon prcise et tudi mathmatiquement.
Ltude du langage mathmatique en gnral serait un travail (dicile) de linguistique.
Nous allons commencer de dcrire, assez informellement pour le moment, un langage formel
pour les mathmatiques, en isolant et prcisant un certain nombre de notations du langage math-
matique usuel. Il y a un peu darbitraire dans certains des choix de formalisation : nous essayons
dtre compatibles avec lassistant de preuves Phox qui sera utilis en travaux pratiques.
Les notations que nous allons utiliser (, , . . .), ne sont pas celles introduites par Gottlob
Frege qui ont eu peu de succs, entre autre cause de leur complexit. Elles sont essentiellement
dues Giuseppe Peano (1894) ( quelques questions de graphie prs), et ont t popularises par
les Principia mathematica de Bertrand Russell et Alfred Whitehead (1910). Elles sont pour la
plupart assez communes dans les mathmatiques actuelles.
1.1 Les objets, les noncs, les preuves.
En mathmatiques on traite dobjets : les nombres, les points, les droites, les ensembles, etc.
On nonce des proprits de ces objets les noncs mathmatiques de faon organise.
Certains noncs initiaux, les axiomes sont admis, considrs vidents sur des domaines connus
(arithmtique, gomtrie...), ou dnissant implictement une certaine thorie (algbre). On en
dduit dautres noncs, les thormes en utilisant certaines rgles de raisonnement la plupart
du temps implicites mais que toute personne pratiquant les mathmatiques admet. Les thormes
dcrivent des proprits de moins en moins videntes des objets considrs. Une preuve dun nonc
est une construction qui permet de convaincre que lon a bien utilis pour dduire lnonc les rgles
de raisonnement communment admises.
Donnons en exemple un nonc dexercice. Nous reviendrons plus tard sur les preuves.
Rsoudre dans R lingalit 2x 5 <

10 x. (1)
Les mots R, x, 5, 2x, 2x 5, 5 x, 10 et

10 x dsignent des objets (un ensemble, des
nombres rels), et 2x5 <

10 x un nonc. La solution de lexercice pourrait se conclure par :


x R / 2x 5 <

10 x =]1,
15
4
[ (2)
qui dsigne un nonc. Les constituants x R / 2x5 <

10 x, 1,
15
4
et ]1,
15
4
[ dsignent des
objets. Cet nonc est un thorme, mme si en mathmatique il na pas susamment de porte
pour que lon prenne la peine de le dsigner comme tel.
Les noncs se distinguent des objets en ce quils sont susceptibles dtre vrai ou faux. Dans
lexemple prcdent cela na aucun sens de dire que ]1,
15
4
[ est vrai, mais on peut dire que lgalit
(2) est vraie. Le mot ingalit est une faon redondante de nommer lnonc.
Nous ne chercherons pas analyser le mot rsoudre, qui ne peut se comprendre que dans le
cadre dune certaine pratique scolaire.
1.2 Syntaxe et smantique.
On a besoin en logique de distinguer entre le mot et ce quil dsigne. Ainsi pour prendre un
exemple dans la langue courante, quand on dit que le chien a 4 pattes, le mot chien fait rfrence
4
un quelque chose dextrieur, ici le monde rel, au sens du mot chien, cest la smantique. Cest
tout fait dirent quand lon dit que chien a 5 lettres : on parle du mot chien, cest de la
syntaxe.
De la mme faon on peut dire que 2x 5 est construit comme la dirence du produit de 2
par la variable x et de 5, cest plutt une remarque dordre syntaxique. On peut dire que 2x 5
dsigne un rel dont la valeur dpend de celle du rel x, cest une remarque dordre smantique.
Par exemple les expressions 2, 1 + 1 et 2 + 0 sont syntaxiquement direntes mais
dsignent le mme objet, lentier 2.
La syntaxe dun langage soccupe de son lexique, de ses rgles de formation. La smantique
dun langage soccupe de lui donner un sens, dinterprter les expressions du langage dans un
monde a priori extrieur au langage.
Quand des mots, des assemblages de signes, ne sont pas syntaxiquement corrects, ont dit quils
nont pas de sens. Par exemple 1+, (32, x = ne sont pas corrects syntaxiquement. Cest tout
fait dirent de dire que 1 +1 = 1 est faux (pour les entiers). En eet lexpression 1 +1 = 1
est syntaxiquement correcte et a un sens : elle est fausse, cest de la smantique.
De mme Pour tout entier x, x + 1 = 2 1 nest pas syntaxiquement correct, la phrase
Pour tout entier x, x + 1 = 2 x = 2 est syntaxiquement correcte et fausse.
La formalisation de la syntaxe du langage doit permettre de dcrire les expressions qui ont
un sens sans faire rfrence ce sens. Cest trs dicile pour un langage usuel, mais tout fait
possible pour le langage articiel que nous allons tudier.
Il nest bien-sr pas question de chercher une signication a un assemblage de signes qui nest
pas syntaxiquement correct, mais toute expression syntaxiquement correcte doit avoir un sens.
Une expression syntaxiquement correcte est construite partir de composants lmentaires des
symboles comme 1, x, +, =. Linterprtation dune expression sera obtenue partir de
linterprtation de ses composants lmentaires.
Les choses ne sont parfois pas si simples. Ainsi lexpression

10 x semble avoir un sens,
elle ne dsigne pourtant aucun nombre (aucun rel en tout cas) si x est remplac par un rel
strictement suprieur 10. Des expressions comme le plus grand nombre premier, lentier
naturel strictement compris entre 0 et 1 ne dsignent aucun entier. Ces expressions demandent
quune certaine condition soit vraie pour pouvoir dsigner vraiment un objet. On sort donc a priori
du cadre de la syntaxe.
1.3 Syntaxe.
Entamons maintenant une description informelle de ce ce que pourrait tre la syntaxe dun
langage mathmatique formel. Tout dabord on appellera termes les expressions du langage qui
dsignent des objets, on appellera formules les expressions du langage qui dsignent des noncs.
1.3.1 Les termes.
Les constituants lmentaires des termes sont les constantes, comme 0, 1 pour les entiers, et les
variables, comme x, y, z. On a souvent besoin dindiquer quel domaine appartient une variable,
voire une constante. Par exemple x dsigne-t-il un rel ou un entier ? Telles quelles ces indications
seraient de nature smantique. On va parler de sorte : x est de sorte rel signie que x varie a
priori dans lensemble des rels. Quand un langage utilise plusieurs sortes dobjets on parle de
langage multisorte, quand il utilise une seule sorte dobjet de langage monosorte.
On construit de nouveaux termes laide de symboles de fonctions (ou oprations). Un symbole
de fonction doit avoir une sorte qui indique son usage. Par exemple si nat dsigne la sorte des
entiers, laddition sur les entiers est de sorte nat nat nat, ce qui indique quelle prend deux
arguments a et b qui doivent tre de sorte nat, des entiers, et que le terme obtenu a + b est de
sorte nat, un entier
3
. Si k est la sorte des objets dun corps K est v celle des objets dun espace
vectoriel E, la multiplication externe est de sorte k v v, ce qui indique quelle prend en
3
La notation nat nat nat se parenthse nat (nat nat). Une fonction deux arguments, comme
laddition, est vue comme une fonction qui associe son premier x argument une nouvelle fonction, celle qui associe
au deuxime argument y le rsultat x + y, x tant x.
5
premier argument un lment du corps, en deuxime argument un lment de lespace vectoriel et
que le rsultat est un lment de lespace vectoriel.
Ds que lon a des fonctions partielles la notion de sorte, qui ne sert qu restreindre la syntaxe,
diverge de celle densemble de dnition, comme on la vu au paragraphe prcdent pour

sur
R. De faon analogue la division sur R est une loi binaire dnie de R R

R, dans x y
le deuxime argument y doit tre non nul. Cest une condition de nature smantique (ce nest pas
lcriture de y qui ne doit pas tre 0, mais bien son interprtation). Pour contrler lusage de , r
tant la sorte des rels, on se contente de dire que est de sorte r r r, lcriture 1 0 nest
donc pas interdite syntaxiquement. De mme

sera de sorte r r.
Une fonction associe n arguments un objet : on dit que larit de la fonction est n, ou encore
que la fonction est n-aire, unaire pour un argument, binaire pour deux etc.
Quand il est clair quil y a une seule sorte dobjet, on na pas besoin de parler de sorte, larit
sut. Ainsi il sut de dire que laddition sur les entiers est binaire (darit 2).
On utilise plusieurs notations pour lapplication dune fonction ces arguments. La notation
par dfaut est la notation prxe, si f est binaire et u et v sont des termes (de la bonne sorte)
f(u, v) est un terme. En logique on notera souvent seulement f u v.
Pour certains symboles de fonctions binaires comme + et on utilise la notation inxe, si u
et v sont des termes u +v, u v sont des termes.
Enn la notation postxe le symbole fonctionnel est plac aprs les termes auquel il sap-
plique est assez peu utilise. Par exemple la notation usuelle n! pour la factorielle (unaire) est
postxe.
Avant daller plus loin, ajoutons que le signe = sera utilis, sauf mention explicite, pour
lgalit des objets, pas pour lidentit syntaxique des termes qui les dsignent. Pour les formules,
on utilisera le signe pour dire que deux formules sont quivalentes, cest dire ont mme
interprtation.
1.3.2 Les formules atomiques.
On distingue les formules atomiques qui ne se dcomposent pas elle-mmes en formules, des
formules composes. On utilisera prop comme sorte des formules.
Les formules atomiques scrivent laide dun symbole de prdicat, ou de relation, appliqu
un ou plusieurs arguments. De la mme faon que pour les fonctions ces prdicats doivent avoir
une sorte et on peut parler darit. Les notations prxes, inxes et postxes peuvent tre utilises.
Ainsi lgalit est un symbole de prdicat (ou de relation) binaire, la notations est inxe. la
relation dincidence en gomtrie plane est une relation binaire entre deux sortes direntes : si p
est la sorte des points et d celle des droites, la relation dincidence a pour sorte p d prop.
Lordre <, le prdicat de divisibilit [ sont des symboles de prdicat binaire sur les entiers, de sorte
nat nat prop.
Revenons sur les fonctions partielles, comme

sur R dont on a vu quelles posaient des
problmes de syntaxe. Le logiciel Phox rgle les choses de la faon suivante. Prenons pour exemple
les entiers naturels. La sorte des entiers naturels est note nat. On dclare par exemple 0 de sorte
nat, la fonction successeur de sorte nat nat, laddition et la soustraction de sorte nat nat
nat. On dclare galement un prdicat N unaire sur la sorte nat, cest dire de sorte nat prop,
N x signiant x est un entier. On peut crire (lquivalent de) 2 3 qui est de sorte nat, mais
on ne peut pas prouver N 2 3, qui signierait que 2 3 est un entier naturel. En fait, on ne
pourra prouver aucune proposition propos de 2 3.
1.3.3 Les connecteurs.
On peut construire de nouvelles formules (de sorte toujours prop) en utilisant les connecteurs.
Nous utiliserons les signes pour la ngation, pour la conjonction et, pour la disjonction
ou, pour limplication, cest dire Si. . ., alors . . ., pour lquivalence. Le connecteur
est unaire (de sorte prop prop), tous les autre sont binaires (de sorte prop prop prop) et en
notation inxe. On peut construire par exemple la formule suivante du langage de larithmtique :
6
(x[y y = 0) (x < y x = y)
Les parenthses et les crochets sont utilises comme dhabitude pour rendre les critures non
ambigus, cest dire pour quil ny ait quune faon danalyser la construction de la formule.
On utilisera aussi les constantes logiques pour labsurde ou la contradiction, lnonc toujours
faux, et pour lnonc toujours vrai.
Le signe F G indique que les formules F et G ont mme interprtation ne fait
pas partie lui mme du langage. Il est quivalent de dire F G et de dire que la formule F G
est vraie.
1.3.4 Les quanticateurs.
Les quanticateurs apparaissent dans des expressions comme tout entier naturel est pair
ou impair , (tout marque la quantication universelle), ou il existe deux entiers dont la
somme des carrs est le carr dun entier (il existe marque la quantication existentielle), ou
encore de faon moins apparente dans lexpression x na dautre diviseur que 1 et lui mme .
Pour exprimer les quantications on va utiliser les variables (lutilisation des variables pour la
quantication apparat en logique formelle dans les travaux de Peirce et Frege). Les trois noncs
ci-dessus se traduiront par :
n N(pair(n) impair(n)) ; a Nb Nc N a
2
+b
2
= c
2
; p N[p[x (p = 1 p = x)]
Ces quantications, comme le plus souvent en mathmatique, sont des quantications bornes : on
indique le domaine sur lequel varie la variable quantie. On peut en fait dcomposer ces critures
en utilisant les connecteurs. La quantication universelle borne utilise limplication, ainsi
n N(pair(n) impair(n)) n[n N (pair(n) impair(n))]
(pour tout n si n est un entier, alors n est pair ou impair). La quantication existentielle borne
utilise la conjonction, ainsi
a Nb Nc N a
2
+ b
2
= c
2
abc(a N b N c N a
2
+b
2
= c
2
) .
Un quanticateur non born prend en argument une variable (dune certaine sorte) et une formule
et construit une nouvelle formule. La formule n N (pair(n) impair(n)) dpend de n,
alors que la formule n[n N (pair(n) impair(n))] nen dpend plus puisquelle peut se dire
sans cette variable (tout entier est pair ou impair). On remarque galement que le nom n na
pas dimportance, la formule considre scrit tout aussi bien p [p N (pair(p) impair(p))].
Bien-sr ces remarques sont dordre smantique, mais on comprend bien que lon peut dnir ces
notions sans faire appel au sens des formules considres.
On dira donc que la variable n est libre dans la formule n N (pair(n) impair(n)) et lie
dans la formule n[n N (pair(n) impair(n))]. On dit parfois variable muette pour variable
lie, variable parlante pour variable libre.
On dit quune formule qui ne contient aucune variable libre est close. Ainsi les formules n
N(pair(n) impair(n)) et a Nb Nc N a
2
+b
2
= c
2
sont closes.
La formule p N[p[x (p = 1 p = x)] nest pas close : la variable p est lie mais la variable
x est libre, lnonc original (x na dautre diviseur que 1 et lui mme) dpendait bien de x.
1.3.5 Signes lieurs.
Les quanticateurs et ne sont pas les seuls signes lieurs (on dit aussi muticateurs) du
langage mathmatique, ni les premiers apparus historiquement. Vous connaissez par exemple la
notation pour lintgrale : dans lexpression
_
x
0
(t
2
+ t + a)dt la variable t est lie, les variables
x et a sont libres. Dautres signes connus sont :
la somme et le produit (ni ou inni),

n
i=0
i
2
+i (i lie, n libre),

n=1
(1+
1
n
)
1
n
(expression
close, n lie), la runion, lintersection etc.
7
lensemble des lments dun ensemble ayant une proprit donne : x N / x
2
< 100,
T(A) = X / X A (notation en comprhension) ;
les fonctions : la fonction de R R, x e
x
(on utilise aussi en logique la notation x.e
x
).
Remarquez que les signes comment lintgrale, la somme discrte etc. associent un terme un
terme, mais que la notation, densemble en comprhension associe une formule (la proprit
caractristique des lments dun ensemble), un terme (dsignant cet ensemble).
La liste prcdente nest pas exhaustive. On pourrait ajouter des expressions plus proche du
langage mathmatique usuel comme lensemble des solutions sur R de lquation ax
2
+bx +c
(ne dpend manifestement pas de x), lensemble des vecteurs du plan de la forme au +bv, avec
a, b Z etc.
Un mme nom de variable lie peut dsigner plusieurs variables direntes dans une expression.
Par exemple lexpression
_
b
a
(x
2
+x)dx +
_
c
b
(x
2
+x)dx fait apparatre deux variables lies de nom
x (on peut tout aussi bien lcrire
_
b
a
(u
2
+u)du +
_
c
b
(v
2
+v)dv).
On est donc amen parler de la place dun signe, nom de variable ou autre, dans une expres-
sion, on dit plutt occurrence de variable. Par exemple dans la dernire expression x a 6 occurrences
qui correspondent deux variables lies. Toutes les occurrences nont pas le mme usage. Dans
_
b
a
(x
2
+ x)dx, le x de dx est appel occurrence indicative. De mme pour les quantications : la
premire occurrence de n dans n(pair(n) impair(n)) est loccurrence indicative.
On parle galement de porte ou de champs dun signe lieur (ou de la variable associe) :
si x est loccurrence indicative, la sous-expression o toute occurrence libre de la lettre x dans
la sous-expression fait rfrence cette variable. Pour lintgrale le champs est limit par les
signes
_
et dx, pour un quanticateur cest la formule immdiatement droite de loccurrence
indicative (il faut ventuellement des parenthses) etc. Remarquez que les occurrences lies de x
lintrieur du champs dune occurrence de x ne peuvent tre lies nouveau. Ainsi dans lexpression
xy[x y = 2x (x = y x = y + 1)], on a deux variables lies direntes de nom x dont les
champs sont superposs. On peut crire plus clairement xy[z y = 2z (x = y x = y + 1)].
Lusage dun mme nom pour des variables dont les champs sont superposs, comme dans
lexpression du paragraphe prcdent, est viter car confus, mme si formellement on peut
laccepter car on peut lui donner un sens. On considre quun variable libre a pour champs toute
lexpression. Ainsi vous savez dj quil vaut mieux ne pas crire
_
x
0
(x
2
+ x)dx ou mme x +
_
y
0
(x
2
+x)dx
(x apparat comme variable libre et comme variable lie). On dira que lexpression est polie quand
les champs de variables de mme nom y sont toujours disjoints. Remarquez que lusage de deux
variables lies de mme nom mais de champs disjoints, comme dans lexpression
_
b
a
(x
2
+ x)dx +
_
c
b
(x
2
+x)dx doit tre admise.
Il existe aussi des formes de liaison moins vidente, comme les liaisons sans occurrence indica-
tive : lensemble des solutions de lquation..., les vecteurs de la forme....
Pour terminer rsumons ce qui permet de distinguer variables libres et lies.
Si une variable x est lie ou muette dans une expression E, alors on obtient une expression de
mme sens en remplaant toutes les occurrences de cette variable x par une lettre napparaissant
pas dans lexpression E. Sauf quand on sautorise certaines liberts dans lcriture des liaisons
(occurrence indicative manquante), on obtient un assemblage qui na pas de sens en remplaant
toutes les occurrences dune variable lie x par une constante ou un terme (dsignant une objet
du domaine dans lequel x varie) qui nest pas une variable.
Si une variable x est libre ou parlante dans une expression E, alors on obtient une expression
qui a un sens (en gnral dirent) en remplaant toutes les occurrences de cette variable x par
nimporte quel terme (dsignant une objet du domaine dans lequel x varie).
1.3.6 Logique du premier ordre et logique dordre suprieur.
Revenons sur la distinction entre objets et formules. Les ensembles sont des objets, or ils
sont dnis laide dune proprit. Ainsi on peut dnir x est pair
d
q N x = 2 q.
8
La proprit tre pair pourrait tre note x q N x = 2 q, cest un prdicat de
sorte nat prop (elle associe une formule un entier). Ce nest dailleurs pas une notation
trs dirente de x / q N x = 2 q, simplement on linterprte diremment, et on lui
donne ventuellement une sorte dirente. On peut considrer directement les prdicats comme
des ensembles (des objets) et donc autoriser par exemple des prdicats sur les prdicats (sorte
(nat prop) prop), mais aussi des quantications sur les prdicats (et ventuellement sur les
fonctions). Dans ce cas on parle de logique dordre suprieur. Quand on autorise uniquement les
variables dobjet (de sorte atomique) et les quantications sur ces objets, on parle de logique du
premier ordre, multisorte sil y a plusieurs sortes dobjets, monosorte sinon.
La logique dordre suprieur telle que nous lavons esquisse est stratie : on ne met pas au
mme niveau par exemple les entiers naturels (de sorte atomique) et les ensembles dentiers (de
sorte nat prop). Ainsi un prdicat comme tre une loi associative sur un ensemble donn,
doit tre redni chaque niveau. Ce prdicat devrait sappliquer (N, +), mais aussi (Z, +).
Supposons que les lments de Z soient des classes dquivalences dentiers naturels, donc des
ensembles dentier, on voit que la sorte du prdicat tre associatif est
(nat prop) (nat nat nat) prop
dans le premier cas et que dans le second cas il faudrait remplacer nat dans la sorte ci-dessus par
nat prop. De la mme faon il faudrait un ensemble vide chaque niveau. On peut galement
avoir besoin (penser des chanes de quotients) de construire des ensembles dobjets de niveaux
dirents. Ces problmes sont traits dans les Principia mathematica de Russell et Whitehead
qui proposent une fondation des mathmatiques sur une logique dordre suprieur.
On pourrait penser que la restriction syntaxique impose par les sortes est trop contraignante.
Un prdicat pourrait sappliquer des expressions de sorte direntes, ou de faon quivalente on
pourrait considrer que la notation x / . . . construit un objet de la sorte de base ensembles.
Mais ceci conduit un systme incohrent, et cest justement pour cela que Russell a introduit les
sortes dans son systme logique.
En eet, si un prdicat peut sappliquer un objet de nimporte que sorte, il peut en particulier
sappliquer lui mme. On peut alors appliquer une variable de prdicat P unaire elle mme
P(P), cest une formule, on peut prendre sa ngation P(P). On dnit maintenant un nouveau
prdicat R par R(P)
d
P(P). On obtient R(R) R(R) : contradiction. Cest le paradoxe
de Russell. On va reformuler le paradoxe dans une notation ensembliste plus familire, mais la
formulation prcdente montre bien comment les sortes empchent le paradoxe : si les sortes
doivent tre respectes (aucune autre galit entre sortes que syntaxique), un prdicat de sorte
a prop ne pourra jamais sappliquer lui-mme car a et a prop ne seront jamais identiques.
En notation ensembliste, avec le symbole , le prdicat P correspond lensemble x, P(y)
y x, et donc P(P) x x. Lensemble de Russell qui correspond au prdicat R est donc
r = x / x , x. Le paradoxe dcoule de r r r , r.
On ne va pas plus loin dans ce sens, dautant que nous navons pas du tout formalis la logique
dordre suprieur et que nous ne le ferons pas. Le systme Phox utilis en sances machines est
fond sur une logique dordre suprieur avec plusieurs types de base. Ce choix est fait non pour des
raisons fondationnelles, comme celles qui viennent dtre exposes, mais pour des raisons pratiques.
La vrication syntaxique peut se faire mcaniquement laide des sortes, et cela vite de grer
au niveau des preuves certains problmes purement syntaxiques. Des langages de programmation
comme ceux de la famille ML utilisent dailleurs les sortes (ou types) de faon assez analogue.
La logique que nous tudierons est essentiellement la logique du premier ordre une seule
sorte dobjet. Elle nutilise pas dautres signes lieurs que et . Il savre quelle est la fois suf-
samment simple pour avoir permis une tude mathmatique pousse, et susamment expressive
pour que lon puisse dvelopper une thorie des ensembles du premier ordre qui puisse fonder les
mathmatiques. On verra quen thorie des ensembles, on vite le paradoxe de Russell non pas
en restreignant par les sortes lcriture de certaines formules, donc de certains prdicats, mais
en considrant que certains prdicats (dnis par des formules) ne dnissent pas des ensembles.
Quand on parlera de logique du premier ordre sans autre prcision, il sagit de la logique du
premier ordre un seul sorte dobjet.
9
La logique dordre suprieur peut dailleurs aussi sexprimer, au travers dun codage et dune
axiomatisation, comme une thorie du premier ordre.
1.3.7 Les notations purement logique.
Parmi les diverse notations abordes, certaines sont lies un domaine particulier, le symbole
+ pour laddition, le symbole < pour relation dordre, le plus petit ..., dautres seront
utilises dans tous les langages, le connecteur , le quanticateur , les variables etc. En
logique du premier ordre il ny a que des variables dobjets.
Les notations purement logiques comprennent donc, les variables, les connecteurs, nous nous
restreignons , , , , , les quanticateurs, nous nous restreignons , , auxquels on
ajoute le plus souvent = lgalit entre objets (symbole de prdicat binaire) qui a la mme
interprtation quelque soit le domaine tudi : lidentit de ces deux arguments.
1.3.8 Signature et thorie.
Pour le moment il ne sagit pas de dnir le langage des mathmatiques en gnral, mais le
langage dune thorie particulire : thorie des groupes, thorie de lordre, arithmtique, gom-
trie...
Outre les notations purement logiques du paragraphe prcdent, une thorie utilise des sym-
boles de constante, de fonctions (ou oprations) et de prdicats particuliers. La suite de ces sym-
boles est appele signature. Chacun de ces symboles doit tre muni dune sorte, larit sut pour
la logique du premier ordre.
Par exemple le langage de la thorie des ordres stricts (une seule sorte dobjet) a pour signature
(<), < tant un symbole de prdicat binaire. La thorie des groupes peut sexprimer dans le langage
(e, , ( )
1
), o e est un symbole de constante, un symbole de fonction binaire, ( )
1
un symbole
de fonction unaire. Larithmtique peut sexprimer dans le langage de signature (0, s, +, , ), o
0 est un symbole de constante, s (pour le successeur) un symbole de fonction unaire, + et des
symboles de fonction binaire et un symbole de prdicat binaire.
La gomtrie plane sexprimer naturellement comme une thorie deux sortes dobjet, points
(p) et droites (d), dont le langage a pour signature (relation dincidence) prdicat binaire de
sorte p d prop.
Un langage du premier ordre de signature o na pour termes que des termes forms partir
des variables, des constantes de o quand o en contient, composs avec des symboles de fonctions
de o, si o en contient.
Un langage du premier ordre de signature o na pour formules atomiques que des prdicats
appliqus des termes de signature o, et des galits entre termes de o (sauf cas particuliers).
Les formules du langage sont obtenus uniquement en composant les formules atomiques laide
des connecteurs et des quanticateurs.
Une thorie dans un langage de signature o est un ensemble de formules closes de ce langage.
Par exemple la thorie des ordres stricts, dans le langage de signature (<), comporte les deux
formules closes :
xyz(x < y (y < z x < z)) transitivit
xx < x irreexivit
Ceci est trs restrictif. Par exemple on ne peut dire quun groupe est simple dans le langage du
premier ordre de la thorie des groupes : pour dire tout sous-groupe distingu est trivial, il
faut quantier sur les sous-groupes. En logique du premier ordre on ne peut quantier que sur les
lments du groupe. Dans le langage du premier ordre des ordres, On ne peut pas dnir un bon
ordre (tout ensemble non vide admet un plus petit lment). Pour traiter ces notions on doit donc
passer en logique dordre suprieur, ou changer de signature.
Rappelons que la thorie des ensembles, qui permet thoriquement dexprimer toutes les ma-
thmatiques, est une thorie du premier ordre de signature () (un symbole de relation binaire).
10
1.4 Preuves et vrit.
Nous nous restreignons aux langages du premier ordre une seule sorte dobjet. Aprs avoir
dcrit (informellement pour le moment) la syntaxe de ces langages, il sagit maintenant de dcrire
leur smantique, le sens de leurs lments. Pour dcrire la smantique dun langage naturel il est
assez facile, au moins en apparence, de faire rfrence au monde extrieur. En mathmatiques cest
moins vident. On va dcrire la smantique du langage, dune part par lusage des lments du
langage, dautre part en faisant rfrence un monde mathmatique considr comme existant
indpendamment.
On distingue deux usages : dune part la preuve mathmatique. Par exemple on peux dmontrer
la formule suivante dans la thorie des ordres stricts (voir paragraphe 2.1)
xy(x < y y < x) anti-symtrie stricte
Dautre part on peut remarquer que lensemble des entiers naturels N muni de lordre usuel
est un ordre strict. On montre ainsi par exemple quun ordre strict peut ne pas avoir de plus
grand lment. En eet, tous les noncs dmontrs dans la thorie des ordres stricts sont vrais
pour (N, <), qui na pas de plus grand lment. Ce genre dusage est bien connu en algbre.
Pour montrer quun nonc nest pas consquence de la thorie des groupes, il sut dexhiber
ou de construire un groupe qui ne vrie pas cet nonc. On interprte donc une formule dans
une structure. Cest ce genre dusage que lon appellera plus prcisment smantique du langage,
mme si cette smantique npuise pas et de loin la signication des expressions du langage.
1.4.1 Signature et structure.
On gnralise ici des notions bien connues en algbre.
tant donn une signature o, une o-structure / est la donne :
dun ensemble non vide, soit M, appel ensemble de base de la structure /;
dun lment c
M
de M pour chaque symbole de constante c de o ;
dune fonction
4
f
M
de M
n
dans M pour chaque symbole de fonction f darit n dans o ;
dun sous-ensemble R
M
de M
n
pour chaque symbole de prdicat R darit n de o.
En reprenant lexemple ci-dessus, (N, <) est une o-structure pour o = (<).
Si nous prenons le langage de larithmtique de signature T = (0, s, +, , ), on peut dnir ^ =
(N, 0
N
, s
N
, +
N
,
N
,
N
) muni des constantes, oprations et relations, usuelles pour interprter
chacun des symboles de T. Le symbole s est interprt par la fonction de N N qui ajoute 1
un entier, + par la fonction addition usuelle ( deux arguments) etc.
Des notations comme s
N
, +
N
sont assez lourdes. Sil ny a pas dambigut sur la structure
concerne, on oubliera lindication de celle-ci, par exemple on notera s, +, et nous noterons mme
de faon identique symbole et interprtation, sil est clair daprs le contexte que lon parle de
linterprtation.
Une autre T-structure est Z muni des oprations et prdicats usuels, Z/2Z en interprtant
0 par le 0 de Z/2Z, les oprations avec leur interprtation usuelle, et lordre par exemple par
(0, 0), (0, 1), (1, 1) (ce qui signie que dans cette structure lon a 0 0, 0 1 et 1 1, mais pas
1 0)
5
. On pourrait tout aussi bien construire une structure ^

densemble de base N, o 0 est


interprt par 1, s par la fonction constante nulle etc.
Quand il sagit dun modle ni on reprsente souvent une opration binaire par sa table, un
prdicat binaire par une table ou par un graphe.
Il est important que lensemble de base dune structure soit non vide. Outre que le cas o
lensemble de base est vide a assez peu dintrt, cela compliquerait les systmes de preuves si lon
voulait que celles-ci restent correctes dans de telles structures.
Par contre nous navons pas limin les structures dont lensemble de base a un seul lment,
un cas videmment dgnr puisque linterprtation des symboles de fonctions et de constantes
est impose, et que les symboles de prdicats nont que deux interprtations possibles ( ou M
n
).
4
Nous considrons que les fonctions sont partout dnies.
5
Cet ordre nest pas compatible avec laddition
11
1.4.2 Interprtation dans une structure.
Une fois donne une o-structure /, linterprtation des termes clos du langage de signature o
/ est xe et se calcule naturellement partir des interprtation des symboles de constantes et
de de fonctions. Si le terme contient des variables libres, il faut commencer par aecter une valeur
chacune de ses variables, un objet de / pour dterminer linterprtation du terme.
Dans une o-structure / une formule du langage o est vraie ou fausse, on le dcide suivant
linterprtation des symboles de prdicats de o, dans /, deux termes sont gaux sils dsignent
le mme objet de o. Pour interprter une formule quelconque, il faut dabord aecter une valeur
chacune de ses variables libres. La dnition de ces interprtations suit lintuition. On en verra
plus tard une dnition formelle.
Notons que lordre des quanticateurs est important. Par exemple xy x y est une formule
vraie dans N est fausse dans Z, qui arme que a un plus petit lment, le x, qui vient en
premier dans la lecture de la formule, ne peut dpendre de y, qui nexiste pas encore. yx x y
est vraie dans Z et dans N, l on peut choisir x en fonction de y, pour les deux structures Z et N
(et les ordres larges en gnral), x convient.
Si une formule close du langage de signature o est vraie dans une o-structure, on dit que cette
structure satisfait la formule ou quelle est modle de la formule. On tend ceci une thorie
un ensemble de formules closes. Une thorie est satisfaite dans une structure, ou a cette structure
pour modle, si chacune de ses formules est satisfaite.
On ne sintresse bien-sr quaux thories qui ont au moins un modle, les thories dites
cohrentes. Habituellement on se donne un ensemble daxiomes, par exemple ceux de la thorie
des groupes, et il sagit den dduire des thormes qui seront donc satisfaits par tous les groupes
(c.a.d. les modles des axiomes de groupe). On peut dnir la dduction ainsi, une formule close
F se dduit dune thorie T si tous les modles de T sont modles de F. Cest une dnition
smantique qui nest pas trs opratoire. On va plutt formaliser la dduction en donnant un
certain nombre de rgles de preuve : les gure communes du raisonnement. Ces rgles respecterons
bien-sr la satisfaction, et mieux nous montrerons quelles capturent compltement la dduction
smantique : cest le thorme de compltude de Gdel.
1.5 Langage et meta-langage.
Si on reprend les lments, pour le moment trs informels, que nous avons donn, on saperoit
que nous avons distingu le langage tudi, un langage du premier ordre de signature donne,
du reste du langage. Ne serait-ce que le signe , certaines abrviations, comme a ,= b pour
a = b, les quantications bornes etc. ne font pas parties du langage tudi. Par ailleurs
on prsuppose des notions comme celles de structure, utilises pour la smantique de la logique
du premier ordre qui ne sont pas compltement lmentaires. Quand on dnira prcisment la
syntaxe dun langage du premier ordre on verra galement quil faut mettre en uvre un attirail
mathmatique simple mais qui nest pas non plus compltement lmentaire.
Pour claircir les choses on distingue le langage tudi du langage dans lequel on ltudie
que lon appelle meta-langage. On ne se pose pas trop de question (en tout cas dans ce cours)
sur la nature du meta-langage, mais clairement il utilise des notions mathmatiques usuelles. La
formalisation de la logique que nous avons commenc de dcrire nest pas une refondation de la
logique partir de rien.
La ncessit de sparer le langage du meta-langage apparait dans le paradoxe de Richard,
simpli ensuite par Berry qui est le suivant. Soit n le plus petit entier naturel tel que lon ne
puisse dnir n en moins de 25 mots. On vient de dnir lentier en question en moins de 25 mots.
Si maintenant on prcise que cet entier ne peut tre dni en moins de 25 symboles lmentaires
dans le langage de signature o, il est clair que cette expression est une expression du meta-langage
et non du langage de signature o, il ny a plus de paradoxe.
12
2 Formalisation de la dduction.
2.1 Introduction.
La formalisation des preuves mathmatiques que nous allons dcrire est loigne des preuves
mathmatiques relles, cause justement de son caractre formel. Elle en respecte cependant la
structure.
Nous allons prsenter la dduction naturelle, introduite par Gentzen en 1935. Cest le systme
de preuve sur lequel est fond le logiciel Phox que vous utiliserez en TP. Avant de dcrire ce
systme faisons quelques remarques pralables.
2.1.1 Structure arborescente des preuves.
Les preuves usuelles ont une structure arborescente. En eet mme si une preuve est un texte,
donc crit linairement, on est amen distinguer dirents cas : raisonnement par cas, raison-
nement par rcurrence, donc faire deux preuves indpendantes lune de lautre pour prouver
un rsultat donn. Des mots comme or marquent aussi larborescence en faisant rfrence un
rsultat dj prouv, dont ne dpendait pas jusqu prsent le fragment de preuve en cours. Les
numrotations de rsultats sont galement un moyen de faire rfrence un rsultat qui ne vient
pas immdiatement dtre dmontr.
2.1.2 Contexte et conclusion.
Ensuite on remarque quil y a implicitement dans une preuve une notion de conclusion courante,
la formule que lon cherche dmontrer ou que lon vient de dmontrer, et une notion de contexte
courant, cest dire de rsultats dj dmontrs, dhypothses faites au cours de la preuve.
Cette conclusion courante et ce contexte volue au cours de la preuve. Par exemple pour le
raisonnement par labsurde, on ajoute au contexte la ngation de la formule que lon est en train
de prouver (cest dire la conclusion courante), et on cherche prouver une contradiction, la
contradiction devient donc la conclusion courante.
Il est donc ncessaire, pour un systme de preuve qui ne soit pas trop loign de la preuve
ordinaire, de manipuler un couple constitu du contexte et de la conclusion, la conclusion se
dduisant du contexte, cest dire une relation de dduction entre un nombre ni de formules (le
contexte) et une formule (la conclusion) que lon note
A
1
, . . . , A
n
C
o A
1
, . . . , A
n
dsignent les formules du contexte, et C la conclusion. Le signe indique la
dduction. Un tel couple est appel aussi squent, si on insiste plus sur laspect formel.
2.1.3 Un exemple de preuve.
Analysons une dmonstration trs simple. On a vu au paragraphe 1.4 les axiomes dordre strict.
Une preuve de lanti-symtrie dun ordre strict est nonce la gure 1.
Montrons quun ordre strict est antisymtrique
1
. Par labsurde, supposons que x < y et y < x,
2
par transitivit x < x,
3
ce qui est impossible par irreexivit,
4
donc pour tous x et y, si x < y,
alors on na pas y < x
5
.
Fig. 1: Exemple de preuve
Cette preuve est analyse en identiant chacune des tapes (indique par un numro sur la
gure 1) la conclusion courante et le contexte courant, la gure 2. On ne note dans le contexte
que les formules qui apparaisent au cours de la preuve, et pas les axiomes de la thorie la
transitivit et lirreexivit.
Le systme de preuves que nous allons introduire va manipuler explicitement des relations de
dduction.
13
1. Montrons quun ordre strict est antisymtrique
la relation de dduction initiale (que lon cherche prouver) est :
xy(x < y y < x)
2. Par labsurde, supposons que x < y et y < x,
signie que lon cherche dmontrer une contradiction pour x et y quelconques vriant
x < y et y < x la relation de dduction courante devient donc (la contradiction se note ) :
x < y, y < x
3. par transitivit x < x
signie cette fois-ci que lon a dmontr x < x, en utilisant la transitivit :
xyz(x < y (y < z x < z))
la relation de dduction courante devient
x < y, y < x x < x
4. ce qui est impossible par irreexivit,
signie que lon a aboutit une contradiction, en utilisant lirreexivit :
x x < x
le squent courant devient
x < y, y < x
celui que lon souhaitait obtenir en 2.
5. donc pour tous x et y, si x < y, alors on na pas y < x,
on rnonce le rsultat dmontr (voir 2).
Fig. 2: Premire analyse de lexemple
2.1.4 Rgles dintroduction, rgles dlimination.
Il sagit maintenant de dgager les gures lmentaires du raisonnement, pas exactement celles
qui ont t utilises dans lexemple analys la gure 2, mais des rgles plus lmentaires, qui par
composition permettrons de retrouver celles utilises pour lexemple.
On va classer presque toutes les rgles en deux familles, les rgles dintroduction concernent la
faon de prouver une formule, les rgles dlimination concernent la faon dutiliser une formule
dans la preuve
6
.
On distingue suivant la forme des formules, plus prcisment la dernire construction utilise
pour la formule, quanticateur ou connecteur.
Supposons que lon veuille prouver une formule x F(x). Pour cela, on prend x quelconque
(ce qui signie que x est un nouveau nom de variable, cest dire que lon ne sait rien de x
pour le moment), et on prouve F(x). La quantication est souvent associe une implication.
Pour prouver F G, on suppose F (on lajoute au contexte) et on prouve G. Dans le cas de la
quantication borne x E F, si on applique successivement les deux rgles, on voit que pour
prouver x E F (x(x E F)) on suppose que x est quelconque dans E, et on prouve F.
Ces deux rgles sont des rgles qui permettent de prouver une formule, ce sont des rgles din-
troduction. On peux dcrire ces rgles de deux faons qui correspondent deux faons direntes
de dcrire la preuve, pour limplication, celle que lon a utilis dans lexemple pour prouver
6
Dans le logiciel Phox les commandes intro et intros utilisent les rgles dintroduction, les commandes elim,
apply, left et lefts utilisent les rgles dlimination.
14
F G, on prouve G sous hypothse F, cest dire F G , mais aussi on a prouv G sous
hypothse F, on a donc prouv F G (dans la premire formulation on dcrit la preuve en
arrire, on procde par condition susante, dans le second cas on dcrit la preuve en avant,
on procde par dduction directe).
Si on veut maintenant utiliser une formule x F(x), on en dduit F(t) pour t un terme, cest
dire t que dsigne un objet du domaine sur lequel varie x. Si on veut utiliser une formule F G,
on prouve F et on en dduit G. Ces deux rgles sont des rgles dlimination. L encore on peut
les dcrire de plusieur faons, par exemple pour la rgle dlimination de , on a prouv x F(x),
on a donc F(t) (en avant) ou encore pour prouver F(t) on prouve x F(x) (en arrire).
La rgle dlimination de se dit on a F G, on a F, on a donc prouv G , mais aussi par
exemple on a F G, pour prouver G, il sut de prouver F .
Pour analyser la dmonstration donne en exemple, il nous faut galement les rgles de la
ngation. On remarque que A est synonyme de A si A alors il y a contradiction. On a
donc pour A la rgle dintroduction : pour prouver A on suppose A et on prouve (labsurde)
, et la rgle dlimination on a prouv A et on a prouv A, on en dduit .
Reprenons lanalyse de la dmonstration donne la gure 2. Ltape 2 correspond une
suite de rgles dintroduction utilises en arrire sur les deux quanticateurs universels, puis sur
limplication, puis sur la ngation. Ltape 3 correspond une suite de rgles dlimination utilises
en avant (3 quanticateurs universels, deux implications). Ltape 4 correspond une suite de rgles
dlimination utilises en avant (un quanticateur universel, une ngation). Ltape 5 ne correspond
pas une rgle, mais arme que la preuve est termine. Pour dcomposer compltement la preuve
les rgles nonces jusquici ne sont pas tout fait susantes. Il nous faut un point de dpart,
nous avons besoin en plus des axiomes de la thories daxiomes purement logiques, les axiomes de
la dduction, qui arment que pour une formule F quelconque de F on dduit F , cest dire
F F. La gure 3 analyse la preuve de la gure 1 en rgles lmentaires de preuves.
1 xy(x < y y < x)
2 y(x < y y < x) introduction de en arrire
x < y y < x introduction de en arrire
x < y y < x introduction de en arrire
x < y, y < x introduction de en arrire
3 xyz(x < y (y < z x < z)) axiome de la thorie
yz(x < y (y < z x < z)) limination de en avant
z(x < y (y < z x < z)) limination de en avant
x < y (y < x x < x) limination de en avant
x < y x < y axiome de la dduction
x < y y < x x < x limination de limplication en avant,
partir des deux squents prcdents
y < x y < x axiome de la dduction
x < y, y < x x < x limination de limplication en avant,
partir des deux squents prcdents
4 x x < x axiome de la thorie
x < x limination de en avant
x < y, y < x x < x rsultat de 3
x < y, y < x limination de limplication en avant,
partir des deux squents prcdents
Fig. 3: Analyse de lexemple en rgles lmentaires de preuves
On remarque la gure 3 que les rgles dintroduction sont utilises en arrire, et les rgles
dliminations en avant. Il est galement usuel de commencer par des rgles dintroduction (en
arrire). La structure de la preuve est bien arborescente, et on peut galement la reprsenter
comme la gure 4. Les rgles se lisent en avant de haut en bas et en arrire de bas en haut.
Dans ce cours dintroduction on ne soccupera pas de la structure des preuves (cest lobjet
15
x x < x
x < x

e
xy(x < y (y < x x < x))
y(x < y (y < x x < x))

e
x < y (y < x x < x)

e
x < y x < y
x < y y < x x < x

e
y < x y < x
x < y, y < x x < x

e
x < y, y < x

e
x < y y < x

i
x < y y < x

i
y(x < y y < x)

i
xy(x < y y < x)

i
Fig. 4: Arbre de preuve de lexemple
de la thorie de la dmonstration), et on se contentera dune description textuelle des arbres de
preuves.
La faon la plus claire de comprendre la relation entre preuve formelle en dduction naturelle
et preuve usuelle et de voir cette dernire comme une suite dinstructions pour la construction
de la preuve formelle. Cest aussi ainsi que lon peut comprendre les preuves dans le systme
Phox. Dans le cas dune preuve mathmatique usuelle il sagirait souvent plutt dindications que
dinstructions proprement dites.
2.2 La substitution.
Les rgles de dmonstration utilisent la substitution dun terme une variable. Dans les pa-
ragraphes prcdents nous avons utilis une notation fonctionnelle pour les formules F(x), F(t),
et nous continuerons le faire. Mais nous ne dnirons pas formellement ces notions : sil fallait
formaliser, F dsignerait une proprit et non plus une formule. On utilisera plutt la substitution
logique. On note F[t/x] pour la formule F dans laquelle t remplace x.
Il est entendu que la substitution ne remplace que les variables libres :
(x < x)[y/x] est y < y mais (x x < x)[y/x] est x x < x .
Il est galement entendu que cette substitution renomme si ncessaire les variables lies de
faon quune variable du terme substitu reste libre, cest dire quelle vite ce que lon appelle
la capture de variable, par exemple :
x(x < y y < x)[x/y] est z(z < x x < z)
(on a d renommer la variable lie x en z pour viter la capture), en eet :
(x < y y < x)[x/y] est (x < x x < x)
La substitution logique sera dnie quand on formalisera les langages du premier ordre. Elle ne
fait pas partie du langage tudi, cest une notation du meta-langage.
2.3 Les rgles de preuve.
On va numrer les rgles de preuves lmentaires, pour une signature L, et T une thorie dans
le langage L.
Les rgles manipulent des relations de dduction dans la thorie T entre un multi-ensemble de
formules A
1
, . . . , A
n
et une formule C du langage L, on note :
A
1
, . . . , A
n

T
C .
16
Un multi-ensemble est une suite non ordonne de formules, ou encore un ensemble dans lequel
on autorise les rptitions, on peut le formaliser comme une suite modulo permutation de ses
termes, ou encore comme un ensemble de formules indexes. Concrtement on ne se soucie pas
de lordre entre les formules A
1
, . . . , A
n
, mais il pourrait y avoir des rptitions. Si est un
multi-ensemble, et A formule, on note , A le multi-ensemble obtenu en ajoutant une occurrence
de A. Si et sont des multi-ensembles, on note , lunion disjointe (la juxtaposition) des
multi-ensembles et .
7
Les rgles que nous allons donner sont les seules que lon puisse utiliser pour tablir la relation
de dduction
T
C. Pour chaque connecteur ou quanticateur on donne une rgle dite dintro-
duction, qui donne la faon standard de prouver une formule construite avec ce connecteur ou
quanticateur, et une rgle dite dlimination qui donne la faon standard dutiliser une telle
formule. Les rgles sont nonces en avant.
La ngation peut se dnir partir de limplication et de labsurde :
A
def
A .
On drive immdiatement les rgles de la ngation, comme cas particuliers des rgles de limpli-
cation : voir gure 6.
La rgle dlimination de labsurde est superue : elle est en fait drivable par aaiblissement
et raisonnement par labsurde.
Pratiquement, on intgrera le plus souvent aux rgles de logiques (connecteurs et quantica-
teurs) les rgles de contraction. Cest dire que lon peut relire ces rgles en considrant que ,
dsigne une union ensembliste sur certaines occurrences. On dira par exemple que de A A et
A A on drive A A A par introduction de la conjonction, ce qui dissimule une contraction.
Remarquez que la substitution logique donne une faon commode de dsigner des occurrences
dun terme dans une formule, et de grer les problmes de capture de variable.
Par exemple, pour la rgle dlimination de lgalit, il faut se persuader que cela signie que
si B et t = t

, alors on a , B

, o B

est une formule obtenue en remplaant de


faon cohrente (pas de capture de variables) une ou plusieurs occurrences du terme t par t

.
On a vu dans les paragraphes dintroduction que ces rgles pouvaient se lire dans les deux
sens, en avant, telles quelles sont nonces dans la gure 5, ou en arrire. Au risque dtre trs
redondant, rnonons les rgles de la dduction naturelle de faon graphique, voir la gure 7. La
lecture de haut en bas correspond lnonc des rgles en avant, celle de bas en haut la lecture
en arrire. On sest restreint au cas purement logique (thorie sans axiome) et sans galit.
Dcrivons rapidement les rgles que nous navons pas abord dans les paragraphes prcdents.
Les rgles de la conjonction sont particulirement simples. La rgle dintroduction arme que pour
prouver A B il faut prouver A et il faut prouver B, les deux rgles dlimination arme que si
lon a prouv A B, on a prouv A et lon a prouv B.
La premire rgle dintroduction de la disjonction arme que pour prouver A B il sut de
prouver A, la seconde que pour prouver A B il sut de prouver B. La rgle dlimination de la
disjonction est celle du raisonnement par cas, si lon a prouv A B, pour prouver C on il sut
de prouver C sous hypothse A, puis de prouver C sous hypothse B. Ceci correspond bien , si
lon a A B, 1er cas : on suppose A, 2ime cas : on suppose B .
La rgles dintroduction du quanticateur existentiel arme que pour prouver x F(x), on
doit prouver F(t) pour t dsignant un objet du domaine sur lequel varie x. La rgle dlimination
signie que si lon a x A(x), on peut poser x
0
vriant A(x
0
). Le fait que x
0
est libre dans le
contexte signie que, cette tape, la seule proprit connue de x
0
est A(x
0
). Par exemple dans
la phrase On sait que x est pair, soit p tel que x = 2p , soit p tel que x = 2p correspond
la rgle dlimination de lexistentielle sur p x = 2p , et p ne doit pas apparatre libre ailleurs
(sinon on choisit un autre nom).
La rgle dlimination de labsurde signie que si lon a une contradiction, on en dduit nim-
porte quelle formule. Elle est utilise (souvent implicitement) par exemple dans un raisonnement
par cas sur A B : dans le contexte A on ne traite que le cas B.
7
On pourrait formaliser la dduction avec la notion densemble, plus familire que celle de multi-ensemble. La
notion de multi-ensemble convient mieux pour des raisons qui tiennent la thorie de la dmonstration et que lon
nexposera pas ici.
17
Affaiblissement et contraction.
Si
T
C, alors , A
T
C ; si , A, A
T
C, alors , A
T
C ;
Axiomes
Dduction. , A
T
A; Thorie. Si A T, alors
T
A;
Connecteurs.
Implication.
Introduction. Si , A
T
B, alors
T
A B;
limination. si
T
A B et
T
A, alors ,
T
B;
(cette rgle est souvent nomme Modus Ponens)
Absurde.
limination. Si
T
, alors
T
A;
Conjonction.
Introduction. Si
T
A et si
T
B, alors ,
T
A B;
limination (gauche). Si
T
A B alors
T
A;
limination (droite). Si
T
A B alors
T
B;
Disjonction.
Introduction (gauche). Si
T
A, alors
T
A B;
Introduction (droite). Si
T
B, alors
T
A B;
limination. Si
T
A B, Si , A
T
C, si

, B
T
C, alors , ,

T
C ;
Raisonnement par labsurde.
si , A
T
, alors
T
A;
Quantificateurs.
Quantification universelle.
Introduction. Si
T
A[y/x] o y est une variable qui napparat pas libre dans et A, alors
xA; (cette rgle est souvent nomme gnralisation)
limination. Si
T
xA, alors pour tout terme t de L on a
T
A[t/x] ;
Quantification existentielle.
Introduction. Si
T
A[t/x], alors
T
xA;
limination. Si
T
xA, Si , A[y/x]
T
C et si la variable y napparat pas libre dans , A
et C, alors ,
T
C ;
galit.
Introduction. Pour tout terme t de L,
T
t = t (cest un axiome) ;
limination. Pour tout terme t et t

de L, si
T
A[t/x] et
T
t = t

, alors ,
T
A[t

/x] ;
Aucune autre rgle que les prcdentes ne permet de driver une relation C.
Fig. 5: Rgles de la dduction.
La seule rgle qui ne rentre pas vraiment dans le schma des rgles dintroduction et dlimina-
tion est celle du raisonnement par labsurde. Cette rgle ressemble fort la rgle dintroduction de
18
Ngation.
Introduction. Si , A
T
, alors
T
A;
limination. Si
T
A et si
T
A alors
T
.
Fig. 6: Rgles de la ngation.
la ngation, et en mathmatique ces rgles sont toutes deux appeles raisonnement par labsurde.
Ainsi le par labsurde de lexemple trait gure 1 correspond en fait une rgle dintroduction
de la ngation. Pour bien comprendre la dirence, entre ces deux rgles il faut dabord noter
que nous nidentions pas A et A. Bien-sr, on prouve facilement en dduction naturelle que
A A (il faut lintroduction du ) et A A (il faut le raisonnement par labsurde).
Le raisonnement par labsurde et lintroduction de la ngation dirent dune faon essentielle.
Alors que la rgle dintroduction de la ngation ne fait quutiliser un composant de A, savoir
A, pour prouver A, la rgle de raisonnement par labsurde demande pour prouver A dintroduire
la formule A, qui nest pas prsente a priori. Sans cette rgle la logique est plus faible, il sagit
de la logique intuitionniste, qui ne permet pas de dmontrer par exemple le tiers-exclu AA (ce
sera dmontr en TD).
2.4 La dduction.
On dit donc que la relation de dduction A
1
, . . . , A
n

T
C est drivable quand elle est obtenue
partir des rgles de preuves de la gure 5, et uniquement avec ces rgles. Quand on arme
A
1
, . . . , A
n

T
C cela signie que la relation est drivable. Une formule close F est un thorme
de la thorie T si
T
F est drivable.
2.5 Quelques exemples de drivation.
On a dj vu un exemple dans les paragraphes prcdents. On va montrer que la symtrie et
la transitivit de lgalit sont prouvables
8
.
Lemme 2.1 Pour tous termes u, v et w, on peut driver seulement avec les rgles de lgalit :
u = v, v = w u = w u = v v = u
Dmonstration. Pour la transitivit : u = v u = v et v = w v = w, (axiomes de la dduction),
do par rgle dlimination pour lgalit (u = v est u = x[v/x]), u = v, v = w u = w.
Pour la symtrie : u = u (introduction de lgalit), et u = v u = v (axiome de la dduction),
do par rgle dlimination pour lgalit (u = u est x = u[u/x]), u = v v = u.
Ces relations sont dmontrables pour nimporte quels termes u, v et w, en particulier des
variables distinctes, soient x, y et z. On dduit alors par introduction pour limplication puis pour
le quanticateur universel :
xyz(x = y y = z x = z) xy(x = y y = x) .
Vous avez dautres exemples simples de drivation dans le polycopi dintroduction PhoX,
dans les premires sances de TP et dans la feuille dexercice sur la dduction. Des proprits
lmentaires comme la transitivit de la relation de dduction sont galement montres dans cette
feuille.
8
Cela sera utile pour la preuve de compltude
19
AFFAIBLISSEMENT CONTRACTION
B
, A B
w
, A, A B
, A B
c
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
AXIOME
A A
Ax.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
RGLES LOGIQUES
A B
, A B
i
A B
A
eg
A B
B

ed
, A B
A B
i
A B A
, B
e
, A
A
i
A A
,
e
A[y/x]
xA
i ()
xA
A[t/x]
e
A
A B
ig
B
A B

id
A B , A C

, B C
, ,

C
e
A[t/x]
xA
i
xA , A[y/x] C
, C
e ()
(*) La rgle
i
ne vaut que si y na pas doccurrences libres dans , A.
(**) La rgle
e
ne vaut que si y na pas doccurrences libres dans , A, C.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
LIMINATION DE LABSURDE RAISONNEMENT PAR LABSURDE

A
e
, A
A
c
Fig. 7: Rgles de la dduction (2)
20
3 Dnitions par induction.
Nous avons abords trs informellement un certain nombre de notions, termes, noncs... Quand
nous avons prcis par exemple ce que signiait variables libres et lies, nous avons en fait d-
ni les choses de faon circulaire. Pour traiter correctement ces notions on utilise les dnitions
par induction. Mme la dnition de la prouvabilit, dcrite de faon beaucoup plus prcise au
chapitre 2, demandera en toute rigueur dtre dnie par induction.
3.1 Lexemple des entiers.
La notion dentiers est susamment intuitive pour que vous layez utilise sans la dnir
formellement, dautant quelle est assez primitive en mathmatique. Supposons cependant que
nous voulions dnir les entiers. Voyons deux faons de procder.
Nous pouvons en donner une axiomatisation cest dire que les entiers sont dnis implici-
tement, par leurs proprits : lensemble des entiers muni dune constante 0 et dune opration
unaire s (lopration successeur, ajouter 1), qui vrie un certain nombre de proprits, dont une
essentielle est la proprit de rcurrence. Laxiomatique de Peano des entiers est la suivante :
successeur non nul x s x ,= 0 ;
injectivit du successeur xy (s x = s y x = y) ;
Rcurrence Pour toute proprit P sur les entiers :
P 0 y(P y P s y) x P x .
Lide est que lon obtient la suite des entiers en ajoutant 1 au prcdent entier obtenu, ce en
partant de 0. La proprit de rcurrence exprime que lon ne peut obtenir les entiers autrement.
Les deux premiers axiomes expriment que lon ne peut boucler ou revenir en arrire par cette
opration, cest dire que la structure des entiers est librement engendre par 0 et s : il ny a pas
dautres relations entre les entiers que celles induites par la construction : 0, s 0, ss 0, . . ..
On peut galement dnir explicitement lensemble des entiers. On ne considre plus les entiers
comme une notion primitive. On doit se placer dans un univers o existent un objet et une
opration unaire qui vrient les deux premiers axiomes, appelons les encore 0 et s (pensez aux
entiers comme une suite de btons, 0 est le vide et indique le point de dpart de la suite, s est
lopration ajouter un bton supplmentaire la n dun entier). On suppose galement que lon
peut parler densembles. On peut dnir alors lensemble des entiers comme le plus petit ensemble
N (plus petit au sens de linclusion) qui contient 0 et tel que si x N alors s(x) N. Montrons
que cette dnition est correcte. Quand un ensemble A vrie que si x A alors s(x) A, on dit
que A est clos par application du successeur. Appelons Cl(A) le fait pour A de contenir 0 et dtre
clos par successeur :
Cl(A)
d
[0 A et x(x A s(x) A)] .
On remarque que si chacun des ensembles dune famille (A
i
)
iI
vrie Cl(A
i
) alors leur inter-
section galement :
si i I Cl(A
i
), alors Cl
_

iI
A
i
_
()
On peut donc dnir lensemble des entiers comme lintersection de tous les ensembles A qui
contiennent 0 et qui vrient que si x A alors s(x) A :
N =

Cl(A)
A .
Il sagit bien dun ensemble vriant Cl(A) daprs (), et cest forcment le plus petit par
dnition.
21
Cest ce que lon appelle une dnition inductive. Cest exactement comme cela que nous
dnirons les entiers en thorie des ensembles (il faudra donner explicitement 0 et s), ce qui
permet de se ramener la seule notion densemble comme notion primitive.
La proprit ou principe de rcurrence, dit galement principe dinduction est alors une cons-
quence de la dnition : pour une proprit P donne il sut de prendre A = x N / P x.
Par hypothse cet ensemble contient 0 et est clos par successeur, cest dire vrie Cl(A), donc
contient N et donc la proprit P est vrie sur N.
On peut maintenant vouloir dnir une suite par rcurrence sur les entiers. Cest dire quun
entier a et une fonction binaire sur les entiers f : N N N tant donne, on dnit une suite
(u
n
)
nN
par (on note n + 1 plutt que s n) :
u
0
= a
u
n+1
= f(u
n
, n)
par exemple la fonction factorielle est dnie partir de 1 et de la multiplication par :
0! = 1
(n + 1)! = (n + 1) n!
On considre habituellement comme vident que lon a bien dni ainsi une fonction, mais ceci
constitue une nouvelle proprit que nous appelerons principe de dnition par induction.
Remarquez que pour que cette dnition soit correcte, il est essentiel que la structure des
entiers soit librement engendre. Ainsi, si lon dnit ^ en prenant pour 0 le 0 de Z/2Z et pour s
la fonction x x + 1 sur Z/2Z, la dnition de ^ =

Cl(A)
A reste correcte (videmment on ne
dnit pas les entiers, mais Z/2Z lui-mme qui est un ensemble ni et cela na pas grand intrt).
Par contre on ne peut pas donner une dnition comme celle de n! ci-dessus. Dans ce cas lon
aurait 1! = 1, et 2 [ 3!, ce qui dans Z/2Z donnerait 0 = 1.
Dans le cadre dune dnition explicite des entiers, en toute rigueur il faut montrer ce principe.
Voyons comment pour un principe de dnition (ce nest pas le plus gnral que lon puisse
noncer).
Proposition 3.1 (Dnition dune fonction par induction) Soit A un ensemble, a A et
f : N A A une fonction. Alors il existe une et une seule suite u
n
valeur dans A telle que :
u
0
= a
u
n+1
= f(n, u
n
)
Dmonstration. On dnit inductivement le graphe G de la fonction. Cest le plus petit sous-
ensemble de N A qui vrie les deux clauses de dnition de la fonction
pour X N A, Cl(X) := (0, a) X et n Nx A[(n, x) X (n + 1, f(n, x)) X]
G =

Cl(X)
X
Il est clair que la proprit Cl(X) passe lintersection, et quelle est ralise pour X = N A.
Montrons par rcurrence que cest bien le graphe dune fonction de N dans A :
n N!y A (n, y) G
n = 0 : Par dnition de G, (0, a) G. Si (0, b) G pour b ,= A, G(0, b) satisfait la proprit
de clture Cl, (car n N 0 ,= n + 1 !) ce qui contredit la dnition de G.
n n + 1 : Supposons que n ait une unique image et appelons la y
0
. Daprs la dnition de
G, (n + 1, f(n, y
0
)) G. Supposons que (n + 1, b) G pour b ,= f(n, y
0
). Alors lensemble
G (n + 1, b) a la proprit Cl. En eet dune part on a bien (0, a) G (n + 1, b)
(car 0 ,= n + 1 !). Dautre part de (m, x) G (n + 1, b), on dduit (m + 1, f(m, x))
G(n+1, b) pour m ,= n (car m+1 = n+1 m = n). Dans le cas o m = n, comme par
22
hypothse de rcurrence, y
0
est le seul lment de A tel que (n, y
0
) G, et que b ,= f(n, y
0
)
la proprit on a encore si (n, x) G (n + 1, b) alors (n + 1, f(n, x) G (n + 1, b).
Mais G(n+1, b) satisfait Cl contredit (n+1, b) G, pour b ,= f(n, y
0
). on ne peut donc
trouver un tel b, n + 1 a bien une unique image par f.
On peut certe considrer comme plus intuitivement vident le principe de dnition dune fonction
par induction sur les entiers que la dmonstration qui en est faite ci-dessus ! Cette dmonstration
aura un sens dans le cadre de la thorie des ensembles (ou la notion dentier nest pas primitive).
Pour construire les entiers il faudra donner des interprtations ensemblistes convenables de 0 et
du successeur.
Dans le cadre dune axiomatisation des entiers, on ne peut que poser comme axiome le principe
de dnition par induction (la proposition 3.1 o A est N). Pour formuler cette axiomatisation au
premier ordre, il faut ajouter au langage un symbole de fonction pour chaque fonction dnie par
induction, et la thorie les axiomes qui dnissent cette fonction. En pratique il sut dajouter
laddition et la multiplication. On obtient alors larithmtique de Peano proprement dite, savoir
la thorie dans le langage (0, s, +, ) qui aux axiomes dj donns ajoute les axiomes dnissant
ces oprations par rcurrence :
9
x x + 0 = x
xy x +s y = s(x +y)
x x 0 = 0
xy x s y = x +x y
Ce sont les principes prsents dans le cas particulier des entiers : dnition inductive dun
ensemble, principe dinduction, principe de dnition dune fonction (ou dun prdicat) par induc-
tion sur une dnition inductive librement engendre, que lon va utiliser pour dnir les notions
essentielles en logique. Les dnitions inductives que nous utiliserons seront moins familires, mais
nalement relativement intuitives. On admettra le principe de dnition dune fonction par in-
duction pour les dnitions inductives librement engendres (la preuve suit chaque fois le mme
schma que celle donne dans le cas particulier des entiers).
Mais voyons dabord quelques exemples trs simples de telles dnitions.
3.2 Suites nies dentiers.
Voyons un autre exemple de dnition inductive dune structure usuelle en mathmatique (la
dnition et la notation ne sont pas usuelles). Supposons donns une notion de couple, qui vrie
en particulier la proprit :
x, y, x

, y

[(x, y) = (x

, y

) (x = x

et y = y

)]
et un objet () pour la suite vide qui nest jamais gal un couple.
On peut dnir lensemble o suites nies dentiers par induction, o est le plus petit ensemble
qui vrie :
Suite vide () o
adjonction Si U o et v N, alors (U, v) o.
(la notation nest pas la notation usuelle)
Ces proprits sont bien stables par intersection.
Daprs ce que lon a suppos sur les couples et sur () :
Pour toute suite nie U et tout entier v, (U, v) ,= ().
Pour toutes suites nies U, U

, tous entiers v, v

,
(U, v) = (U

, v

) (U = U

et v = v

) .
9
On peut alors dune certaine faon dnir implicitement les autres fonctions dnies par induction sur les
entiers et image dans les entiers.Mais la dmonstration nous entranerais trop loin. Ce rsultat constitue une
tape importante de la preuve du premier thorme dincompltude de Gdel.
23
On peut dnir par induction le produit ni, partir de la multiplication sur les entiers :
() = 1
(U, v) = U v
ainsi que le prdicat not dapparition dans la suite :
n N n , ()
n (U, v) (n U ou n = v)
On peut alors dmontrer par induction par exemple que
U o (U = 0 0 U)
suite vide On a () = 1 et 0 , ().
adjonction On suppose le rsultat pour U, savoir
(U = 0 0 , U) (hypothse dinduction)
Soit un entier v. On a (U, v) = U v et 0 (U, v) (0 U ou 0 = v). Si v = 0 alors
(U, v) = 0 et 0 (U, v). Si v ,= 0 alors (U, v) = 0 U = 0, et 0 (U, v) 0 U, ces
deux noncs sont donc quivalents par hypothse dinduction.
3.3 Ensembles nis dentiers.
Voyons un dernier exemple assez articiel mais qui prsente une structure inductive qui nest
pas librement engendre : on va dnir par induction lensemble T des ensembles nis non vides
dentiers. On suppose connues les notions densembles, dappartenance, de runion etc. Lensemble
T est le plus petit ensemble tel que :
Singleton Pour tout entier n, n T ;
Runion Si A T et B T alors A B T.
Ces proprits sont stables par intersection. Cette dnition est correcte. On a donc un principe
dinduction qui peut, pour prendre un exemple trivial, nous permettre de montrer quun lment
de F contient au moins un lment :
Singleton n n ;
Runion Si A T et B T alors, par hypothse dinduction sur A, il existe un entier n tel que
n A et donc n A B.
Par contre on peut obtenir un mme ensemble de plusieurs faons direntes. Par exemple
0 peut tre obtenu directement comme singleton, ou comme 0 0. On ne pourra donc pas
donner directement de dnition par induction sur F comme celles donnes dans les exemples
prcdents.
3.4 Arbres de drivations.
tant donn un ensemble c dni par induction, et e un lment de c on appelle drivation
de e la suite des clauses de la dnition qui ont permis de montrer que e c. La drivation se
reprsente naturellement sous forme arborescente. Dans le cas des entiers cet arbre est un simple
l :
0 1 2
0
0
s
0
s
s

24
Dans le cas des suites dentiers tels que dnis au paragraphe 3.2 ci-dessus, les arbres de
drivations ont une forme de peigne, on a par exemple pour la suite (((0, 1), 2), 3)
0 1
(,) 2
(,) 3
(,)
Dans le cas des ensembles nis tels que dnis au paragraphe 3.2, 0, 1, 2 a plusieurs arbres
de drivation, par exemple :
0
1 2

0 1

1 2

Pour la dnition du paragraphe 3.1 un entier a un seul arbre de drivation, de mme une suite
pour la dnition du paragraphe 3.2. Une structure est librement engendre si et seulement si tout
lment dni possde un seul arbre de drivation, et alors on peut utiliser le principe dinduction
par dnition.
3.5 Complexit dune drivation.
On appelle complexit dune drivation la hauteur de son arbre de drivation, cest dire la
longueur de la plus longue branche de cet arbre (compte en artes). Si la structure est librement
engendre la complexit se dnit par induction sur la structure. On peut dduire le principe
dinduction sur la structure par rcurrence sur la complexit. On verra que pour les formules
du calcul des prdicats, on aura vraiment besoin dans la preuve de compltude de raisonner par
rcurrence sur la complexit de la formule.
25
4 Calcul propositionnel.
4.1 introduction.
On sintresse dans ce chapitre aux formules propositionnelles, cest dire sans quanticateurs.
Linterprtation dune formule propositionnelle close dun langage L dans une L-structure, sa vrit
ou fausset, ne dpend que de linterptation des formules atomiques qui la composent. Pour une
formule propositionnelle quelconque, linterprtation, une fois xe la valeur des variables libres, ne
dpend galement que de celle des formules atomiques qui la composent. Pour tudier ces formules,
on peut donc oublier la structure des formules atomiques : cest le calcul propositionnel.
4.2 Syntaxe.
On dnit la syntaxe du calcul propositionnel par induction. Soit un ensemble de constantes
propositionnelles T, lensemble des formules du calcul propositionnel sur T nous dirons formules
propositionnelles est dni inductivement par les clauses suivantes :
atomes si p T, p est une formule propositionnelle.
absurde est une formule propositionnelle.
ngation Si F est une formule propositionnelle F est une formule propositionnelle.
implication Si F et G sont des formules propositionnelles (F G) est une formule proposition-
nelle.
conjonction Si F et G sont des formules propositionnelles (F G) est une formule proposition-
nelle.
disjonction Si F et Gsont des formules propositionnelles (FG) est une formule propositionnelle.
On utilisera galement comme abrviations pour (le vrai) et (F G) pour
(F G) (G F) (lquivalence).
Si lon veut formaliser un problme en calcul propositionnel, on prendra pour T un ensemble
qui a une certaine structure, des formules atomiques dune certaine signature par exemple (voir
la suite, paragraphe 4.4) mais on na pas besoin de connatre cette structure pour tudier la
smantique.
Une proprit importante et la proprit de lecture unique qui dit que la structure des formules
du calcul propositionnel est librement engendre, plus prcisment
Proposition 4.1 (lecture unique) Pour toute formules F, F

, G et G

du calcul propositionnel
(on utilise dans ce qui suit le signe = pour lgalit syntaxique) :
1. si p est une variable propositionnelle, F ,= p, (F G) ,= p, (F G) ,= p, (F G) ,= p ;
2. F ,= (F G), F ,= (F G), F ,= (F G) ;
3. (F G) ,= (F G), (F G) ,= (F G), (F G) ,= (F G).
4. si F = F

alors F = F

;
5. si (F G) = (F

) alors F = F

et G = G

;
6. si (F G) = (F

) alors F = F

et G = G

;
7. si (F G) = (F

) alors F = F

et G = G

;
Ces proprits sont lanalogue des deux proprits : le successeur est non nul et linjectivit du
successeur, sur les entiers (voir paragraphe 3.1).
Si les formules sont vues comme des mots sur un alphabet (suites nies de lettres de lalpha-
bet), certaines de ces proprits sont videntes (1, 2, 4), les autres rsultent de proprits des
parenthsages, et sont couramment admises, ce que lon fera ici.
Il ny a pas de notion de liaison en calcul propositionnelle. Une thorie propositionnelle est
donc un ensemble arbitraire de formules propositionnelles.
26
4.3 Smantique.
La smantique Pour interprter une formule du calcul propositionnel, il sut de donner une
valeur de vrit ses constantes propositionnelles, pour calculer ensuite la valeur de vrit de
la formule
10
. On appelle donc valuation une fonction de T dans 0, 1 (0 pour Faux, 1 pour
Vrai).
On va donc formuler la dnition de linterprtation dune formule propositionnelle laide des
valuations. tant donne une valuation v de T dans 0, 1, on dnit linterprtation induite sur
les formules du calcul propositionnel, que lon note v et que lon notera ensuite (abusivement) v,
par induction sur la dnition des formules propositionnelles :
atome v(p) = v(p).
absurde v() = 0.
ngation v(G) = 1 ssi v(G) = 0.
conjonction v(G H) = 1 ssi v(G) = 1 et v(H) = 1.
disjonction v(G H) = 0 ssi v(G) = 1 et v(H) = 1.
implication v(G H) = 0 ssi v(G) = 1 et v(H) = 0.
De faon quivalente, on peut aussi dnir v en utilisant les oprations usuelles + et de
Z/2Z :
ngation v(G) = 1 +v(G).
conjonction v(G H) = v(G) v(H).
disjonction v(G H) = v(G) +v(H) +v(G) v(H).
implication v(G H) = 1 +v(G) +v(G) v(H).
On voit que pour chaque connecteur n-aire la smantique est dnie par une fonction de 0, 1
n
dans 0, 1. On a dj dcrit ces fonctions, de deux faons direntes. On peut galement les
dcrire par des tableaux de 2
n
lignes :
G G
0 1
1 0
G H G H G H G H
0 0 0 0 1
0 1 0 1 1
1 0 0 1 0
1 1 1 1 1
Il faut se persuader que pour chacun de ces connecteurs, qui sont emprunts la langue courante, la
smantique drive bien de la logique intuitive (non spciquement mathmatique), mais simplie
drastiquement par le tiers-exclu (seulement deux valeurs de vrit). Cette smantique est bien-
sr insusante pour analyser la logique de la langue naturelle, laquelle elle ne correspond, en
particulier dans le cas de limplication, que dans des situations binaires.
11
On peut voir galement les tableaux ci-dessus comme des fonctions de lensemble des valuations
sur un ensemble ni de constantes propositionnelles dans 0, 1. De telles fonctions sont appelles
tables de vrit. Lensemble des tables de vrits sur les variables propositionnelles p
1
, . . . , p
n
est
donc 0, 1
{p1,...,pn}
.
10
Formellement, on peut galement considrer que les constantes propositionnelles de P sont des constantes de
prdicat 0-arguments. Lensemble des formules du calcul propositionnel est alors un sous-ensemble de lensemble
des formules du premier ordre pour la signature qui numre toutes les constantes de P (remarquez que dans ce cas
les quanticateurs sont sans utilit). La smantique est qui sera dnie au chapitre 7 est alors celle choisie ici pour
le calcul propositionnel. Une constante propositionnelle est soit vraie, soit fausse : formellement elle sinterprte
dans une structure densemble de base M par un sous ensemble de M
0
, ensemble rduit un lment, {}, et na
donc que deux interprtations possibles que lon note 0, et {} que lon note 1. videmment lensemble de base
de la structure ne joue aucun rle
11
Par exemple la phrase si vous avancez je tire peut se transformer en navancez pas ou je tire clairement
synonyme. Ce nest pas le cas dune autre implication comme, si Sophie tait plus grande, elle attraperait les
contures (dont la smantique devrait faire intervenir divers mondes possibles).
27
Il est clair que linterprtation dune formule F pour une valuation v ne dpend que des valeurs
de v pour les constantes propositionnelles qui apparaissent eectivement dans F et qui sont donc
en nombre ni.
tant donne une formule qui nutilise que les constantes propositionnelles p
1
, . . . , p
n
, la table de
vrit de la formule F pour p
1
, . . . , p
n
est la fonction de lensemble des valuations sur p
1
, . . . , p
n
,
soit 0, 1
{p1,...,pn}
, dans 0, 1, qui chaque valuation v associe v(F). On peut la reprsenter
comme ci-dessus par un tableau de 2
n
lignes. Par exemple voici un calcul de la table de vrit de
la formule p q dnie par (p q) (q p) (pour chacune des 4 valuations v on utilise bien la
dnition du prolongement v) :
p q p q q p p q
0 0 1 1 1
0 1 1 0 0
1 0 0 1 0
1 1 1 1 1
La table de vrit dune formule dcrit entirement la smantique dune formule proposition-
nelle, puisquelle dcrit toutes les interprtations possibles. Voyons quelques dnitions.
Une valuation v satisfait une formule F signie que v(F) = 1. Une formule propositionnelle F
est satisfaisable sil existe au moins une valuation qui la satisfait.Une thorie propositionnelle est
satisfaisable sil existe une valuation qui satisfait toutes les formules de la thorie.
Une formule propositionnelle F est une tautologie signie que pour toute valuation v on a
v(F) = 1.
Deux formules propositionnelles F et G sont quivalentes ssi elles sont satisfaites par les mmes
valuations :
F G ssi pour toute valuation v v(F) = v(G).
et lon vrie que :
F G ssi F G est une tautologie.
en utilisant la table de vrit de .
On remarque galement (cest juste une reformulation de ce qui prcde) que deux formules
sont quivalentes ssi elles ont les mmes tables de vrit.
La substitution simultane de formules du langage du calcul des prdicats de signature o,
soient H
1
, . . . , H
n
, aux constantes propositionnelles p
1
, . . . , p
n
dune formule propositionnelle F
scrit F[H
1
/p
1
, . . . , H
n
/p
n
] et se dnit par induction sur F sans dicults (les accolades et
indiquent la porte de la substitution quand il y a ambigut ; comme la substitution, elles ne font
pas partie du langage) :
atome p
i
[H
1
/p
1
, . . . , H
n
/p
n
] := H
i
, pour p , p
1
, . . . , p
n
, p[H
1
/p
1
, . . . , H
n
/p
n
] := p ;
absurde [H
1
/p
1
, . . . , H
n
/p
n
] := ;
ngation G[H
1
/p
1
, . . . , H
n
/p
n
] := G[H
1
/p
1
, . . . , H
n
/p
n
] ;
conjonction (G H)[H
1
/p
1
, . . . , H
n
/p
n
] := (G[H
1
/p
1
, . . . , H
n
/p
n
] H[H
1
/p
1
, . . . , H
n
/p
n
]) ;
disjonction (G H)[H
1
/p
1
, . . . , H
n
/p
n
] := (G[H
1
/p
1
, . . . , H
n
/p
n
] H[H
1
/p
1
, . . . , H
n
/p
n
]) ;
implication (G H)[H
1
/p
1
, . . . , H
n
/p
n
] := (G[H
1
/p
1
, . . . , H
n
/p
n
] H[H
1
/p
1
, . . . , H
n
/p
n
]) ;
La proprit de substitution nonce ci-dessous permet de voir les tautologies propositionnelles
commes des schmas de formules universellement valides du calcul des prdicats.
Proposition 4.2 (substitution) Soit F et G des formules propositionnelles o napparaissent
que les constantes propositionnelles p
1
, . . . , p
n
. Soit H
1
, . . . , H
n
sont des formules du langage o
dont les variables libres sont parmi x
1
, . . . , x
k
.
28
Si F est une tautologie, dans toute o-structure la formule
x
1
. . . x
k
F[H
1
/p
1
, . . . , H
n
/p
n
] est valide.
Si F G alors
F[H
1
/p
1
, . . . , H
n
/p
n
] G[H
1
/p
1
, . . . , H
n
/p
n
]
En particulier si H
1
,. . .,H
n
sont des formules du calcul propositionnel, si F est une tautologie
la formule
F[H
1
/p
1
, . . . , H
n
/p
n
] est une tautologie.
Dmonstration. La deuxime partie de la proposition se dduit de la premire en utilisant que
F G ssi x
1
. . . x
k
(F G) est une tautologie.
On ne va pas exposer la preuve pour le calcul des prdicats puisque lon a pas encore vu la
dnition formelle de la smantique du calcul des prdicats mais elle trs simple et est essentiel-
lement la mme que celle pour le calcul propositionnel. On prouve par induction sur F qutant
donne une valuation v telle que v(H
1
) =
1
, . . . , v(H
n
) =
n
, et une valuation telle que
(p
1
) =
1
, . . . , (p
n
) =
n
, on a :
v(F[H
1
/p
1
, . . . , H
n
/p
n
]) = (F)
Le rsultat suit par dnition de v et pour les variables propositionnelles (toutes parmi p
i
). Il
suit de la dnition de la smantique pour chacun des connecteurs.
Cette proprit explique que lon parle parfois de variable propositionnelle pour les constantes
propositionnelles.
4.4 Exemples de formalisation en calcul propositionnel.
Il nest pas trs confortable de devoir formaliser en calcul propositionnel. Quand cela est pos-
sible on y gagne un langage beaucoup plus simple. En particulier on peut vrier mcaniquement
(mais pas de faon trs ecace) la satisfaisabilit dune formule propositionnelle.
4.4.1 Calcul propositionnel sur une structure.
tant donn une o-structure / on choisi comme constantes propositionnelles lensemble des
formules atomiques de / pour le langage de signature o
M
sans galit, o o
M
est la signature
obtenue en ajoutant o chaque lment de lensemble de base de / comme symbole de constante.
Pour prendre un exemple trs simple, pour la structure (0, 1, <), notre ensemble de constantes
propositionnelles a 4 lments, les formules atomiques du langage (<, 0, 1) :
0 < 0, 0 < 1, 1 < 0, 1 < 1
Le calcul propositionnel sur / est lensemble des formules propositionnelles construit sur ces
constantes propositionnelles.
On peut exprimer par exemple que (N, ) est un ordre strict en utilisant lensemble inni de
formules propositionnelles suivant :
O
s
= m n n p m p / m, n, p N m m / m, n N
cest dire que (N, ) est un ordre strict ssi (N, ) satisfait O
s
.
On peut exprimer de faon analogue (N, ) est un ordre large :
O
l
= m n n p m p / m, n, p N m m / m N
(m n n m) / m, n N, m ,= n .
Bien entendu le calcul propositionnel est moins expressif que la logique du premier ordre, les
formules ci-dessus nont la signication souhaite que si lensemble de base est N, et on na aucun
29
moyen dexprimer par exemple quil existe un plus petit lment pour lordre. Par contre on pourra
exprimer que la structure nie (0, . . . , n, ) (n tant un entier) a un plus petit lment :
n

i=0
n

j=0
i j .
De faon gnrale on peut facilement exprimer grce aux formules du calcul propositionnel sur
la o-structure / :
si / est ni, les proprits de / exprimables au premier ordre (les quantications uni-
verselles deviennent des conjonctions, les quantications existentielles des disjonctions, les
galits vraies , les galits fausses ).
pour / quelconque, les proprits universelles (des quanticateurs universels seulement en
tte) exprimable au premier ordre de /, en les remplaant par une innit de formules
comme dans les exemples ci-dessus (on limine ensuite lgalit comme dans le cas o / est
ni).
4.5 Dduction en calcul propositionnel.
On peut utiliser les deux notions de dduction tudies (syntaxique et smantique). Voyons les
dnitions en calcul propositionnel.
Si lon restreint les rgles de la dduction de la gure 5 page 18 aux rgles propositionnelles
(on omet les rgles de lgalit et les rgles sur les quanticateurs), on obtient un systme de
dduction pour le calcul propositionnel, on notera de mme
T
C, pour un multi-ensemble
de formules propositionnelles a pour consquence C dans la thorie (propositionnelle) T. Les
rgles de la gure 5 page 18 sont les clauses dune dnition inductive. Formellement, on dnit la
dduction par induction. La relation
T
C entre un multi-ensemble de formules propositionnelles
et une formule C est donc la relation dont la dnition inductive est donne par les rgles
de la gure 5 page 18, sauf les 4 rgles qui concernent le quanticateurs, et par les rgles de
la gure 6 page 19. On remarque quune relation de dduction peut manifestement avoir des
drivations direntes. Il nest donc pas question de dnir une fonction par induction sur la
dnition dune relation de dduction.
Si est un ensemble de formules, on dira que
T
C, quand

T
C o

est un multi-
ensemble de formules qui contient les formules de et seulement celles-ci.
La dduction smantique, que lon va noter temporairement [[
T
C, est dnie pour un
ensemble de formules propositionnelles et C une formule propositionnelle par :
Si pour toute valuation v pour toute formule A de T v(A) = 1, alors v(C) = 1 .
Le systme vrie la proprit dadquation, savoir que :
Proposition 4.3 (adquation) Pour toute thorie propositionnelle T, tout ensemble ni de for-
mules propositionnelles , toute formule propositionnelle C :
si
T
C, alors [[
T
C .
Dmonstration. La preuve se fait par induction sur la dnition de la dduction, et ne pose aucune
dicult. Dtaillons quelques cas.
Axiomes de la dduction, axiomes de la thorie T : par dnition de [[
T
.
Aaiblissement et contraction : par dnition de [[
T
.
limination de limplication : On suppose que [[
T
A B et

[[
T
A (hypothses din-
duction). Soit v une valuation telle que v(X) = 1 pour X

. On a alors par hypothse


dinduction v(A B) = 1 et v(A) = 1. Daprs la table de vrit de limplication, v(B) = 1.
On a bien montr ,

[[
T
B.
Introduction de limplication : on suppose que , A [[
T
B (hypothse dinduction) et lon
veut montrer que [[
T
A B. La relation , A [[
T
B signie que pour toute valuation v
telle que v(X) = 1 si X et v(A) = 1 on a v(B) = 1.
30
Soit v une valuation telle que v(X) = 1 si X . Deux cas sont possibles suivant que
v(A) = 1 ou v(A) = 0.
Si v(A) = 1, alors v(B) = 1 par hypothse dinduction dou v(A B) = 1.
Si v(A) = 0, alors v(A B) = 1.
Dans les deux cas on a le rsultat voulu.
raisonnement par labsurde : On suppose que , A [[ (hypothse dinduction). Soit v une
valuation telle que v(X) = 1 pour X . Comme v() = 0, lhypothse dinduction entrane
que lon ne peut avoir de plus v(A) = 1, cest dire que forcment v(A) = 1. On a bien
montr [[
T
A.
Les autres rgles se traitent de faon tout aussi lmentaire.
La dduction syntaxique nous donne donc un moyen (en prenant une thorie T vide) de montrer
que des propositions sont des tautologies.
4.6 Quelques quivalences logiques et tautologies usuelles.
Dans la suite A, B et C dsignent des formules quelconques. Voici quelques quivalences
usuelles. Nous laissons au lecteur le soin de les vrier en utilisant la dduction ou les tables
de vrit (voir galement le paragraphe 4.8).
4.6.1 Ngation des connecteurs usuels.
A A
Lois de de Morgan :
(A B) (A B)
(A B) (A B)
(A B) A B
(A B) (A B)
(A B) (A B)
4.6.2 Expression des connecteurs avec , et .
(A A)
(A A)
(A B) (A B)
(A B) ((A B) (B A)) ((A B) (B A))
(A B) ((A B) (A B))
31
4.6.3 Proprits de la disjonction et de la conjonction.
commutativit :
(A B) (B A)
(A B) (B A)
associativit :
(A (B C)) ((A B) C)
(A (B C)) ((A B) C)
distributivit :
(A (B C)) ((A B) (A C))
(A (B C)) ((A B) (A C))
idempotence :
(A A) A
(A A) A
absorption :
(A )
(A (A B)) A
(A )
(A (A B)) A
neutre :
(A ) A
(A ) A
(A (A B)) (A B)
(A (A B)) (A B)
Remarque : ces deux dernires quivalences ainsi que celles dabsorption et didempotence
permettent de simplier les formes normales.
4.6.4 Proprits de limplication et de lquivalence.
((A B) C) (A (B C))
contrapose :
(A B) (B A)
(A B) (B A)
Distributivit droite :
(A (B C)) ((A B) (A C))
(A (B C)) ((A B) (A C))
Pseudo-distributivit gauche :
((A B) C) ((A C) (B C))
((A B) C) ((A C) (B C))
Remarque : il ny a pas de proprit analogue ces 4 dernires pour lquivalence.
et :
(A ) A ( A) (A ) ( A) A
(A ) A (A ) A
32
4.6.5 Encore quelques quivalences.
(A A) A ((A B) A) A ((A B) B) (A B)
Beaucoup des quivalences vues ci dessus, commutativit, associativit, lois de de Morgan...
sont utilises couramment dans le raisonnement usuel, en plus des rgles de la dduction naturelle.
4.7 Formes normales.
4.7.1 Dnitions.
On appelle littral une constante propositionnelle ou une ngation de constante proposition-
nelle.
Une formule est sous forme normale disjonctive (on dit parfois forme normale disjonctive-
conjonctive) si elle scrit comme une disjonction de conjonctions de littraux. Une formule est
sous forme normale conjonctive (on dit parfois forme normale conjonctive-disjonctive) si elle scrit
comme une conjonction de disjonctions de littraux.
Donnons quelques exemples. Supposons que p, q, r soient des constantes propositionnelles, alors
p, q, r, p, q, r sont des littraux.
La formule (pqr)(pr)r est sous forme normale disjonctive (la troisime conjonction
est rduite un lment).
La formule (pq)p(pqr) est sous forme normale conjonctive (la deuxime disjonction
est rduite un lment).
La formule p q est la fois sous forme normale disjonctive (deux conjonctions rduites un
lment) et disjonctive (une conjonction rduite une disjonction de deux littraux), de mme la
formule p q r.
4.7.2 Table de vrit et formes normales.
Voyons tout dabord lide de la dmonstration sur un exemple. Il sagit tout simplement de d-
crire la table de vrit ligne par ligne, on obtient naturellement ainsi une forme normale disjonctive
ou conjonctive suivant la faon dont on procde. Prenons la table de vrit de lquivalence :
p q p q
0 0 1
0 1 0
1 0 0
1 1 1
On peut la dcrire de deux faons. En numrant les valuations qui rendent la formule vraie :
v(p q) = 1 ssi [v(p) = 0 et v(q) = 0] ou [v(p) = 1 et v(q) = 1]
ssi [v(p) = 1 et v(q) = 1] ou [v(p) = 1 et v(q) = 1]
ssi v(p q) = 1 ou (v(p q) = 1
ssi v( (p q) (p q) ) = 1
on obtient une forme normale disjonctive de p q qui est (p q) (p q).
En numrant les valuations qui rendent la formule fausse :
v(p q) = 0 ssi [v(p) = 0 et v(q) = 1] ou [v(p) = 1 et v(q) = 0]
ssi [v(p) = 0 et v(q) = 0] ou [v(p) = 0 et v(q) = 0]
ssi v(p q) = 0 ou (v(p q) = 0
ssi v( (p q) (p q) ) = 0
on obtient une forme normale conjonctive de p q qui est (p q) (p q).
On montre maintenant que ce procd fonctionne pour nimporte quelle table de vrit.
Les deux proprits suivantes sont des consquences immdiates de la dnition de linterpr-
tation des conjonctions et disjonctions :
33
Lemme 4.4 Soient F
1
, . . . , F
n
des formules propositionnelles. On a :
v(F
1
. . . F
n
) = 1 ssi v(F
1
) = 1 et . . . et v(F
n
) = 1
v(F
1
. . . F
n
) = 0 ssi v(F
1
) = 0 et . . . et v(F
n
) = 0
On utilise ces proprits pour le lemme suivant :
Lemme 4.5 Soit a une valuation support ni sur n constantes propositionnelles p
1
, . . . , p
n
. Il
existe des formules F
1
et F
0
telles que pour toute valuation v :
F
1
est une conjonction de littraux et v(F
1
) = 1 ssi pour tout i 1, . . . , n v(p
i
) = a(p
i
)
F
0
est une disjonction de littraux et v(F
1
) = 0 ssi pour tout i 1, . . . , n v(p
i
) = a(p
i
)
Dmonstration. On pose p
1
i
= p
i
si a(p
i
) = 1, p
1
i
= p
i
si a(p
i
) = 0. On pose F
1
= p
1
1
. . . p
1
n
.
On a bien que a(p
1
i
) = 1 pour tout i, donc a(F
1
) = 1.
On a que v(F
1
) = 1 ssi v(p
1
i
) = 1 pour chaque i 1, . . . , n, do le rsultat.
De mme en posant p
0
i
= p
i
si a(p
i
) = 0, p
0
i
= p
i
si a(p
i
) = 1, etF
0
= p
0
1
. . . p
0
n
, on a bien,
a(F
0
) = 0 et v(F
0
) = 0 ssi v(p
0
i
) = 0 pour chaque i 1, . . . , n, do le rsultat.
Pour en dduire le thorme de mise sous forme normale, on utilise maintenant les proprits
duales du lemme 4.5 :
Lemme 4.6 Soient F
1
, . . . , F
n
des formules propositionnelles. On a :
v(F
1
. . . F
n
) = 1 ssi v(F
1
) = 1 ou . . . ou v(F
n
) = 1
v(F
1
. . . F
n
) = 0 ssi v(F
1
) = 0 ou . . . ou v(F
n
) = 0
Thorme 4.7 Toute table de vrit, est la table de vrit dune formule. Qui plus est on peut
choisir cette formule sous forme normale conjonctive, ou sous forme normale disjonctive.
Plus prcisment, pour tout ensemble de n constantes propositionnelles p
1
, . . . , p
n
, toute fonc-
tion de 0, 1
{p1,...,pn}
dans 0, 1, il existe une formule sous forme normale conjonctive et une
formule sous forme normale disjonctive dont cest la table de vrit.
Dmonstration. Soit t une table de vrit sur p
1
, . . . , p
n
. Soit v
0
, . . . , v
q
toutes les valuations dont
limage est 1 par t. A chacune de ces valuations v
i
on associe la formule F
1
i
donne par le lemme 4.5.
La formule F
0
1
. . . F
q
1
est sous forme normale disjonctive et rpond la question. En eet
v(F
0
1
. . . F
q
1
) = 1 ssi v(F
0
1
) = 1 ou . . .ou v(F
q
1
) = 1, et donc ssi v est lune des valuation
v
0
, . . . , v
q
daprs le lemme 4.5.
De faon analogue si u
0
, . . . , u
r
sont les valuations dont limage est 0 par t, on associe chacune
dentre elles la formule F
0
i
donne au lemme 4.5. La formule F
0
0
. . . F
0
q
est sous forme normale
conjonctive et rpond la question, car v(F
0
0
. . . F
0
q
) = 0 ssi v(F
0
0
) = 0 ou . . .ou v(F
0
0
) = 0.
L encore on saperoit que lon a essentiellement utilis les proprits de la conjonction et de
la disjonction dans le meta-langage. Cest dire que lon peut dcrire une table de vrit laide
uniquement de conjonctions de disjonctions et de ngations en dcrivant toutes les valuations
qui prennent la valeur vrai (forme normale disjonctive) ou la valeur faux (forme normale
conjonctive).
La forme normale que lon trouve la lecture de la table de vrit, en suivant la mthode
indique par la preuve du thorme prcdent, nest en gnral pas la plus courte ! Ainsi p q
est sous forme normale conjonctive et disjonctive. La lecture de la table de vrit donnera bien
p q comme forme normale disjonctive, mais (p q) (p q) (p q) comme forme normale
conjonctive.
34
4.7.3 Systmes complets de connecteurs.
On dit quun systme de connecteurs est fonctionnellement complet, ou parfois plus simplement
complet si toute table de vrit est reprsente par une formule utilisant ces seuls connecteurs. Un
corollaire immdiat du thorme de mise sous-forme normale est que :
Corollaire 4.8 Le systme de connecteurs , , est fonctionnellement complet.
Des diverses quivalences parmi celles du paragraphe 4.6 on dduit que :
Corollaire 4.9 Les systmes de connecteurs , , , , , , , sont fonctionnelle-
ment complets.
Dmonstration. Pour chaque systme S il sut de montrer que chacun des connecteurs dun
systme complet connu sexprime avec les connecteurs du systme S. Pour le moment le seul
systme complet connu est , , .
Le systme , est complet car A B (A B) (loi de de Morgan).
Le systme , est complet car A B (A B) (loi de de Morgan).
Le systme , est complet car A B A B et , est complet.
Le systme , est complet car A A et , est complet.
4.7.4 Mise sous forme normale.
tant donne une formule, la mettre sous forme normale conjonctive, resp. disjonctive, consiste
trouver une formule quivalente sous forme normale conjonctive, resp. disjonctive.
Une premire mthode est de chercher la table de vrit puis den dduire la forme normale
cherche comme dans la preuve du thorme 4.7.
Une seconde mthode un peu plus directe est dutiliser convenablement les quivalences logiques
des paragraphes 4.6.2, 4.6.1 et 4.6.3.
Ces mthodes ne sont pas trs ecaces algorithmiquement, et lon nen connait pas qui le soit
vraiment. Pratiquement on a souvent besoin seulement dune forme normale non pas quivalente
mais equisatisfaisable une formule donne (lune est satisfaite ssi lautre lest). L il existe des
algorithmes simples et ecaces que lon ne dcrira pas ici.
4.8 Quelques mthodes pour tester les tautologies, la satisfaisabilit etc.
4.8.1 Un peu de complexit.
Donnons de faon trs informelle une ide de la complexit des problmes rencontrs dans ce
chapitre, cest dire du temps de calcul thorique pour rsoudre ces problmes.
Le problme le plus simple que nous ayons rsoudre est celui de la satisfaction dune formule
donne par une valuation donne. Il sagit dun calcul boolen (cest dire sur Z/2Z), comme nous
lavons vu lors de la dnition de la satisfaction paragraphe 4.3. Ce calcul trs simple se fait en
temps linaire en la taille de la formule. On dit quun tel problme est P (pour polynomial).
Un problme nettement plus ardu est celui de savoir si une formule donne est satisfaisable.
Une solution (pas trs ecace) serait de calculer la table de vrit de la formule. Si la formule
possde n variables propositionnelles, il faut donc procder 2
n
calculs (eux-mmes) linaires. Un
tel calcul est exponentiel en n et donc (on sen convainc facilement) en la taille de la formule. Une
question naturelle est de savoir sil existe des mthodes vraiment plus ecaces, si ce nest linaire
au moins polynomiale en la taille de la formule. Cest un problme pos depuis les annes 60 et
auquel on ne sait toujours pas rpondre actuellement.
Pour essayer dtre un peu plus prcis : un problme tel que celui de la satisfaisabilit ceci de
particulier que si un oracle fournissait la bonne valuation vrier (sil y en a une cest celle-
ci), le problme se rsoudrait en temps polynomial. Un tel problme est dit NP, pour polynomial
non-dterministe. Sans entrer dans le dtail une autre faon de caractriser ces problmes est de
dire quils se rsolvent en temps polynomial quand on remplace la notion traditionnel de calcul
qui est dterministe ltat de la machine et lavancement du calcul tant connus, il ny a quune
35
possibilit pour ltape suivante par une relation non-dterministe dans les mmes conditions
il y a maintenant plusieurs possibilits. Le calcul non-dterministe est une notion toute thorique.
On montre que le problme de la satisfaction dune formule est NP, et que de plus il peut
coder de faon polynomiale tous les problmes NP, cest dire que sil tait polynomial, tous les
problmes NP le seraient.
La conjecture la plus courante est que P ,= NP, mais le problme reste ouvert.
Un autre problme est celui de savoir si une formule donne est ou non une tautologie. On
sait que F est une tautologie ssi F nest pas satisfaisable. Cela indique que le problme de la
tautologie pour F est le complmentaire du problme de la satisfaisabilit pour F qui est NP.
On dit quun tel problme est co-NP. videmment si les problmes NP taient polynomiaux, les
problmes co-NP le seraient galement.
Nous nirons pas plus loin dans cette voie. La conclusion est que, dans ltat actuel des choses,
il ne faut pas sattendre des algorithmes trs ecaces pour dterminer si une formule est satisfai-
sable ou si cest une tautologie. On peut cependant essayer de donner quelques mthodes un peu
plus ecaces dans certains cas que le simple calcul de la table de vrit. Voyons en rapidement
quelques unes, prsentes sur des exemples.
4.8.2 La dduction.
Une premire mthode ne pas ngliger est la dduction qui permet dans les cas les plus
simples de se persuader rapidement quune formule est une tautologie, mme si il peut tre assez
long de rdiger formellement la preuve. En eet on sait daprs le proprit dadquation 4.3 que
si F est prouvable, F est une tautologie.
Par exemple les proprits dassociativit ou de distributivit entre conjonction et disjonction
sont videntes par dduction.
4.8.3 Satisfaction, Rfutation.
La table de vrit de vrit dune formule permet la fois de savoir si celle-ci est une tautologie
et si elle est satisfaisable. Si lon rompt la symtrie, en sintressant seulement lun des deux
problmes, on peut esprer arriver plus rapidement au rsultat.
Pour savoir si une formule est satisfaisable, il peut tre plus rapide danalyser celle-ci, en
cherchant quelle condition elle est satisfaite, plutt que dnumrer toutes les valuations jusqu
en trouver une convenable. Par exemple supposons que lon souhaite savoir si ((A B) B)
B est satisfaisable. On crit :
v((((A B) B) B)) = 1
ssi v(((A B) B) B) = 0
ssi v((A B) B) = 1 et v(B) = 0
ssi v(A B) = 0 et v(B) = 0
ssi v(A) = 1 et v(B) = 0
et on a trouv une valuation qui satisfait la formule.
Cette mthode permet galement de savoir si une formule est une tautologie, et prend alors le
nom de mthode de rfutation. En eet il sut de savoir si la ngation dune formule F donne est
ou non satisfaisable. Lexemple ci-contre nous permet par exemple de conclure que ((A B)
B) B nest pas une tautologie.
Montrons par cette mthode que la loi de Peirce ((A B) A) A est une tautologie.
v(((A B) A) A) = 0
ssi v((A B) A) = 1 et v(A) = 0
ssi v(A B) = 0 et v(A) = 0
ssi v(A) = 1 et v(B) = 0 et v(A) = 0
il nexiste donc pas de valuation qui satisfait la loi de Peirce, cest bien une tautologie.
36
On ne donne pas de prsentation systmatique de cette mthode, qui a dailleurs plusieurs va-
riantes. Une faon synthtique de procder est de la prsenter sous forme darbre, un embranche-
ment correspond ltude de plusieurs possibilits. Dans le premier des deux exemples prcdents
on est amen :
v((A B) B) = 1
ssi v(A B) = 0 ou v(B) = 1
et on a limin immdiatement la possibilit v(B) = 1 car par ailleurs on sait quil faut v(B) = 0,
ce qui a permis de simplier la prsentation pour cet exemple. Bien sr ce nest pas toujours
possible et on peut avoir plusieurs possibilits explorer. Une formalisation de cette mthode est
connue sous le nom de mthode des tableaux.
4.8.4 Tables de vrit rduites.
On peut tirer partie de ce que dans certains cas, la connaissance de la valeur de vrit dune
sous-formule peut permettre de dterminer la valeur de la formule. Par exemple si v(B) = 1,
on sait sans connatre v(A) que v(A B) = 1. On peut donc viter dnumrer tous les cas
(cependant il devient moins vident que tous les cas sont numrs et cela doit tre vri). Voici
un exemple.
A B C A B (A B) C B C A (B C)
? ? 1 ? 1 1 1
0 ? 0 0 1 ? 1
1 0 0 0 1 1 1
1 1 0 1 0 0 0
On vrie facilement que tous les cas sont bien numrrs (le ? dsigne 0 ou 1). On a donc
montr que (A B) C A (B C).
On peut galement introduire des variables et utiliser les proprits dlment neutre de 0 et
1 en calcul boolen. Ainsi, en notant (abusivement) lopration boolenne associe au connecteur
comme le connecteur lui-mme on obtient
A B C B C (A (B C) A B A C (A B) (A C)
0 ? ? ? 0 0 0 0
1 b c b c b c b c b c
37
5 Compltude du calcul propositionnel.
Nous aurons besoin de quelques proprits de la relation de dduction que nous navions pas
enocre nonc et qui seront tout aussi valides en calcul des prdicats.
5.1 Quelques prliminaires sur la relation de dduction.
Voyons quelques proprits de la relation de dduction (voir chapitre 2).
Proposition 5.1 Pour toutes thories T et T

, toute formule C,
si T T

, et
T
C alors
T
C .
Dmonstration. Cest une consquence immdiate de la dnition, la thorie nintervenant que
dans les axiomes (formellement cest une induction).
Proposition 5.2 Pour toute thorie T, toute formule A, toute formule C,

T{A}
C, ssi , A
T
C .
Dmonstration. Supposons
T{A}
C. Si cette relation a t drive sans utiliser laxiome A,
on a
T
C et donc par aaiblissement , A
T
C. Si la relation a t drive en utilisant une ou
plusieurs fois A, en remplaant cet axiome par A A on obtient une drivation de la relation
, A, . . . , A
. .
n
C, o lentier n vrie n 1. En utilisant la contraction si n > 1 on obtient , A C
(remarquez que formellement, il faut faire un raisonnement par induction).
Rciproquement, supposons , A
T
C, alors
T
A C (introduction), do
T{A}
A
C, or
T{A}
A, donc (limination)
T{A}
C.
5.2 noncs du thorme de compltude.
Le thorme de compltude du calcul propositionnel est la rciproque de la proprit dadqua-
tion 4.3 page 30.
Thorme 5.3 (compltude) Pour toute thorie T, tout ensemble ni de formules closes ,
toute formule close C dans le langage L,
Si [[
T
C alors
T
C .
Donnons tout dabord quelques noncs quivalents. Tout dabord remarquons que les deux
cas particuliers suivants sont quivalents au cas gnral.
Corollaire 5.4 (compltude) Pour toute thorie T, toute formule close C dans le langage L,
Si [[
T
C alors
T
C .
Corollaire 5.5 (compltude) Dans toute thorie T, tout ensemble ni de formules closes
dans le langage L
Si [[
T
alors
T
,
ou encore par contrapose :
Si ,
T
alors T est satisfaisable
Il sagit des cas particuliers du thorme prcdent o est vide, puis o C = .
Proposition 5.6 On peut dduire le thorme de compltude 5.3 des corollaires 5.4 et 5.5.
38
Dmonstration (cor 5.4 compltude). Si lon pose = A
1
, . . . , A
n
. On remarque tout dabord
que, vu la dnition de la dduction smantique [[ :
Si [[
T
C alors [[
T
C
On a donc
T
C daprs le corollaire 5.4, et on en dduit
T
C par rcurrence sur la longueur
de en appliquant la proposition 5.2.
Dmonstration (cor 5.5 cor 5.4). On vrie que
Si [[
T
C alors [[
{T{C}
.
par dnition de linterprtation : si une valuation v satisfait T, elle satisfait C donc ne satisfait
pas C.
On dduit ensuite du corollaire que
{T{C}
, puis que C
T
daprs la proposition 5.2.
Daprs la rgle du raisonnement par labsurde (voir gure 5 page 18) on a
T
C.
5.3 Le thorme de compacit.
Avant de dmontrer ce thorme voyons en une consquence. La dnition de la dduction
a pour consquence immdiate quune formule utilise dans sa dmonstration un nombre ni
daxiomes de la thorie :
Proposition 5.7 (nitude) Si
T
C, il existe une partie nie de T, soit T
0
, telle que
T0
C.
Applique la dduction smantique la proposition de nitude devient beaucoup moins imm-
diate. nonons la dans le cas C = .
Proposition 5.8 (compacit) Si une thorie T nest pas satisfaisable, alors lune de ses parties
nies nest pas satisfaisable (et rciproquement).
ou encore par contrapose
Une thorie propositionnelle T est satisfaisable si (et seulement si) toutes ses parties nies sont
satisfaisables.
Ce thorme prend le nom de thorme de compacit. Voyons pourquoi
12
. Soit T lensemble des
variables propositionnelles. Lensemble des valuations est 0, 1
P
. On peut munir 0, 1 de la
topologie discrte (chauqe sous-ensemble est un ouvert, donc un ferm). On muni alors 0, 1
P
de
la topologie produit. Les ouverts lmentaires de 0, 1
P
sont donc les produits de sous-ensembles
de 0, 1 dont tous, sauf un nombre ni, sont gaux 0, 1. Il sagit en quelque sorte de valuations
partielles support ni, un ouvert lmentaire est dni par une valuation a sur k constantes
propositionnelles p
1
, . . . , p
k
:
O
a
= v 0, 1
P
/ p p
1
, . . . , p
k
v(p) = a(p)
Comme une runion douverts est un ouvert, le complmentaire dun tel ensemble est un ouvert,
et donc ces ouverts lmentaires sont galements des ferms de 0, 1
P
.
A chaque formule A on peut faire correspondre lensemble des valuations qui la satisfont.
Comme on la remarqu au lemme 4.5 page 34, on peut associer a une formule, que nous
appelons maintenant A
a
qui est une conjonction de littraux est telle que :
O
a
= v 0, 1
P
/ v(A
a
) = 1
A une formule quelconque X sur p
1
, . . . , p
k
on associe sa forme normale disjonctive, et donc une
runion nie douverts-ferms lmentaires qui est exactement :
O
X
= v 0, 1
P
/ v(X) = 1 .
12
la lecture de la n de ce paragraphe utilise un peu de topologie, elle nest pas ncessaire pour la suite.
39
et qui est donc un ouvert-ferm.
Dire quune thorie T est satisfaisable cest dire que :

XT
O
X
,=
Le thorme de compacit arme donc que toute famille de ferms de la forme O
X
dintersection
non vide a une sous-partie nie dintersection non vide. Cest bien un rsultat de compacit. On
peut le dduire ce que 0, 1
P
est un espace compact, ce qui est une consquence du thorme de
Tychono qui nonce que tout produit despaces compacts est compact (le thorme de Tychono
ncessite laxiome du choix).
5.4 La preuve du thorme de compltude.
5.4.1 Quelques prliminaires.
On ne va faire la preuve du thorme de compltude que pour une thorie dnombrable, donc
sur un ensemble T de constantes propositionnelles dnombrables. On montre alors que :
Proposition 5.9 Lensemble des formules du calcul propositionel sur un ensemble dnombrable
T est dnombrable.
Dmonstration. Lcriture dune formule propositionnelle est une suite nie de symboles de T
, , , , , ), (. On conclut avec la proposition suivante.
proposition. Lensemble des suites nies dlments dun ensemble dnombrable est dnombrable.
Dmonstration. On verra ce rsultat en thorie des ensembles. Voyons une justication rapide. On
peut en eet numrer les suites nies dentiers, en commenant par la suite vide, puis les suite
de longueur 1 dentiers plus petits ou gaux 1, puis les suites de longueur 2 dentiers 2 non
encore numres etc. ltape n on numre les suite de longueur n dentiers n qui nont
pas encore t numres. A chaque tape on numre un nombre ni de suites nies.
On peut donc supposer lexistence dune numration des formules du calcul propositionnel,
F
i
/ i N.
5.4.2 Plan de la preuve.
On va dmontrer directement le corollaire 5.5, dont on a vu quil tait quivalent au thorme
de compltude 5.3. La dmarche sera la mme en calcul des prdicats. Elle est la suivante. On
rappelle que lon a une thorie T telle que
T
, et que lon veut construire une valuation qui
valide chaque formule de T.
1. tant donne une thorie non contradictoire T ltendre, en utilisant la dduction, en une
thorie T
s
:
T T
s
qui doit tre complte
13
, cest dire telle que
pour toute formule close C , C T
s
ou C T
s
.
qui doit tre non contradictoire cest dire telle que :
,
T
s .
et qui doit tre sature, cest dire telle que :
pour toute formule propositionnelle C (
T
s C C T
s
) .
2. Construire une valuation qui valide la thorie T partir de la thorie T
s
.
13
habituellement une thorie complte vrie seulement que pour toute formule C,

C ou

C. Pour une
thorie sature cela revient bien-sr la formulation adopte ici.
40
5.4.3 Une thorie complte et sature T
s
.
On se donne une numration des formules propositionnelles, soit (F
i
)
iN
.
Supposons T non contradictoire : ,
T
. On va construire une suite de thories (T
n
)
nN
par
rcurrence sur N.
i. T
0
= T
ii. Si
Tn
F
n
, alors T
n+1
= T
n
F
n
, sinon T
n+1
= T
n
F
n
.
On pose ensuite T
s
=

iN
T
n
.
Lemme 5.10 La thorie T
s
est complte et contient T.
Dmonstration. La thorie T
s
contient T = T
0
par construction. Elle est complte car pour tout
entier n, F
n
T
n+1
ou F
n+1
T
n+1
par construction des T
n
. Or pour tout entier n, T
s
T
n
do le rsultat (axiome de la thorie).
Lemme 5.11 La thorie T
s
nest pas contradictoire : ,
T
s .
Dmonstration. En vertu de la nitude 5.7 page 39, si T
s
tait contradictoire, lune de ses parties
nies le serait. Toute partie nie de T
s
est inclue dans T
n
pour un entier n susamment grand.
Il sut donc de montrer que pour tout entier n, T
n
nest pas contradictoire, ce que lon fait par
rcurrence sur n.
n = 0. T
0
= T nest pas contradictoire par hypothse.
n n + 1. On procde par contrapose. Supposons que T
n+1
est contradictoire, cest dire
Tn+1
, et montrons qualors T
n
lest. Par construction de T
n+1
, deux cas se prsentent :
T
n+1
= T
n
F
n
. Cela signie que
Tn
F
n
. On a
Tn{Fn}
, donc F
n

Tn
(proposi-
tion 5.2 page 38), donc
Tn
F
n
(introduction). Or T
n
F
n
, donc T
n
(limination),
cest dire T
n
contradictoire.
T
n+1
= T
n
F
n
. Cela signie que ,
Tn
F
n
. Or on a
Tn{Fn}
, donc F
n

Tn

(proposition 5.2 page 38), donc
Tn
F
n
(raisonnement par labsurde). Mais dans ce cas
T
n+1
= T
n
F
n
. Ce cas ne peut donc se produire.
Lemme 5.12 La thorie T
s
est sature.
Dmonstration. Supposons
T
s C. Comme T
s
est complte C T
s
ou C T
s
. Si C T
s
,

T
s C, et donc
T
s (limination), or T
s
nest pas contradictoire (lemme 5.11). On a donc bien
C T
s
.
5.4.4 Une valuation validant T.
On dnit la valuation v, pour toute formule atomique (close) p dirente de :
si p T
s
alors v(p) = 1 sinon v(p) = 0 .
On montre par induction sur la structure des formules propositionnelles le lemme suivant.
Lemme 5.13 Pour toute formule C :
si C T
s
alors v(C) = 1 sinon v(C) = 0 .
Dmonstration. Par induction sur la dnition des formules.
Atomes. Cest la dnition de v.
Absurde. Pour toute valuation v, v() = 0. Or daprs le lemme 5.11, la thorie T
s
nest pas
contradictoire donc , T
s
.
Implication. Supposons le rsultat pour A et B, et montrons le pour A B. Distinguons deux
cas.
41
Supposons A B T
s
. Si A , T
s
, on a v(A) = 0 par hypothse dinduction et donc
v(A B) = 1. Si A T
s
, on a
T
s A B et
T
s A. On en dduit (limination)
T
s B.
Par saturation B T
s
, et donc v(B) = 1 par hypothse dinduction, donc v(A B) = 1.
Supposons (A B) , T
s
. Les deux cas A , T
s
et B T
s
sont exclus car ils contredisent
lhypothse (A B) , T
s
, comme le montre ce qui suit.
Supposons A , T
s
. Comme la thorie est complte on a que A T
s
. On en dduit
(axiome de la thorie et limination) A
T
s . On a donc A
T
s B (limination de
). On en dduit
T
s A B (introduction), et donc par saturation (lemme 5.12)
(A B) T
s
, contradiction.
Supposons B T
s
. On a donc
T
s B et donc A
T
s B (aaiblissement). On en dduit

T
s A B (introduction), et donc par saturation (A B) T
s
, contradiction.
On a donc A T
s
et B , T
s
, donc par hypothse dinduction v(A) = 1 et v(B) = 0 et
donc v(A B) = 0.
On laisse le lecteur complter la preuve pour les autres connecteurs, , , . Il faudra chaque
fois utiliser les rgles dintroduction et dlimination correspondantes.
Corollaire 5.14 Il existe une valuation v telle que pour toute formule C de T, v(C) = 1.
Dmonstration. Comme T
s
T, cest une consquence immdiate du lemme prcdent (5.13).
On a donc bien dmontr le thorme de compltude pour le calcul propositionnel.
On peut remarquer que toutes les rgles propositionnelles de la gure 5 page 18 ont t utilises
au cours de la preuve (entre la proposition 5.2 page 38, et les lemmes 5.11, 5.12 et 5.13), en dehors
bien-sr des rgles dintroduction et dlimination des connecteurs distincts de et , puisque
nous navons pas trait ces connecteurs dans la preuve du lemme 5.13. Nous avons utilis la
ngation, mais nous pouvons considrer que F est une abrviation de A (les rgles utilises
sont alors celles de limplication). Si vous compltez la preuve, pour chaque connecteur ses rgles
dintroduction et dlimination doivent tre utilises.
On pourrait galement se contenter de dmonter le thorme de compltude pour le systme de
connecteurs , , qui est fonctionnellement complet. On pourrait utiliser cette proprit pour
tendre le rsultat aux autres connecteurs :
Il faut vrier syntaxiquement et smantiquement les quivalences exprimant les connecteurs
, , partir de , .
Il faut utiliser la proprit de substitution 4.2 page 28 (dans le cas o lon ne substitue
des formules propositionnelles), et montrer et utiliser une proprit de substitution pour
lquivalence par dduction syntaxique.
42
6 Syntaxe des langages du premier ordre.
6.1 Introduction.
On va maintenant dnir la syntaxe dun langage du premier ordre, cest dire les constructions
correctes pour les termes qui dsignent des objets mathmatiques, et les formules qui dsignent des
proprits ou des assertions sur ces objets. On utilise nouveau les dnitions inductives. A cause
des quanticateurs, et donc des liaisons de variables, les choses vont tre un peu plus complique
quen calcul propositionnel.
6.2 Signature.
On rappelle quune signature est la donne dune suite de symboles de constantes, dune suite
de symboles de fonctions chacun muni dun entier appel arit du symbole, et dune suite de
symboles de prdicats, chacun galement muni dune arit. Chacune de ces suites peut-tre vide.
Sauf prcision lgalit fait toujours partie du langage (on prcise parfois langage galitaire du
premier ordre), et le signe de lgalit napparat donc pas dans la signature.
On va dnir dans la suite le langage galitaire du premier ordre de signature o, on dira plus
rapidement le langage de signature o, voire le langage o.
6.3 Les termes.
On dnit tout dabord les termes dun langage donn, qui dsignent des objets. Voyons tout
dabord un exemple.
6.3.1 Termes de larithmtique.
Prenons pour exemple le langage de larithmtique de Peano, de signature T = (0, s, +, , )
avec les arits usuelles. On suppose donne un ensemble dnombrable de variables 1. Lensemble
T
P
des termes de signature T est dni inductivement :
variable toute variable x de 1 est un terme.
constante 0 est un terme.
successeur si t est un terme s t est un terme.
addition si t et t

sont des termes (t +t

) est un terme
multiplication si t et t

sont des termes (t t

) est un terme.
Lensemble T est donc dni comme le plus petit ensemble de mots qui vrie cette proprit.
On admet la proprit dite de lecture unique, savoir quun terme de T a un seul arbre de
drivation, ce qui autorise les dnitions par induction sur les termes. En gros, il sut davoir
mis susamment de parenthses et ventuellement de sparateurs (,, espacements etc.) pour
que cette proprit soit vrie, et cest bien le cas de la dnition ci-dessus. On rappelle que la
proprit de lecture unique nonce que la structure inductive est librement engendre : le terme
crit comme mot (linairement) est bien une reprsentation dle de son arbre de drivation.
Larbre de drivation serait la vraie notion de terme, mais videmment les arbres sont peu
commodes crire ! Voici des exemples de termes :
(x + 0), (s 0 +y), (s( s 0 +x) s s s y)
Leurs arbres de drivations sont respectivement :
x
0
+
0
s y
+
0
s x
+
s
y
s
s
s

Bien entendu, le symbole de prdicat napparat pas dans les termes.


43
6.3.2 Cas gnral.
On va dnir les termes dun langage de signature L en considrant que tous les symboles de
fonction sont en notation prxe (ce que nous navons pas fait dans le cas de + et ci-dessus).
Lensemble T
L
des termes de signature L est dni inductivement par :
variable toute variable x de 1 est un terme.
constante toute constante est un terme.
fonction pour chaque symbole de fonction n-aire f de L, si t
1
, . . . , t
n
sont des termes alors
f t
1
. . . t
n
est un terme.
Le choix des notations (parenthses, espaces ou , pour sparer les arguments) na pas grande
importance. Le principal est que les notations ci-dessus assurent la proprit de lecture unique :
un terme de T
L
a un seul arbre de drivation. On pourra donc utiliser des dnitions par induction
sur les termes
14
.
Nous utiliserons des langages sans symboles de fonction ni de constante, comme le langage des
ordre (<) ou celui de la thorie des ensembles (), qui ont donc pour seuls termes les variables.
6.3.3 Quelques dnitions.
On peut maintenant dnir par induction sur cette dnition quelques notions, par un exemple,
la notion de terme clos, un terme sans variables, se dnit par :
variable Une variable x de 1 nest pas un terme clos.
constante Toute constante est un terme clos.
fonction Pour chaque symbole de fonction n-aire f de L, f t
1
. . . t
n
est un terme clos si t
1
, . . . , t
n
sont des termes clos.
Remarquons quun langage sans constantes na pas de termes clos.
On peut dnir la substitution sur les termes. tant donn un terme u et une variable x, on
dnit t[u/x] (t dans lequel u remplace x) pour tout terme t de L par induction sur la dnition
des termes :
variable Soit y une variable dans 1, si y ,= x y[u/x] = y, sinon x[u/x] = u.
constante Soit c une constantes de L, c[u/x] = c.
fonction pour chaque symbole de fonction n-aire f de L, pour t
1
, . . . , t
n
des termes, f t
1
. . . t
n
[u/x] =
f t
1
[u/x] . . . t
n
[u/x].
6.4 Formules atomiques.
6.4.1 Larithmtique.
On reprend le langage de larithmtique, de signature T. Les formules atomiques sont formes
partir de lgalit et des symboles de prdicat du langage, ici .
galit Si t
1
et t
2
sont des termes de T, t
1
= t
2
est une formule atomique de T.
ordre Si t
1
et t
2
sont des termes de T, t
1
t
2
est une formule atomique de T.
Par exemple (s 0 + x) = y, (s 0 + x) (s 0 + x) = 0, 0 0 sont des formules atomiques
de larithmtique. Remarquez quintuitivement les formules atomiques sont essentiellement les
galits polynomiales et les ingalits polynomiales sur les entiers.
Une formule atomique close est dnie comme une formule qui nest construite quavec des
termes clos, ainsi parmi les formules ci-dessus la seule formule close est 0 0. La formule x = x
nest pas une formule close, mme si intuitivement elle ne dpend pas de x.
14
Dans le cas gnral on sest restreint la notation prxe. Les termes de larithmtique de lexemple prcdent
utilisent la notation inxe. Les preuves de lecture unique utilisent donc des arguments dirents.
44
6.4.2 Cas gnral.
On considre que le langage est galitaire. Exceptionnellement il nous arrivera de considrer des
langages non galitaires, auquel cas on supprime bien sr la premire des clauses de la dnition.
galit Si t
1
et t
2
sont des termes de L, t
1
= t
2
est une formule atomique de L.
prdicat Pour chaque symbole de prdicat n-aire P de L, si t
1
, . . . , t
n
sont des termes de L,
alors P t
1
. . . t
n
est une formule atomique de L.
On dnit les formules atomiques closes (aucune variable napparat dans la formule). La
substitution sur les formules atomiques est la substitution sur chacun des termes : P t
1
. . . t
n
[t/x] =
P t
1
[t/x] . . . t
n
[t/x].
Pour la plupart des langages tudis, les symboles de prdicats du langage seront des symboles
de prdicat binaire (lordre, lappartenance) que lon notera comme dhabitude de faon inxe
(comme pour larithmtique ci-dessus).
6.5 Formules.
6.5.1 Dnition des formules.
On construit de nouvelles formules laide de connecteurs (les mmes quen calcul proposi-
tionnel) et de quanticateurs. Les quanticateurs sont et .
Lensemble des formules du langage L est dni inductivement par les clauses suivantes
Formules atomiques. Les formules atomiques de L sont des formules.
absurde est une formule.
ngation Si F est une formule F est une formule.
implication Si F et G sont des formules (F G) est une formule.
conjonction Si F et G sont des formules (F G) est une formule.
disjonction Si F et G sont des formules (F G) est une formule.
quantication universelle Si F est une formule et x une variable, alors x F est une formule.
quantication existentielle Si F est une formule et x une variable, alors x F est une formule.
Quand une formule nutilise pas de quanticateurs on dit que cest une formule propositionnelle
( cest une formule du calcul propositionnel construit sur toutes les formules atomiques du langage).
L encore on admettra le thorme de lecture unique, et donc on utilisera les dnitions par
induction.
Voici deux formules du langage de larithmtique T :
x (x s 0 (x = 0 x = s 0), y(x = 2 y x = 2 y +s 0)
Rappelons que nous avons abord informellement la notion de variable libre et lie. Ainsi la
premire de cette formule est close, la variable y na que des occurrences lies dans cette formule.
Dans la seconde de ces formules, les occurrences de x sont libres et celles de y sont lies.
6.5.2 Occurrences libres ou lies dune variable, substitution. . .
La notion de formule close se dnit sans dicult pour les formules propositionnelles. En
prsence de quanticateurs, cest un peu plus compliqu, on peut maintenant le faire proprement
grce aux dnitions par induction.
On ne va pas dnir formellement la notion intuitive doccurrence dun symbole dans une
formule : la place ou lendroit o ce symbole apparat, ce serait inutilement technique. On pourrait
alors dnir par induction les notions dj abordes doccurrences de variables libres et lies. Ceci
ne nous empchera dailleurs pas dutiliser ces notions. En fait on peut le plus souvent se contenter
de dnitions o la notion doccurrence reste implicite, comme dans ce qui suit. Tout dabord,
on peut dnir par induction x apparat dans laformule F (dnition laisse au lecteur). On dira
galement x a la occurrence dans une formule F.
On dnit ensuite x apparat libre dans une formule F (ou x a une occurrence libre dans F)
galement par induction sur les formules :
45
Formules atomiques. Si x apparat dans une formule atomique A, x apparat libre dans A.
absurde x napparat pas libre dans .
ngation x apparat libre dans F ssi x apparat libre dans F.
implication. . . x apparat libre dans (F G) ssi x apparat libre dans F ou x apparat libre
dans G. De mme pour la conjonction et la disjonction.
quantications Si y ,= x, x apparat libre dans y F ssi x apparat libre dans F, sinon x
napparat pas libre dans x F. De mme pour la quantication existentielle.
On peut maintenant dnir une formule close : cest une formule F telle quaucune variable de
1 napparat libre dans F. On peut galement dnir x apparat lie dans F, ou x a une occurence
lie dans F : cela signie que x apparat dans F et que x napparat pas libre dans F.
On considrera que deux formules sont gales si elles sont identiques modulo un renommage
cohrent des variables lies. Il sagit dune notion dgalit purement syntaxique, que lon va dnir
formellement par induction.
Voyons dabord la substitution. Nous avons besoin de la substitution pour par exemple les
rgles de preuve de la dduction naturelle (quanticateurs, galit).
La notion de substitution que nous allons dnir et utiliser est une substitution logique, qui
vite la capture de variable (voir paragraphe 2.2 page 16). Elle dire de la susbtitution simple
qui est la substitution sur les mots (on remplace toutes les occurrences dun lettre par un mot).
Quand on parlera de substitution sans prciser, cest de la susbtitution logique quil sagira. La
substitution logique et la substitution simple ne dirent pas sur les termes. La substitution simple
dun terme une variable se dnit sur les formules par induction comme pour les termes.
On donne maintenant une dnition par induction de la substitution logique. On la notera
F[t/x] que lon lit F dans laquelle t remplace x. Intuitivement la formule substitue est dnie
renommage cohrent des variables lies prs. Plutt que de travailler dans le quotient des formules
par renommage des variables lies, on va dnir un reprsentant de ce quotient par induction,
reprsentant qui na malheureusement rien de canonique. On va considrer que lensemble 1 des
variables du langage est numr soit 1 = x
i
/ i N, lnumration fournit un bon ordre sur
les variables.
tant donn un terme t, une variable x, on dnit pour toute formule F la formule F[t/x] par
induction :
Formules atomiques. Si A est une formule atomique A[t/x] est dj dni.
absurde [t/x] := .
ngation F[t/x] := F[t/x].
implication. . . (F G)[t/x] := (F[t/x] G[t/x]) De mme pour la conjonction et la disjonc-
tion.
quantications Si y = x, xF[t/x] := xF.
Si y ,= x, et y napparat pas dans t yF[t/x] := yF[t/x].
si y ,= x et y apparat dans t, yF[t/x] := zF[z/y][t/x], o z est une variable qui nappa-
rat pas dans t ni dans F, et, pour tre dterministe, on choisit pour z la plus petite variable
(la premire dans lnumration) vriant ceci. Exceptionnellement la notation F[z/y] in-
dique la substitution ordinaire, ce qui est possible car z napparat pas dans F (libre ou
lie).
De mme pour la quantication existentielle.
Remarquons qu la dernire clause nous navons pas tout fait respect le schma de dnition
par induction tel que nous lavons nonc : on a F[z/y] la place de F. Cest possible, car ces deux
formules ont la mme complexit. On peut considrer que lon dnit en une tape la substitution
pour toutes les formules de mme complexit.
On pourrait tendre facilement cette dnition la substitution simultane des termes u
1
, . . . , u
n
aux variables x
1
, . . . , x
n
, note F[u
1
/x
1
, . . . , u
n
/x
n
]. Remarquez que ce nest en gnral pas la
mme chose que la compose des substitutions F[u
1
/x
1
] . . . [u
n
/x
n
] (par exemple si x
2
apparat
dans u
1
).
46
On peut dnir galement lgalit des formules renommage cohrent des variables lies prs,
que lon va noter temporairement , an de rserver le signe = pour lidentit des formules en
tant que mots. Il ne faut pas confondre ce signe = qui est un signe du meta-langage, avec le
signe = qui peut apparatre dans F et qui lui est un signe du langage tudi. Pratiquement cela
ne pose pas rellement de problmes, le contexte permettant de trancher. On dnit par induction
sur F, F E pour une formule E quelconque.
Formules atomiques, absurde. Si A est une formule atomique ou labsurde A E ssi A = E.
ngation F E ssi E scrit E

et F E

.
implication. . . (F G) E ssi E scrit (E

) et F E

et G E

.
De mme pour la conjonction et la disjonction.
quantications x F E ssi E scrit y E

et F E

[x/y].
De mme pour la quantication existentielle.
La prsence du paramtre E peut rendre la dnition un peu moins vidente que les prc-
dentes. Formellement on peut considrer que lon a dnit lensemble des formules E telles que
F E par induction sur F.
Dornavant F G se notera F = G, et lon considrera comme gales des formules gales
renommage des variables libres prs.
Le fait de noter F = G pour F G nest pas innocent, on sous-entend que lon peut travailler
dans un quotient et que donc a les proprits de lgalit, symtrie, transitivit, stabilit par
constructions (connecteurs, quanticateurs), par substitution etc. Ces proprits se dmontrent
par induction sans grande dicult autre que dcriture. On les admettra.
Nous allons nous arrter l pour la syntaxe. Mme si nous navons pas termin la formalisation,
jespre que le lecteur a t convaincu que lon peut dnir formellement les notions de variable
libre, de formule close, de substitution etc. Elles sont susamment intuitives pour tre manies
sans faire appel ces dnitions, et le plus souvent nous admettrons les proprits videntes
dont nous avons besoin.
On retrouvera ces dnitions formelles quand il sagira de dmontrer les thormes dincompl-
tude de Gdel. En eet dans ce cas il sagit justement de formaliser le langage dune thorie dans
cette mme thorie mathmatique (arithmtique ou ensembliste). Il sagira donc de coder dans
la thorie la dnition inductive des formules, quelques dnitions par induction sur les formules,
essentiellement la substitution vue ci-dessus, et la dnition inductive de la prouvabilit, que lon
peut maintenant noncer formellement.
En eet la relation
T
C entre un multi-ensemble de formules propositionnelles et une
formule C est la relation dont la dnition inductive est donne par les rgles de la gure 5 page 18
et de la gure 6 page 19 (ces rgles utilisent les notions doccurrence libre et de substitution). On
reprend une remarque dj faite en calcul propositionnel (voir 4.5 page 30) : une relation de
dduction peut manifestement avoir plusieurs drivations, et donc il nest donc pas question de
dnir une fonction par induction sur la dnition dune relation de dduction.
47
7 Smantique des langages du premier ordre.
7.1 Introduction.
On va maintenant dnir formellement la smantique dun langage du premier ordre. Il sagit
dinterprter dans une structure donne les termes et formules du langage que nous avons dnis.
On va tout simplement suivre la dnition intuitive dinterprtation que vous avez dj prati-
qu. La smantique du calcul des prdicats gnralise la smantique du calcul propositionnel, qui
peut apparatre comme un cas particulier de celle-ci. Bien que lon ne parle plus de valuation, il
est toujours essentiel quil ny ait que deux valeurs de vrit. Cest dire que dans une structure,
un nonc clos sera vrai ou faux, peu importe que nous ne sachions pas quelle alternative est la
bonne.
7.2 Signature et structure.
tant donn une signature o, on rappelle quune o-structure / est la donne :
dun ensemble non vide, soit M, appel ensemble de base de la structure /;
dun lment c
M
de M pour chaque symbole de constante c de o ;
dune fonction
15
f
M
de M
n
dans M pour chaque symbole de fonction f darit n dans o ;
dun sous-ensemble R
M
de M
n
pour chaque symbole de prdicat R darit n de o.
Ainsi, si nous prenons le langage de larithmtique de signature T = (0, s, +, , ) dni au
paragraphe 6.3.1, on peut dnir ^ = (N, 0
N
, s
N
, +
N
,
N
,
N
) muni des constantes, oprations
et relations, usuelles pour interprter chacun des symboles de T. Ainsi s est interprt par la
fonction de N N qui ajoute 1 un entier, + par la fonction addition usuelle ( deux arguments)
etc.
Des notations comme s
N
, +
N
sont assez lourdes. Sil ny a pas dambigut sur la structure
concerne, on oubliera lindication de celle-ci, par exemple on notera s, +. Il nous arrivera mme
de noter de la mme faon symbole et interprtation, sil est clair daprs le contexte que lon parle
de linterprtation.
Une autre T-structure est Z muni des oprations et prdicats usuels, Z/2Z en interprtant
0 par le 0 de Z/2Z, les oprations avec leur interprtation usuelle, et lordre par exemple par
(0, 0), (0, 1), (1, 1) (ce qui signie que dans cette structure lon a 0 0, 0 1 et 1 1, mais pas
1 0)
16
. On pourrait tout aussi bien construire une structure ^

densemble de base N, o 0 est


interprt par 1, s par la fonction constante nulle etc.
Il est important que lensemble de base dune structure soit non vide. Outre que le cas o
lensemble de base est vide a assez peu dintrt, cela compliquerait les systmes de preuves si lon
voulait que celles-ci restent correctes dans de telles structures.
Par contre nous navons pas limin les structures dont lensemble de base a un seul lment,
un cas videmment dgnr puisque linterprtation des symboles de fonctions et de constantes
est impose, et que les symboles de prdicats nont que deux interprtations possibles ( ou M
n
).
7.3 Environnements.
Nous allons dnir successivement linterprtation des termes et des formules. On pourrait
choisir de ninterprter que les termes et les formules clos, mais la notion de formule close ne
peut se dnir directement par induction cause des quanticateurs : si la formule x F est
close, on sattend en gnral ce que la formule F dpende de x donc ne soit pas close. On va
donc interprter un terme ou une formule avec des variables libres, ce qui est possible si lon a
choisit dattribuer une certaine valeur aux variables libres en question : cest ce que lon appelle
un environnement.
Plus formellement, on dnira un environnement dans une structure /comme la donne dune
application dun ensemble ni de variables dans lensemble de base M de /. Si x
1
, . . . , x
p
sont
15
Nous considrons que les fonctions sont partout dnies.
16
Cet ordre nest pas compatible avec laddition
48
les seules variables aectes par lenvironnement, et ont pour images m
1
, . . . , m
p
(des lments de
M) on note celui ci :
[x
1
:= m
1
, . . . , x
p
:= m
p
]
et parfois on note en abrg : [

x :=

m].
Remarquez que pour interprter les formules propositionnelles (sans quanticateurs) et closes
(donc sans variables) on peut se passer de la notion denvironnement pour dnir linterprtation.
7.4 Interprtation.
Soit / une o-structure densemble de base M. On va dnir successivement linterprtation
des termes (par induction), des formules atomiques, et des formules (par induction).
7.4.1 Interprtation des termes.
Linterprtation dun terme t du langage de signature S dans / pour lenvironnement [x
1
:=
m
1
, . . . , x
p
:= m
p
] est note t
M
[x
1
:= m
1
, . . . , x
p
:= m
p
]. Cest un lment de M qui est dni par
induction sur t, pour tout environnement qui attribue une valeur toutes les variables libres de t.
variable x
i
M
[x
1
:= m
1
, . . . , x
p
:= m
p
] = m
i
, si x = x
i
est une variable aecte par lenvironne-
ment (sinon linterprtation nest pas dnie) ;
constante c
M
[x
1
:= m
1
, . . . , x
p
:= m
p
] = c
M
pour c une constante ;
fonction f t
1
. . . t
n
M
[x
1
:= m
1
, . . . , x
p
:= m
p
] =
f
M
( t
1
M
[x
1
:= m
1
, . . . , x
p
:= m
p
], . . . , t
n
M
[x
1
:= m
1
, . . . , x
p
:= m
p
])
pour f un symbole de fonction de o darit n.
7.4.2 Interprtation des formules : notations
Une formule est interprte par vrai ou faux. Pour dire quune formule F est vraie dans
la structure / relativement lenvironnement [x
1
:= m
1
, . . . , x
p
:= m
p
], on note :
/ [= F[x
1
:= m
1
, . . . , x
p
:= m
p
]
et on dira galement que la formule F est satisfaite dans la structure /, pour lenvironnement
[x
1
:= m
1
, . . . , x
p
:= m
p
]. Dans le cas contraire on notera
/ ,[= F[x
1
:= m
1
, . . . , x
p
:= m
p
] .
7.4.3 Interprtation des formules atomiques.
prdicat / [= Rt
1
. . . , t
n
[x
1
:= m
1
, . . . , x
p
:= m
p
] ssi
(t
1
M
[x
1
:= m
1
, . . . , x
p
:= m
p
], . . . , t
n
M
[x
1
:= m
1
, . . . , x
p
:= m
p
]) R
M
, pour R un prdicat
de S darit n, toutes les variables libres de Rt
1
. . . t
n
tant parmi x
1
, . . . , x
p
.
galit / [= t = t

[x
1
:= m
1
, . . . , x
p
:= m
p
] ssi
t
M
[x
1
:= m
1
, . . . , x
p
:= m
p
] = t

M
[x
1
:= m
1
, . . . , x
p
:= m
p
]), toutes les variables libres de t
et t

tant parmi x
1
, . . . , x
p
.
Remarquez que dans la dernire assertion, le signe = utilis dans deux sens dirents : comme
symbole du langage (premire occurrence), et dans son sens usuel, celui de lidentit du meta-
langage pour la deuxime occurrence.
La dirence entre lgalit et les autres symboles de prdicat est que pour lgalit, linterpr-
tation est impose. La notation choisie na pas grande importance, on aurait tout aussi bien pu
crire la clause pour lgalit ainsi (notons [

x :=

m] pour [x
1
:= m
1
, . . . , x
p
:= m
p
]) :
/ [= t = t

x :=

m] ssi (t
M
[

x :=

m], t

M
[

x :=

m]) (x, x) / x M .
49
7.4.4 Interprtation des formules.
On peut maintenant dnir linterprtation des formules par induction.
Notez bien que pour les connecteurs binaires, dnis sur F et G, il ny a que 4 cas possibles
suivant que / [= F[

x :=

m] ou / ,[= F[

x :=

m] et / [= G[

x :=

m] ou / [= G[

x :=

m].
Formules atomiques Voir le paragraphe prcdent.
absurde / ,[= [x
1
:= m
1
, . . . , x
p
:= m
p
].
ngation / [= F[x
1
:= m
1
, . . . , x
p
:= m
p
] ssi / ,[= F[x
1
:= m
1
, . . . , x
p
:= m
p
].
implication / [= (F G)[x
1
:= m
1
, . . . , x
p
:= m
p
] ssi
/ [= F[x
1
:= m
1
, . . . , x
p
:= m
p
] / [= G[x
1
:= m
1
, . . . , x
p
:= m
p
].
Le signe dsigne limplication dans le meta-langage. Cette clause peut paratre plus claire
nonce sous forme contrapose :
/ ,[= (F G)[x
1
:= m
1
, . . . , x
p
:= m
p
] ssi
/ [= F[x
1
:= m
1
, . . . , x
p
:= m
p
] et / ,[= G[x
1
:= m
1
, . . . , x
p
:= m
p
].
conjonction / [= (F G)[x
1
:= m
1
, . . . , x
p
:= m
p
] ssi
/ [= F[x
1
:= m
1
, . . . , x
p
:= m
p
] et / [= G[x
1
:= m
1
, . . . , x
p
:= m
p
]x.
disjonction / [= (F G)[x
1
:= m
1
, . . . , x
p
:= m
p
] ssi
/ [= F[x
1
:= m
1
, . . . , x
p
:= m
p
] ou / [= G[x
1
:= m
1
, . . . , x
p
:= m
p
].
Le ou est le ou inclusif du meta-langage, usuel en mathmatique. Cette clause peut sex-
primer peut-tre plus clairement par contrapose :
/ ,[= (F G)[x
1
:= m
1
, . . . , x
p
:= m
p
] ssi / ,[= F[x
1
:= m
1
, . . . , x
p
:= m
p
] et / ,[= G[x
1
:=
m
1
, . . . , x
p
:= m
p
].
quantication universelle / [= x F[x
1
:= m
1
, . . . , x
p
:= m
p
] ssi
/ [= F[x
1
:= m
1
, . . . , x
p
:= m
p
, x := m] pour tout lment m de M, ceci si x , x
1
, . . . , x
p
.
Si x x
1
, . . . , x
n
(x est dj aecte par lenvironnement) on choisit y la premire
(dans lordre dnumration des variables) non aecte dans lenvironnement et on donne la
dnition ci-dessus pour y F[y/x].
quantication existentielle / [= x F[x
1
:= m
1
, . . . , x
p
:= m
p
] ssi
/ [= F[x
1
:= m
1
, . . . , x
p
:= m
p
, x := m] pour au moins un lment m de /, ceci si
x , x
1
, . . . , x
p
.
Si x x
1
, . . . , x
n
, on procde comme pour .
Dans le cas dune formule close F on dira quelle est vraie dans /, ou satisfaite par /, ou
que / est modle de F quand / est satisfaite par / pour lenvironnement vide. On note alors
/ [= F .
Remarquez que ds quune formule close contient des quanticateurs, on a eectivement besoin
de la notion denvironnement (non vide !) pour dnir linterprtation.
Une formule close de L est dite universellement valide quand elle est satisfaite dans toutes les
L-structures.
Un exemple de formule universellement valide pour nimporte quelle signature L est x x = x.
On vrie en eet que pour toute structure /, pour tout lment m de lensemble de base de /,
/ [= x = x[x := m] (reprendre la dnition de la satisfaction des formules atomiques), et pour
toute structure /, / [= x x = x (environnement vide).
Voyons dautres exemples, prenons une signature L quelconque, et soit F une formule de L
ayant x comme seule variable libre. alors x F xF est universellement valide. En eet soit
/ une L-structure. Supposons que / [= x F. Cela signie par dnition que pour tout lment
m de lensemble de base de / / [= F[x := m]. Comme cet ensemble de base est non vide, il
contient au moins un lment m
0
et comme / [= F[x := m
0
], / [= xF. On a bien montr que
/ [= x F xF.
Dans lexemple ci-dessus, nimporte quelle formule F avec x pour seule variable libre convient.
On parle alors de schma de formules.
50
Les preuves telles que ci-dessus scrivent rarement. Il sagissait ici de vrier sur des exemples
que la dnition de satisfaction fonctionnait correctement. Ces preuves trs formelles (dans le
meta-langage) suivent de prs les rgles de la dduction de la logique du premier ordre, et donc
autant faire les preuves directement dans le langage du premier ordre.
On arrtera l pour le moment au sujet des formules universellement valides. On verra dans
les chapitres suivant des schmas de formules universellement valides purement propositionnels,
et dautres utilisant les quanticateurs comme le prcdent.
On passe sur quelques lemmes utiles comme la stabilit de linterprtation par renommage
cohrent des variables lies, la stabilit de linterprtation par extension de lenvironnement etc.
7.4.5 Remarques.
Cette formalisation de la smantique des formules du premier ordre ci-dessus est due Tarski.
Il faut bien comprendre que plus que de dnir linterprtation dune formule, il sagit de formaliser
celle-ci. En eet vous avez peu de chance de comprendre cette dnition sans avoir dj pratiqu les
mathmatiques, en particulier la ngation, la conjonction et les quanticateurs ! Ainsi les connec-
teurs et les quanticateurs sont tout simplement dnis ... en utilisant ces mmes connecteurs dans
le meta-langage. Ceci peut paratre tautologique, mais ne lest pas car une dnition formelle nous
permet de faire proprement des dmonstrations de rsultats concernant la smantique.
7.5 Satisfaisabilit, axiomatisation.
7.5.1 Formules satisfaisables.
Une formule close F du langage de signature o est dite satisfaisable si elle possde au moins
un modle, cest dire sil existe une o-structure / telle que / [= F.
La notion de formule satisfaisable est en quelque sorte duale de la notion de formule universel-
lement valide :
Proposition 7.1 Une formule close F est satisfaisable ssi F nest pas universellement valide.
Dmonstration. Si F est satisfaisable ssi existe un modle / de F. Par dnition de linterpr-
tation / [= F ssi / ,[= F et donc F est satisfaisable ssi F nest pas universellement valide.
Une formule satisfaisable dnit donc une classe de structures : celles qui la satisfont. Par
exemple la formule du langage de lgalit (signature vide) :
xy x = y
est satisfaite dans toutes les structures galitaires disons plus simplement les ensembles
ayant au moins deux lments. On dit quelle axiomatise cette notion.
De mme la formule
xyz(z = x z = y)
est satisfaite dans les ensembles au plus deux lments, et la conjonction des deux formules
prcdentes :
xy x = y xyz(z = x z = y)
dans les ensembles ayant deux lments.
51
7.5.2 Quelques notations.
Tout dabord on peut sautoriser des abrviations usuelles. Par exemple on crira x ,= y pour
x = y, ,= nest pas un symbole du langage, x ,= y dsigne la formule x = y, et il est clair qu
une formule de signature o , = apparat, on fait correspondre par une substitution simple
une formule du langage o.
En gnralisant les exemples prcdents, on saperoit facilement que lon peut axiomatiser les
ensembles au moins (resp. au plus, resp. exactement) trois lments, puis gnraliser un entier
n quelconque.
Pour axiomatiser la notion densemble au moins n lments on crira :
x
1
. . . x
n

0i<jn
x
i
,= x
j
. (3)
Pour pouvoir exprimer ceci on a introduit des notations qui ne font pas partie du langage
tudi mais qui l encore renvoient pour chaque entier n une formule du premier ordre. En ce
qui concerne la suite de quanticateurs x
1
. . . x
n
F, la signication pour chaque entier n est
claire. La conjonction
_
0i<jn
x
i
,= x
j
, mme si elle pourrait se dnir syntaxiquement, utilise
implicitement les proprits dite dassociativit et de commutativit de la conjonction qui sont
smantiques (linterprtation dune suite de conjonctions ne dpend ni de lordre ni du parenth-
sage). Tout ce qui nous intresse est de savoir quil existe pour chaque entier n une formule du
langage note
_
0i<jn
x
i
,= x
j
vriant pour toute structure / :
/ [=

0i<jn
x
i
,= x
j
ssi pour tout couple i, j tel que 0 i < j n / [= x
i
,= x
j
.
On utilisera souvent ce genre de notation. Il faut bien prendre garde ce que, pour prendre un
exemple, on ne peut parler que de conjonctions nies, les conjonctions innies, qui intuitivement
ont un sens nexistent pas en langage du premier ordre. Dans le mme ordre dide, lentier n dans
la formule (3) ne fait pas partie du langage. En particulier on ne peut quantier sur n dans le
langage. Par exemple on dirait volontiers quun ensemble est inni la condition :
Pour tout entier n x
1
. . . x
n

0i<jn
x
i
,= x
j
.
Mais ceci nest pas une formule du langage du premier ordre galitaire (ce que nous avons
soulign en nutilisant pas le signe pour la quantication universelle sur n). Nous verrons quil
nest pas possible daxiomatiser la notion densemble inni par une seule formule du premier ordre.
7.5.3 Thories.
Un moyen de remdier partiellement au manque dexpressivit de la logique du premier ordre
est dutiliser des ensembles innis de formule. videmment il faudra bien trouver un moyen ni
de dcrire cette innit de formules.
Une thorie du premier ordre dans un langage de signature o est un ensemble de formules closes
du langage (comme on se situe en logique du premier ordre on parlera simplement de thorie).
Une o-structure est / modle dune thorie T quand elle est modle de chacune des formules
de la thorie. On note comme pour les formules / [= T.
Une thorie est dite satisfaisable si elle a un modle, cest dire sil existe une structure / qui
est modle de la thorie. Une thorie est dite incohrente ou inconsistente dans le cas contraire,
cest dire si elle na pas de modle. On dira aussi plus tard thorie contradictoire, mais pour le
moment nous rservons ce mot pour la notion syntaxique de dduction.
Une proprit des o-structures est dite axiomatise par une thorie T quand les structures ont
la proprit en question ssi elles sont modles de T.
Ainsi la notion densemble inni est axiomatise par la thorie (innie) :
52
x
1
. . . x
n

0i<jn
x
i
,= x
j
/ n N. (4)
Quand une proprit est axiomatise par une thorie nie on dit quelle est niment axiomati-
sable. Il est facile de voir qualors la proprit est axiomatise par une seule formule : la conjonction
des axiomes de la thorie.
Tout ne peut pas se rsoudre en considrant une innit de formules. Ainsi on peut exprimer
dans le langage de lgalit pour chaque entier n quun ensemble possde au plus n lments,
comme devrait vous en convaincre lcriture suivante :
x
1
. . . x
n
z(z = x
1
. . . z = x
n
)
que lon peut aussi crire :
x
1
. . . x
n
z
n

i=1
z = x
i
.
Un ensemble est ni sil vrie :
Il existe un entier n tel que x
1
. . . x
n
z
n

i=1
z = x
i
.
mais il ny a aucun moyen apparent dexprimer ceci dans le langage galitaire du premier
ordre, mme avec une innit de formules. On dmontrera quen fait la notion densemble ni ne
saxiomatise pas au premier ordre.
videment on pourra exprimer quun ensemble est ni ou inni par une formule de la thorie
des ensembles, qui est elle mme une thorie du premier ordre, ce qui na rien de contradictoire
avec ce qui prcde, puisque ces notions seront relatives un modle attendu de la thorie des
ensembles.
7.6 Morphismes.
On gnralise les notions de morphisme dj abordes en algbre une signature quelconque.
tant donn une signature o on appelle L-homomorphisme de o-structures, une application
dune o-structure / dans une o-structure ^ qui vrie :
constante
_
c
M
_
= c
N
pour tout symbole de constante c de L.
fonction
_
f
M
(m
1
, . . . , m
n
)
_
= f
N
((m
1
), . . . , (m
n
)) pour tout symbole de fonction f darit
n, pour tous m
1
, . . . , m
n
/.
prdicat Si (m
1
, . . . , m
n
) R
M
alors ((m
1
), . . . , (m
n
)) R
N
, pour tout symbole de prdicat
R darit n, pour tous m
1
, . . . , m
n
/.
Cette dnition ne fait intervenir que la signature, et aucune notion daxiomatique. Par exemple
lidentit est un morphisme (N, 0, +) dans (Z, 0, +) (signature (0, +)), qui est un morphisme de
monode mais pas de groupe. Si lon veut parler de morphisme de groupe, on ajoutera au langage
un symbole de fonction unaire pour loppos.
Une consquence immdiate de cette dnition est la suivante :
Lemme 7.2 Soit o une signature, deux o-structures / et ^, un homomorphisme de / dans
^. Soit t un terme du langage de o dont les variables libres sont parmi x
1
, . . . , x
p
. Soit m
1
, . . . , m
p
des lments de /. On a :

_
t
M
[x
1
:= m
1
, . . . , x
p
:= m
p
]
_
= t
N
[x
1
:= (m
1
), . . . , x
p
:= (m
p
)]
Dmonstration. Le rsultat est intuitivement vident, et la preuve immdiate par induction sur
la dnition des termes. Comme cest lune des premires nous la rdigeons. Nous notons lenvi-
ronnement [

x :=

m].
53
variables Si t = x
i
, x
i
M
[

x :=

m] = m
i
, x
i
N
[

x :=

(m)] = (m
i
) (dnition de linterptation).
constantes Si t = c est une constante de o,
c
M
[

x :=

m] = c
M
,
c
N
[

x :=

(m)] = c
N
,
(c
M
) = c
N
par dnition dhomomorphisme.
fonctions Si t = fu
1
. . . u
p
, o f est un symbole de fontion de o,
fu
1
. . . u
p
M
[

x :=

m] = f
M
(u
1
M
[

x :=

m], . . . , u
p
M
[

x :=

m]),
fu
1
. . . u
p
N
[

x :=

(m)] = f
N
(u
1
N
[

x :=

(m)], . . . , u
p
N
[

x :=

(m)]).
On a donc par dnition de morphisme,
(fu
1
. . . u
p
M
[

x :=

m]) = f
N
_
(u
1
N
[

x :=

(m)]), . . . , (u
p
N
[

x :=

(m)])
_
et on en dduit le rsultat par hypothse dinduction sur u
1
, . . . , u
p
.
Un monomorphisme ou plongement de o-structures de / dans ^ est un homomorphisme injectif
de / dans ^ qui vrie de plus que
prdicat (m
1
, . . . , m
n
) R
M
ssi ((m
1
), . . . , (m
n
)) R
N
, pour tout symbole de prdicat R
darit n, pour tous m
1
, . . . , m
n
/.
Un isomorphisme de o-structures de / dans ^ est un homomorphisme bectif de / dans
^ dont la rciproque est un homomorphisme de o-structure, ou encore un plongement bectif.
Intuitivement il devrait tre clair que deux structures isomorphes vrient les mmes formules
closes. Ce rsultat se dmontre par induction. Comme la dnition de linterprtation des formules
closes passe par celle des formules en gnral, on est amen dmontrer ce lemme :
Lemme 7.3 Soit o une signature, soit / et ^ et deux o structures isomorphes par . Pour
toute formule F du langage du premier ordre sur o dont les variables libres sont parmi x
1
, . . . , x
p
,
pour tout m
1
, . . . , m
p
/, on a :
/ [= F[x
1
:= m
1
, . . . , x
p
:= m
p
] ssi ^ [= F[x
1
:= (m
1
), . . . , x
p
:= (m
p
)] .
On en dduit, en prenant lenvironnement vide, le rsultat attendu :
Proposition 7.4 Soit o une signature, soit / et ^ et deux o structures isomorphes par . Pour
toute formule close F du langage du premier ordre sur o
/ [= F ssi ^ [= F .
Dmonstration (lemme). On montre par induction sur la structure des formules le rsultat pour
tout environnement qui aecte toutes les variables libres de la formule. Aucune clause ne prsente de
relle dicult. cause des clauses concernant les quanticateurs on doit dmontrer par induction
le rsultat pour tout environnement. Passons quelques clauses en revue.
formules atomiques On utilise le lemme 7.2. Si la formule atomique est une galit cest une
consquence immdiate de linjectivit de . Si la formule atomique est un prdicat, cest
une consquence de la dnition de morphisme pour et
1
(cest dire que est un
plongement).
ngation Cest une consquence immdiate de lhypothse dinduction. On utilise la dnition
de la satisfaction, et le fait que lon dmontre bien une quivalence par induction.
conjonction On utilise directement la dnition de la satisfaction, et lhypothse dinduction.
quantication universelle Cest une consquence de lhypothse dinduction et de la surjecti-
vit de . On a F = x F

. Soit [x
1
:= m
1
, . . . , x
p
:= m
p
] un environnement qui aecte
toutes les variables libres de F. Par dnition de la satisfaction :
/ [= x F

[x
1
:= m
1
, . . . , x
p
:= m
p
] ssi
pour tout m de /, / [= F

[x
1
:= m
1
, . . . , x
p
:= m
p
, x := m] (1)
54
^ [= x F

[x
1
:= (m
1
), . . . , x
p
:= (m
p
)] ssi
pour tout n de ^, ^ [= F

[x
1
:= (m
1
), . . . , x
p
:= (m
p
), x := n] (2)
On doit dmontrer que (1) (2). Lhypothse dinduction pour lenvironnement [x
1
:=
m
1
, . . . , x
p
:= m
p
, x := m], donne :
/ [= F

[x
1
:= m
1
, . . . , x
p
:= m
p
, x := m]
ssi
^ [= F

[x
1
:= (m
1
), . . . , x
p
:= (m
p
), x := (m)]
(1) (2) Soit n un lment quelconque de ^, comme est surjective, il existe m dans
/ tel que (m) = n. On utilise lhypothse dinduction pour lenvironnement [x
1
:=
m
1
, . . . , x
p
:= m
p
, x := m].
(2) (1) Soit m un lment quelconque de /, on utilise lhypothse dinduction pour
lenvironnement [x
1
:= m
1
, . . . , x
p
:= m
p
, x := m].
Les autre cas se dmontrent essentiellement de la mme faon, par exemple la clause pour lexis-
tentielle utilise galement la surjectivit de .
7.7 Consquence smantique.
Soit o une signature, T une thorie (cest dire un ensemble de formules closes) du langage de
signature o, soit un ensemble ni de formules et F du mme langage. Nous dirons que a pour
consquence smantique F dans la thorie T quand pour tout modle / de T, tout environnement
[

x :=

m] dans / qui valide chacune des formules de , F[

x :=

m] est valide :
pour tout / si / [= T et / [= [

x :=

m] alors / [= F[

x :=

m]
On notera ultrieurement
T
F. Cependant, tant que nous navons pas dmontr le tho-
rme de compltude, nous noterons cette relation [[
T
F. Quand la thorie T est vide, on dit
simplement que a pour consquence smantique F, et lon note [[ F. Quand lensemble
est vide on dit simplement que F est une consquence smantique de la thorie T et lon note
[[
T
F. Remarquons quune formule close F est consquence smantique dune thorie T quand
tout modle de T est modle de F.
Une consquence immdiate de la dnition de la satisfaction pour est que :
Une thorie T est incohrente ssi [[
T
.
Nous avons dj vu la dnition de formule universellement valide, remarquons quun formule
close est universellement valide ssi [[ F.
Une consquence immdiate de la dnition est que si est un ensemble de formules closes :
[[
T
F ssi [[
T
F .
On dira que deux formules F et G sont smantiquement quivalentes dans la thorie T quand
F [[
T
G et G [[
T
F, et lon notera F
T
G.
On utilise le signe pour lquivalence en tant que connecteur, qui est dnie de faon usuelle
par :
F G = (F G) (G F) .
Une consquence immdiate des dnitions qui prcdent et de la dnition de la satisfaction
est que pour toute thorie T, pour toute formules F et G :
F
T
G ssi [[
T
F G .
On gnralise ces dnitions aux thories : une thorie T

est consquence dune thorie T


si toute formule de T

est consquence de T, deux thories T et T

sont quivalentes si T

est
consquence de T et T consquence de T

.
55
8 Calcul des prdicats.
8.1 Introduction.
Le but de ce court chapitre est essentiellement de donner quelques schmas de formules uni-
verselles qui concernent les quanticateurs.
Bien que nous nayons pas encore dmontr le thorme de compltude, nous notons la
dduction, quelle soit syntaxique ou smantique.
8.2 Quelques quivalences logiques et formules universellement valides.
La signature du langage est quelconque. On dsigne par F et G des formules quelconques.
Quantications inutiles :
Si x napparait pas libre dans F :
x F F x F F (1)
Commutation des quanticateurs :
xy F yx F xy F yx F
xy F yx F
mais en gnral (cela dpend de F) la rciproque est fausse :
yx F , xy F
Ngation des quanticateurs :
x F xF x F xF (2)
Conjonction et disjonction :
x(F G) x F x G x(F G) x F x G (3)
x(F G) x F x G x F x G x(F G)
Mais en gnral (cela dpend des formules F et G) la rciproque est fausse :
x F x G , x(F G) x(F G) , x F x G
par contre si x napparat pas dans G :
x(F G) x F G x(F G) x F G (4)
Remarquez que lon pouvait dj dduire des quivalences prcdentes que si x napparat
pas dans G :
x(F G) x F G x(F G) x F G
Implication :
x(F G) x F x G
x F x G x(F G)
mais en gnral (cela dpend de F et G) la rciproque est fausse :
x(F G) , x F x G
56
par contre si x napparait pas libre dans F :
x(F G) F x G (5)
et si x napparait pas libre dans G :
x(F G) x F G (6)
On montre ces quivalences, soit en utilisant la dduction, soit en reprenant la dnition
smantique.
laide des quivalences (2) qui prcdent, et des rsultats vus en calcul propositionnel, on
montre facilement que toute formule de la logique du premier ordre est quivalente une formule
qui nutilise que , , , ou encore , , . On peut donc se restreindre lun des ces ensembles
de quanticateurs et connecteurs pour dmontrer des proprits smantiques des formules. On ne
peut pas vraiment parler de systmes complets pour la logique du premier ordre. Par exemple des
quantications comme Il existe une innit de x tels que F ne sexprime pas dans le langage du
premier ordre.
Par contre il est bien connu que lon peu exprimer les quanticateurs il existe au plus un x
tel que F et il existe un unique x tel que F avec lgalit :
!x F
d
yy

(F[y/x] F[y

/x] y = y

) .
!x F
d
x F!x F .
On montre facilement que :
!x F x(F y(F[y/x] y = x)) .
!x F yy

(F[y/x] F[y

/x] y ,= y

) .
!x F xF yy

(F[y/x] F[y

/x] y ,= y

) .
Il est possible galement dexprimer il existe au plus un couple (x, y) tel que F, il existe un
unique couple (x, y) tel que F, de gnraliser aux n-uplets (exercice).
8.3 Formes prnexes, formes de Skolem
Une formule F est dite sous forme prnexe quand les quanticateurs napparaissent dans F
quen tte de la formule, cest dire que F scrit :
Q
1
x
1
. . . Q
n
x
n
F
0
o F
0
est purement propositionnelle et les Q
i
sont des quanticateurs ou .
En utilisant les quivalences du paragraphe 8.2, plus prcisment celles qui sont numrotes,
on montre que :
Proposition 8.1 Toute formule F dun langage L est quivalente une formule du mme langage
sous forme prnexe.
Dmonstration. On prouve le rsultat par induction sur la structure des formules.
Formules atomiques, . Les formules atomiques de L sont sous forme prnexe, de mme .
ngation Si F est une formule quivalente la forme prnexe :
F Q
1
x
1
. . . Q
n
x
n
F
0
alors en utilisant les quivalences (2) du paragraphe 8.2
F Q

1
x
1
. . . Q

n
x
n
F
0
o Q

i
est le connecteur dual de Q
i
(Q

i
est , si Q
i
est , Q

i
est , si Q
i
est ).
57
conjonction Si F et G sont des formules chacune quivalente une forme prnexe :
F Q
1
x
1
. . . Q
n
x
n
F
0
G Q

1
x

1
. . . Q

m
x

m
G
0
on suppose de plus, modulo renommage des variables lies, que les ensembles de variables
x
1
, . . . , x
n
et x

1
, . . . , x

m
sont disjoints. On obtient alors, en utilisant les quivalences (1) et
parmi (3) et (4) celles qui concernent la conjonction :
F G Q
1
x
1
. . . Q
n
x
n
Q

1
x

1
. . . Q

m
x

m
(F
0
G
0
) .
On remarque dailleurs que lordre entre les quanticateurs Q
i
et Q

i
na pas dimportance :
on peut tout aussi bien placer les Q

i
en premier, les alterner, le tout et de conserver lordre
entre les Q
i
et lordre entre les Q

i
. Il pourrait y avoir par ailleurs des mises sous forme
prnexe plus conomique, par exemple utilisant (3) directement.
disjonction analogue au cas prcdent.
implication analogue aux deux cas prcdents, il faut utiliser les quivalences (5) et (6).
quantications Si F est une formule quivalente une forme prnexe et x une variable, alors
x F et x F sont videmment quivalentes des formules sous forme prnexe.
Il est clair quil ny a pas unicit de la forme prnexe, ne serait-ce qu cause des quivalences (1).
On peut essayer de minimiser le nombre de quanticateurs dans la mise sous forme normale, et
galement de minimiser le nombre dalternances de groupe de quanticateurs de mme nature (nous
dirons alternances de quanticateurs) ce qui nassure pas plus lunicit. Intuitivement, le langage
tant x, plus une formule prnexe a dalternances de quanticateurs, plus elle est complique
comprendre et dmontrer. Par exemple lnonc de linjectivit de f dnie de A dans B,
x Ay A(f(x) = f(y) x = y) na pas dalternances de quanticateurs, et semble plus
simple que lnonc de la surjectivit de f, y Bx A(f(x) = y) qui contient une alternance
de quanticateur. Les noncs exprimant lexistence dune limite en un point ont plus dalternances
et semblent plus compliqus. Tout ceci nest pas prendre au pied de la lettre. Les alternances de
quanticateurs fournissent un cadre par exemple pour analyser la complexit des sous-ensembles
de N qui sont dnissables par une formule de larithmtique, la complexit de certains problmes
algorithmiques etc.
En composant avec les rsultats de mise sous forme normale en calcul propositionnel, on obtient
que toute formule est quivalente une formule sous forme prnexe dont la partie propositionnelle
est sous forme normale disjonctive, ou conjonctive.
On ne peut faire disparatre par quivalence les alternances de quanticateurs. Il est par contre
possible dobtenir de telles formules par quisatisfaisabilit, en tendant le langage (et donc cela ne
contredit pas ce qui prcde). Deux formules F et G sont quisatisfaisables quand F a un modle
ssi G a un modle.
tant donn une formule F du langage L il est possible de trouver une formule quisatisfaisable
F

dun langage L

qui tend L, qui est sous forme prnexe et ne contient que des quanticateurs
universels. On construit F

partir dune forme prnexe de F en ajoutant un symbole de fonc-


tion f
i
pour chaque quanticateur existentiel x
i
qui a autant darguments que de quanticateurs
universels antrieurs dans la forme prnexe, soient x
j1
, . . . , x
j
k
, et en remplaant dans la partie pro-
positionnelle de la forme prnexe de F chaque occurrence de variable x
i
par le terme f
i
x
j1
. . . x
j
k
.
On appelle une formule ainsi construite forme de Skolem de F.
Par exemple, prenons pour langage (f), une forme de Skolem de yx fx = y est y fgy = y
formule du langage (f, g). Intuitivement g est une fonction rciproque droite de f. Un modle
de cette dernire formule fournit videmment un modle de la premire formule (en oubliant
linterprtation de g). Un modle / = (M, f) de la premire formule fournit un modle de sa
forme de Skolem : on construit linterprtation de g en choisissant pour chaque lment m de M
un lment m

de M qui vrie / [= fx = y[x := m, y := m

] (on utilise laxiome du choix si M


est inni).
On a expos sur un cas particulier trs simple la dmonstration de la proposition suivante :
Proposition 8.2 Si G est une forme de Skolem de F, F et G sont quisatisfaisables.
58
8.4 Un exemple dlimination des quanticateurs.
Donnons un exemple dutilisation de la mise sous-forme normale en calcul propositionnel vue
au chapitre prcdent, et de la mise sous forme prnexe.
Dans certaines thories, il est possible de montrer que toute formule est quivalente une
formule sans quanticateurs, on dit alors quune telle thorie admet llimination des quantica-
teurs. Lintrt dun tel rsultat est assez vident, et cela a des consquences importantes que nous
verrons ensuite.
Un des exemples les plus simples dun telle thorie est la thorie des ordres totaux denses sans
extrmits. On exprime cette thorie dans le langage de signature (<) (ordre strict). Les axiomes
sont :
anti-rexivit xx < x ;
transitivit xyz(x < y y < z x < z) ;
totalit xy(x < y x = y y < x) ;
densit xy(x < y a(x < a a < y) ;
sans majorant xy x < y ;
sans minorant xy y < x.
Clairement (Q, <) et R, <) sont des modles de cette thorie.
Appelons T cette thorie. En plus de , on va considrer galement comme un lment
primitif du langage (juste pour ce paragraphe).
Il est commode dans un premier temps dliminer les ngations, ce que permet le lemme suivant :
Lemme 8.3 On vrie pour toutes variables x et y que :
x < y
T
y < x y = x
x = y
T
x < y y < x
Dmonstration. Cest une consquence immdiate de la totalit.
On en dduit :
Lemme 8.4 Toute formule propositionnelle du langage (<) est quivalente dans la thorie des
ordres stricts totaux une formule qui utilise les mmes variables libres et qui est, ou bien sous
forme normale disjonctive utilisant pour seuls connecteurs , , ou bien , ou bien .
Dmonstration. Soit F une formule. Tout dabord F est quivalente une formule F
0
sous forme
normale disjonctive. Cette forme normale disjonctive utilise les mmes atomes que F, donc les
mmes variables libres. On a considr et comme des cas dgnrs de forme normale dis-
jonctive.
On suppose que F
0
nest ni ni . Dans F
0
les ngations apparaissent devant une formule
atomique, soit sous une des deux formes x < y ou x = y. En utilisant le lemme prcdent, on
obtient par substitution une formule F
1
quivalente F
0
et qui nutilise que les connecteurs et
(sans ngation). On montre ensuite que F
1
est quivalente une forme normale disjonctive sans
ngation par induction sur la structure de F
1
, en utilisant la distributivit du sur le .
Une formule du langage des ordres est donc quivalente dans la thorie T une forme prnexe
dont la partie propositionnelle est comme au lemme prcdent. Le lemme clef pour llimination
des quanticateurs est le suivant :
Lemme 8.5 (lemme clef ) Soit F une formule propositionnelle du langage de signature (<) uti-
lisant pour seul connecteur , et dont les variables sont parmi x
0
, x
1
, . . . , x
n
. Alors il existe une
formule propositionnelle F

du mme langage, utilisant pour seul connecteur dont les variables


libres sont parmi x
1
, . . . , x
n
et telle que :
x
0
F
T
F

.
59
Dmonstration. Lide de la preuve est simple. Une fois les conditions ne concernant pas x
0
ra-
lises, il est toujours possible de trouver un tel x
0
, en vertu des axiomes de densit, dabsence de
majorant et de minorant.
Dtaillons tout dabord la construction de la formule F

.
Il y a un nombre ni de formules x
i
< x
j
, x
i
= x
j
, on peut donc dnir la formule F
0
obtenue, tout dabord en ajoutant F toutes les formules x
i
< x
j
et x
i
= x
j
qui sont
consquence de F dans la thorie T, sauf les galit x
i
= x
i
:
F
0
=
_
_
_
_
_
n

i, j = 0
F T xi < xj
x
i
< x
j
_
_
_
_
_

_
_
_
_
_

0 i < j n
F T xi = xj
x
i
= x
j
_
_
_
_
_
clairement F
0
contient en particulier chaque formule atomique qui apparat dans F et donc
F F
0
. Si F
0
contient une formule x
i
< x
i
, les relations induites par les galits et ingalits
de la formule F sur x
1
, . . . , x
n
ne sont pas ralisables parce quil y a un cycle (anti-rexivit).
La formule F est quivalente , la formule x
0
F galement.
Si la variable x
0
apparait dans une galit de F
0
(et donc de F) : F x
0
= x
i
, alors la
formule x
0
F est quivalente F

obtenue partir de F
0
en supprimant toutes les formules
o x
0
apparait. On pourrait galement remplaer dans F toutes les occurrences de x
0
par
x
i
(cest dj fait dans F
0
).
Dans tous les autres cas la formule F est quivalente la formule F

obtenue en supprimant
dans F
0
toutes les formules atomiques o x
0
apparait. On prend F

= si ceci supprime
toutes les formules. On utilise pour cela soit labsence de minorant, soit labsence de majorant,
soit la densit.
Donnons quelques exemples avant la dmonstration.
y(x
1
< y y < x
2
x
1
= x
2
)
T
cycle
y(x
1
< y x
3
< x
2
y = x
3
)
T
x
1
< x
3
x
3
< x
2
galit
y(x
1
< y y < x
2
x
1
= x
3
)
T
x
1
< x
2
x
3
< x
2
x
1
= x
3
densit
y(x
1
< y x
2
< y)
T
pas de majorant
y(y < x
1
x
3
< x
2
x
1
= x
3
)
T
x
1
< x
2
x
3
< x
2
x
1
= x
3
pas de minorant
Prcisons la preuve. On suppose que F est satisfaisable. La formule F

est obtenue comme


indiqu ci-dessus : par construction x
0
F F

. Voyons la rciproque. On se donne dans un modle


quelconque / un environnement [

x
i
:=

m
i
] pour x
1
, . . . , x
n
les variables libres de x
0
F (donc
pour les variables libres de F

). Si F

x
i
:=

m
i
] est satisfaite, on montre que F[

x
i
:=

m
i
] est alors
satisfaite. Si x
0
apparait dans au moins une galit x
0
= x
i
, on interprte x
0
par m
i
(la construction
de F

assure que toutes les galits et ingalits o x


0
apparait sont alors satisfaites). Si x
0
napparait que dans des ingalits, droite et gauche du signe <, on obtient une interprtation
pour x
0
par densit entre m
i0
le plus grand des m
i
tel que x
i
< x
0
apparait dans F

, et m
i1
le
plus petit des m
i
tel que x
0
< x
i
apparait dans F

. On a bien que m
i0
< m
i1
. En eet comme les
formules x
i0
< x
0
et x
0
< x
i1
, apparaissent dans F

, par construction de F

, la formule x
i0
< x
i1
apparait dans F

(T est transitive). Or la conjonction F

est satisfaite dans lenvironnement


[

x
i
:=

m
i
]. Si x
0
napparait que dans des ingalits, droite du signe <, on utilise de faon
analogue labsence de majorant. Si x
0
napparait napparait que dans des ingalits, gauche du
signe < on utilise de faon analogue labsence de minorant.
Proposition 8.6 Une formule du premier ordre du langage de (<) est quivalente dans la thorie
T des ordres denses sans extrmits une formule sans quanticateurs dont les variables libres
sont parmi les variables libres de F.
Dmonstration. On le montre pour les formules sous forme prnexe par rcurrence sur le nombre
doccurrences de quanticateurs, soit n.
n = 0. Cette forme normale est sans quanticateurs.
60
n n + 1. Soit F une formule sous forme prnexe avec n+1 occurences de quanticateurs. Deux
cas sont possibles.
F = xG. Par hypothse de rcurrence, G est quivalente une formule sans quanticateurs
dont les variables libres sont parmi celles de F ou x. Daprs le lemme 8.4, G est
quivalente une formule
_
n
i=1
G
i
o les G
i
sont des conjonctions de formules atomiques
qui ont leurs variables libres parmi celles de G. On a donc
xF
n

i=1
x G
i
.
Daprs le lemme 8.5, chacune des formules x G
i
est quivalente une formule sans
quanticateurs dont les variables libres sont parmi celles de F, do le rsultat.
F = xG. Par hypothse de rcurrence, G est quivalente une formule sans quanticateurs
dont les variables libres sont parmi celles de F ou x. On a F xG. On procde
pour xG comme au cas prcdent, do le rsultat pour F.
Corollaire 8.7 Pour toute formule close du premier ordre F dans le langage (<),

T
F ou
T
F .
Dmonstration. En eet daprs le lemme prcdent F est quivalente une formule sans quanti-
cateurs ni variables libres, qui ne peut donc tre que ou , car le langage na pas de constantes.
Une telle thorie, cest dire une thorie T vriant pour toute formule F que
T
F ou
T
F,
est dite complte.
Les modles dune thorie complte T vrient les mmes formules closes du premier ordre :
celles qui sont dmontrables dans la thorie T. Par exemple (Q, <) et (R, <) satisfont les mmes
formules closes (alors ces deux structures dont les ensembles de base nont pas mme cardinalit,
ne sont pas isomorphes).
Il existe des thories qui ne sont videmment pas compltes, comme la thorie des ordres, la
thorie des groupes etc.
Il existe des thories qui ont un modle attendu et dont on pourrait souhaiter quelles soient
compltes, mais qui ne le sont pas. Cest le cas par exemple de larithmtique de Peano, ou de la
thorie des ensembles. Cela signie par exemple que larithmtique de Peano a des modles qui ne
vrient pas les mmes formules que N. Cest une consquence du premier thorme dincompltude
de Gdel, que lon ne dmontrera pas ici. En fait, daprs le premier thorme dincompltude de
Gdel, il ny a pas de thorie que lon puisse noncer de faon raisonnable
17
, qui soit cohrente,
qui permette de dvelopper susament darithmtique (comme larithmtique de Peano ou la
thorie des ensembles), et qui soit complte.
Il existe cependant des thories compltes intressantes, comme la thorie des corps algbri-
quement clos, larithmtique de Pressburger (essentiellement larithmtique avec laddition comme
seule opration) ...
17
informellement on doit pouvoir reconnatre mcaniquement si une formule est ou non un axiome, on sait
formaliser ceci.
61
9 La relation de dduction du calcul des prdicats : ad-
quation et compltude.
Le but de ce chapitre est de montrer que les notions syntaxique et smantique de dduction
concident.
9.1 Quelques prliminaires sur la relation de dduction.
On rappelle que la relation de dduction
T
C entre un multi-ensemble de formules proposi-
tionnelles et une formule C est la relation dont la dnition inductive est donne par les rgles
de la gure 5 page 18 et de la gure 6 page 19.
On retrouve les proprits de la relation de dduction nonces dans le cadre du calcul propo-
sitionnel au paragrahe 5.1 page 38, qui se justient de la mme faon quen calcul propositionnel.
Proposition 9.1 Pour toutes thories T et T

, toute formule C,
si T T

, et
T
C alors
T
C .
Proposition 9.2 Pour toute thorie T, toute formule close A, toute formule C,

T{A}
C, ssi , A
T
C .
La proprit de nitude 5.7 page 39 reste valide en calcul des prdicats, pour les mms raisons
quen calcul propositionnel :
Proposition 9.3 (nitude) Si
T
C, il existe une partie nie de T, soit T
0
, telle que
T0
C.
9.2 La proprit dadquation.
La notion de dduction smantique dnie pour une thorie T un ensemble de formules et
une formule F (voir paragraphe 7.7), stend videmment un multi-ensemble : on dira que

T
F pour un multi-ensemble quand on a

T
F pour lensemble

support de ( dans
lequel on a limin les rptitions).
Comme en calcul propositionnel (lemme 4.3), on va montrer par induction sur la dnition
de la relation de dduction, cest dire en vriant rgle par rgle le rsultat, que la dduction
conserve la satisfaction dans une structure, cest dire que la dduction syntaxique entrane la
dduction smantique. Cest la proprit dadquation qunonce le lemme suivant.
Lemme 9.4 (adquation) Pour toute thorie T, tout ensemble ni de formules , toute formule
C dans le langage L,
si
T
C, alors [[
T
C .
On obtient comme cas particulier :
Proposition 9.5 (adquation) Pour toute thorie T, toute formule close C dans le langage L,
si
T
C alors [[
T
C. Autrement dit, pour toute L-structure / :
Si
T
C alors / [= T / [= C .
Dmonstration (lemme). La preuve par induction du lemme est de pure routine. dtaillons tout
de mme quelques cas pour comprendre ce genre de preuve. Soit / une L-structure, telle que
/ [= T. On crit [

x :=

m] pour dsigenr un environnement x
1
:= m
1
, . . . , x
n
:= m
n
.
On va montrer par induction sur la dduction de
T
C que pour tout environnement [

x :=

m] dans / qui aecte toutes les variables libres des formules considres (dans la suite nous
appelons convenable un tel environnement), si / [= [

x :=

m] alors / [= C[

x :=

m].
62
Axiomes de la dduction On a A
T
A, on doit montrer pour un environnement convenable
quelconque que si / [= A[

x :=

m], alors / [= A[

x :=

m], ce qui est tautologique !
Axiomes de la thorie / [= T signie / [= F pour chaque formule close F de T.
Contraction, aaiblissement Pour la contraction on utilise directement lhypothse dinduc-
tion (cest la dnition de la satisfaction dun multi-ensemble), pour laaiblissement, il est
vident que si / [= , A[

x :=

m], alors / [= [

x :=

m] et on conclut par hypothse
dinduction.
Introduction de limplication Cette rgle tant la dernire applique, par hypothse dinduc-
tion on a pour tout environnement convenable, si / [= , A[

x :=

m] alors / [= B[

x :=

m]. On doit montrer que si / [= [

x :=

m] alors / [= (A B)[

x :=

m]. Par dnition
de la satisfaction pour limplication / [= (A B)[

x :=

m] signie que si / [= A[

x :=

m]
alors / [= B[

x :=

m] do le rsultat.
limination de limplication Cette rgle tant la dernire applique, par hypothse dinduc-
tion on a pour tout environnement convenable, si / [= [

x :=

m] alors / [= (A
B)[

x :=

m], et que si / [= [

x :=

m] alors / [= A[

x :=

m]. On en dduit que si
/ [= , [

x :=

m], alors / [= (A B)[

x :=

m], et / [= A[

x :=

m], et donc par
dnition de la satisfaction pour limplication, / [= B[

x :=

m], ce qui est le rsultat
cherch.
limination de labsurde Par hypothse dinduction / [= , mais ceci nest pas possible par
dnition de la satisfaction. On en dduit donc nimporte quoi, par exemple que / [=
A[

x :=

m].
Raisonnement par labsurde Par hypothse dinduction on a pour tout environnement conve-
nable, si / [= , A[

x :=

m] alors / [= [

x :=

m]. Mais / [= est exclu par
dnition de la satisfaction, donc / ,[= , A[

x :=

m]. Cela a pour consquence que si
/ [= [

x :=

m] alors / ,[= A[

x :=

m], cest dire par dnition de la satisfaction de la
ngation, / [= A[

x :=

m], ce qui est le rsultat cherch.
Introduction du quanticateur universel On doit montrer que pour tout environnement conve-
nable pour et x A, soit [

x :=

m], si / [= [

x :=

m] alors / [= x A[

x :=

m]. Soit n
un lment quelconque de /. Lenvironnement [

x :=

m, y := n] convient pour et A[y/x].
Du fait que y napparait pas libre dans , / [= [

x :=

m] signie / [= [

x :=

m, y := n].
Par hypothse dinduction on en dduit / [= A[y/x][

x :=

m, y := n], ceci pour tout l-
ment n de /ce qui par dnition de la satisfaction pour la quantication universelle, signie
que / [= x A[

x :=

m] ce qui est le rsultat cherch.
limination du quanticateur universel tant donn un environnement convenable pour
et A[t/y], soit [

x :=

m], on doit montrer que si / [= [

x :=

m] alors / [= A[t/y][

x :=

m]. Si [

x :=

m] est un environnement convenable pour A[t/y], cest un environnement
convenable pour y A. En eet, toute variable qui apparait libre dans A et qui est distincte de
y apparait libre dans A[t/y]. On a donc par dnition de la satisfaction pour le quanticateur
universel, / [= A[

x :=

m, y := n], ce pour nimporte quel lment de n de /, en particulier
n = t
M
[

x :=

m]. On en dduit par une induction vidente sur la dnition des formules
que / [= A[t/y][

x :=

m].
Rexivit de lgalit Immdiat par dnition de la satisfaction dans le cas de lgalit.
limination de lgalit tant donn un environnement convenable pour , et A[t

/y], on
doit montrer que si / [= , [

x :=

m], alors / [= A[t

/y][

x :=

m]. Compltons [

x :=

m]
en [

x :=

m,

z =

n ], o les z
i
sont dventuelles variables qui apparaissent dans t mais pas
dans , et A[t

/x]. On sait par hypothse dinduction que si / [= , donc en particulier


si / [= , alors / [= A[t/y][

x :=

m,

z =

n ] et / [= t = t

x :=

m,

z =

n ]. On en
dduit (formellement il faudrait le montrer par induction sur la dnition de la formule A)
en utilisant la dnition de la satisfaction pour lgalit que / [= A[t

/y][

x :=

m,

z =

n ],
et donc comme les variables z
i
napparaissent pas dans A[t

/y], / [= A[t

/y][

x :=

m]
Les rgles pour les connecteurs et quanticateur restant se traitent de faon analogue et sont
laisses au lecteur.
63
On saperoit que dans chacun des cas traits, on a essentiellement utilis dans le meta-langage
. . .la rgle de dduction dont on montre la validit. Les seules dicults de la preuve sont bien
dnonciation. Ce nest pas le cas de la rciproque de la proprit dadquation le thorme de
compltude que nous verrons ultrieurement.
En considrant le cas particulier de la proposition dadquation pour une thorie vide on
obtient :
Corollaire 9.6 Soit F est une formule close ; Si F alors F est universellement valide.
On dira quune thorie est T contradictoire quand on peut driver
T
. Une consquence
immdiate de la proposition dadquation est que :
Corollaire 9.7 Si une thorie T est contradictoire, c.a.d.
T
, alors elle est incohrente, c.a.d.
quelle na pas de modle.
9.3 noncs du thorme de compltude, compacit.
On a vu que la dduction smantique contenait la dduction syntaxique (proposition dadqua-
tion 9.5 page 62). Il nous reste dmontrer la rciproque, que lon appelle thorme de compltude.
Donnons en un nonc prcis :
Thorme 9.8 (compltude) Pour toute thorie T, toute formule close C dans le langage L,
Si [[
T
C alors
T
C .
On rappelle que [[
T
C signie que pour toute L-structure /, si / [= T, alors / [= C. On nonce
souvent ce rsultat dans le cas particulier o C est labsurde . On rappelle quune thorie T telle
que T est dite contradictoire, et quune thorie T qui possde un modle est dite satisfaisable.
Par contrapose le rsultat de compltude donne :
Corollaire 9.9 (compltude) Toute thorie non contradictoire est satisfaisable, cest dire que
si T est une thorie dans le langage L :
Si ,
T
alors il existe une L-structure / telle que / [= T .
De ce cas particulier on drive facilement le cas gnral. En eet :
Lemme 9.10 Pour toute thorie T, toute formule close C dans le langage L,

T
C ssi
T{C}

Dmonstration. Supposons
T
C, alors
T{C}
C (proposition 9.1 page 62) or
T{C}
C
(axiome) donc
T{C}
(limination).
Rciproquement, supposons
T{C}
, alors C
T
(proposition 9.2 page 62) et donc
T
C
(raisonnement par labsurde).
On peut maintenant dduire le thorme de compltude 9.8 du corollaire 9.9. Procdons par
contrapose. Supposons que ,
T
C. Alors daprs le lemme 9.10, ,
T{C}
. Daprs le corol-
laire 9.9, il existe un modle / de T C, cest dire un modle de T qui nest pas modle de
C, et donc,[[
T
C.
Une consquence importante du thorme de compltude est le thorme de compacit, dont
nous verrons des applications plus tard.
Thorme 9.11 (compacit) Une thorie T est satisfaisable ssi toutes ses parties nies sont
satisfaisables.
64
Dmonstration. Si T est une thorie satisfaisable, il est vident que toutes ses parties le sont
par le mme modle, en particulier celles qui sont nies. Rciproquement supposons que T nest
pas satisfaisable. Alors daprs le thorme de compltude (cest la contrapose du corollaire 9.9)

T
. De la proposition de nitude 9.3 page 62 on dduit quil existe une partie nie T
0
de T telle
que
T0
. Daprs la proposition dadquation 9.5 page 62, T
0
nest pas satisfaisable.
9.4 Principe de la dmonstration.
Le principe de la dmonstration est le mme que dans le cas du calcul propositionnel, la
dirence prs quil faut maintenant construire un modle et non simplemen t une valuation. On
se restreindra aux langages de signature dnombrable : une restriction tout fait raisonnable,
en mathmatiques usuelles o les langages sont le plus souvent de signature nie
18
. On montre
alors que lensemble des formules du premier ordre sur un tel langage est dnombrable. en eet
lensemble des formules peut tre vu comme un sous-ensemble de lensemble des mots sur un
alphabet contenant la signature du langage, les parenthses, les symboles pour les connecteurs et
les quanticateurs, les noms de variables et lgalit. Les mots sur un alphabet sont des suites nies
dlments de cet alphabet. Comme en calcul propositionnel on utilise la proposition suivante.
proposition. Lensemble des suites nies dlments dun ensemble dnombrable est dnombrable.
On va dmontrer directement le corollaire 9.9, dont on a vu quil tait quivalent au thorme
de compltude 9.8. La dmarche est la mme quen calcul propositionnel :
1. tant donne une thorie non contradictoire T ltendre, en utilisant la dduction, en une
thorie T
s
:
T T
s
qui doit tre complte
19
, cest dire telle que
pour toute formule close C , C T
s
ou C T
s
.
qui doit tre non contradictoire cest dire telle que :
,
T
s .
et qui doit tre sature, cest dire telle que :
pour toute formule close C (
T
s C C T
s
) .
2. Construire un modle de la thorie T partir de la thorie T
s
.
On sait que les connecteurs et quanticateurs sexpriment avec , , , on montrera le
rsultat de compltude en restreignant les formules lusage de ces seuls connecteurs et quanti-
cateurs. On utilise quand mme la ngation, comme abrviation A
def
A . Remarquez que
les rgles de dduction de la ngation sont les rgles de limplication dans ce cas particulier (voir
gure 6 page 19).
9.5 Calcul des prdicats sans galit.
Le calcul des prdicats non galitaire est obtenu en supprimant lgalit du langage, et les
rgles de lgalit de la dduction. On va tout dabord montrer la compltude dans ce cadre, qui
est un peu plus simple que le calcul des prdicats galitaire.
Il sagit dtendre la mthode vue pour le calcul propositionnel au calcul des prdicats. Il y a une
dicult supplmentaire : il faut construire non plus une simple valuation, mais une structure qui
18
Les langages de signature innie non dnombrable sont utiles en thorie des modles, une branche de la logique
mathmatique.
19
en un sens plus fort que la notion de thorie complte introduite au paragraphe 8.4, et que nous adoptons
uniquement pour la preuve du thorme de compltude. Pour une thorie sature les deux notions de thorie
complte sont quivalentes.
65
soit modle de la thorie non contradictoire donne. En particulier il faut construire lensemble de
base de cette structure. Pour cela on va utiliser les termes du langage eux-mmes. On a videmment
besoin de faire correspondre un lment du modle chaque terme qui intervient dans la preuve,
et que le modle soit clos pour linterprtation des symboles de fonction du langage. Tous les
lments dun modle ne sont pas forcment dsigns par un terme clos (on peut dailleurs utiliser
un langage sans aucun termes clos !), et dans une preuve on se sert naturellement de variables, donc
de termes non clos. Il faut donc utiliser des termes avec variables. Deux des rgles de la dduction
demandent vraiment dintroduire de nouvelles variables : lintroduction du , et llimination du
.
Bien que la dmonstration ne soit pas faite pour le , voyons dabord cette rgle. Dans une
preuve mathmatique courante elle correspond la locution on sait que x A, posons x
0
tel que
A. On dsigne ainsi dans le modle auquel on fait implicitement rfrence un lment interprtant
le x en question appelons-le c que lon appelle tmoin de la vrit de x A, cest dire que
si x A est vraie dans le modle, c dsigne un lment tel que A[c/x] est vraie. Remarquons que
la rgle impose que la variable x soit nouvelle : quelle napparaisse pas libre dans la relation de
dduction en cours (ce que lon a dmontr, les hypothses courantes, et ce que lon cherche
dmontrer), ce qui signie que x dsigne bien un nouvel lment du modle, un lment auquel
il na pas encore t fait rfrence.
Pour lintroduction du , on est dans une situation analogue, mme si lintuition est un peu
moins immdiate. En eet il sagit dune rgle dintroduction elle correspond la locution pour
montrer x A, montrons A pour x quelconque alors que la rgle de traite ci-dessus est une
rgle dlimination. Cest cette fois le mot quelconque qui fait apparatre que x est nouvelle.
Comme x A est cette fois ci une formule que lon cherche dmontrer (introduction), on va
ajouter au modle que lon cherche construire un lment interprtant x appelons le c qui
sera un tmoin de la fausset de x A, cest dire que si x A est fausse dans le modle, c dsigne
un lment tel que A[c/x] est fausse.
Avant dentrer dans le dtail de la construction du modle, voyons un premier lemme syntaxique
qui justie ce genre de manipulation :
Lemme 9.12 Soit T une thorie du langage L, et
T
F une relation de dduction dans ce
mme langage. Soit c une constante qui napparat pas dans L. Alors, pour toute variable x :

T
F ssi [c/x]
T
F[c/x]
Dmonstration. Supposons
T
F drivable, et montrons [c/x]
T
F[c/x] par induction sur la
drivation de la relation de dduction. Cest vident pour les rgles qui ne mettent pas de variable
en jeu. Pour les rgles qui mettent en jeu une variable : introduction du limination du , si
cette variable nest pas x cest vident. Si cest x, la condition dutilisation de ces rgles impose
que x napparaisse pas dans la relation dduite. La substitution [c/x] est donc lidentit do le
rsultat.
Supposons [c/x]
T
F[c/x] drivable, comme c napparait pas dans L, aucun axiome de T ne
met c en jeu, et donc on peut substituer c dans la drivation par nimporte quel terme, en particulier
par nimporte quelle variable x, en renommant ventuellement les variables qui apparaissent en
prmisse des rgles dintroduction du et dlimination du .
Remarquons que la drivation de [c/x]
T
F[c/x] peut tout aussi bien passer pour une
drivation dans le langage L o on ajout le nom de variable c.
9.5.1 Une thorie complte et sature T
s
.
On se donne une numration des formules du langage L (y compris celles qui ne sont pas
closes) soit (F
i
)
iN
.
On suppose T non contradictoire : ,
T
. On dnit par rcurrence sur n un multi-ensemble

n
dni de la faon suivante.
i.
0
= ;
66
ii. Si
n

T
F
n
alors
n+1
=
n
, F
n
.
Si
n
,
T
F
n
et si F
n
nest pas quantie universellement alors
n+1
=
n
, F
n
.
Si
n
,
T
F
n
et si F
n
est de la forme xG, alors
n+1
=
n
, G[x
k
/x], o x
k
est la variable
dindice le plus petit possible qui napparait pas dans
n
(cest toujours possible car il y a
une innit de variables).
Quand on prend la runion ensembliste des
n
on obtient un ensemble de formules qui contient
ncessairement T, et dont on pourrait montrer quil est en un certain sens complet et satur,
mais il ne sagit pas dune thorie une thorie est par dnition un ensemble de formules closes,
ce qui est bien naturel et cela poserait des problmes pour dnir le modle.
On va donc on va tendre le langage avec une innit dnombrables de constantes H = c
i
/ i
N dites constantes de Henkin ou encore tmoins de Henkin, qui correspondent aux variables. Si
F est une formule du langage L, on lui associe la formule close F
c
du langage L H obtenue en
remplaant pour chaque entier i chaque occurrence de variable x
i
par la constante c
i
. De mme
si F est une formule close du langage L H, on lui associe la formule F
x
du langage L obtenue
en remplaant pour chaque entier i chaque occurrence de constante c
i
par la variable x
i
. Comme
(F
i
)
iN
est une numration des formules du langage L, (F
c
)
iN
est une numration des formules
closes du langage L H. On tend la notation
c
aux multi-ensembles .
On peut maintenant dnir les thories suivantes, du langage L H :
T
n
= T F
c
/ F apparat dans
n
T
s
=
_
iN
T
n
On a alors :
Lemme 9.13 Pour F une formule du langage L, pour n nimporte quel entier :

Tn
F
c
ssi
n

T
F
Dmonstration. On commence par montrer par rcurrence sur n que :

Tn
F
c
ssi
c
n

T
F
c
en utilisant la proposition 9.2 page 62.
On dmontre ensuite le rsultat par rcurrence sur le nombre de variables apparaissant dans

n
et F en utilisant le lemme 9.12.
On montre maintenant que certaines des constantes de Henkin sont des tmoins pour les
formules universelles.
Lemme 9.14 Soit xG une formule universelle du langage L. Si (xG)
c
, T
s
, il existe une
constante de Henkin c H telle que G[c/x]
c
T
s
.
Dmonstration. Soit n lindice de cette formule : xG = F
n
. Comme F
c
n
, T
s
, cela signie que

n
,
T
xG, donc quil existe une variable x
k
c telle que G[x
k
/x]
n+1
(dnition de
n+1
),
donc G[x
k
/x]
c
T
n+1
, or G[x
k
/x]
c
= G[c
k
/x]
c
.
Lemme 9.15 La thorie T
s
(dans le langage L H) est complte et contient T.
Dmonstration. La thorie T
s
contient T car pour toute formule F de T,
T
F, donc F apparat
dans un
n
, et comme F est close F
c
= F.
Montrons quelle est complte. Toutes les formules closes du langage LH scrivent F
c
n
. Pour
tout entier n tel que F
n
nest pas universelle, par construction, F
c
n
T
s
ou F
c
n
T
s
.
Pour tout entier n telle que F
n
est universelle, soit F
n
= xG, on a F
c
n
T
s
ou G[c
k
/x]
c
T
s
(le fait que x
k
napparait pas dans
n
ne sert pas pour ce lemme).
Supposons que G[c
k
/x]
c
T
s
, cest dire
n
,
T
F
n
. On a par construction de
n+1
,

n+1

T
G[x
k
/x] (axiome). Par ailleurs xG
T
G[x
k
/x] (limination). De ces deux noncs on
dduit
n+1
, xG
T
(limination), donc
n+1

T
xG (introduction). Appelons p lindice de
F
n
= xG = F
p
.
67
Si p > n,
p
contient
n+1
, donc
p

T
F
p
et donc F
c
n
T
s
.
Si p < n, Montrons que lon a galement
p

T
F
p
. Sinon, comme n p+1,
n
F
p
, cest
dire
n

T
F
n
. On en dduit (axiome, puis limination),
n
, F
n

T
et donc
n
F
n
(raisonnement par labsurde). Ceci contredit lhypothse G[c
k
/x]
c
T
s
. On a donc bien

p

T
F
p
et donc nouveau F
c
n
T
s
.
On a donc bien montr que pour tout entier n F
c
n
T
s
ou F
c
n
T
s
.
Lemme 9.16 La thorie T
s
nest pas contradictoire : ,
T
s .
Dmonstration. En vertu de la nitude 9.3, si T
s
tait contradictoire, lune de ses parties nies le
serait. Toute partie nie de T
s
est inclue dans T
n
pour un entier n susamment grand. Il sut
donc de montrer que pour tout entier n, T
n
nest pas contradictoire, ce que lon fait par rcurrence
sur n.
n = 0. T
0
= T nest pas contradictoire par hypothse.
n n + 1. On procde par contrapose. Supposons que T
n+1
est contradictoire, cest dire
Tn+1
, et montrons qualors T
n
lest. De
Tn+1
on dduit
n+1

T
(lemme 9.13). Par
construction de
n+1
, trois cas se prsentent :

n+1
=
n
, F
n
. Cela signie que
n

T
F
n
. Or T
n+1
contradictoire signie que
Tn{F
c
n
}
,
donc F
c
n

Tn
(proposition 9.2), donc
n
, F
n

T
(lemme 9.13) donc
n

T
F
n
(introduction). Or
n

T
F
n
, donc
n

T
(limination), cest dire T
n
contradictoire
(lemme 9.13).

n+1
=
n
, F
n
. Cela signie que
n
,
T
F
n
. Or T
n+1
contradictoire signie que
Tn{F
c
n
}
, donc
n
, F
n

T
(lemme 9.13), donc
n

T
F
n
(raisonnement par labsurde), ce
qui contredit lhypothse. Ce cas ne peut se produire.

n+1
=
n
, G[x
k
/x], avec F
n
= x Get x
k
napparait pas dans
n
. Cela signie que
n
,
T
F
n
. Or T
n+1
contradictoire signie que
Tn{G[c
k
/x]
c
}
, donc daprs le lemme 9.13

n
, G[x
k
/x]
T
, donc
n
,
T
G[x
k
/x] (raisonnement par labsurde), donc
n

T
xG (introduction du , on a bien x
k
qui napparait pas dans
n
par construction),
cest dire
n

T
F
n
.
Lemme 9.17 La thorie T
s
est sature.
Dmonstration. Supposons
T
s C. Comme T
s
est complte (lemme 9.15) C T
s
ou C T
s
. Si
C T
s
,
T
s C, et donc
T
s (limination), or T
s
nest pas contradictoire (lemme 9.16). On
a donc bien C T
s
.
9.5.2 Construction dun modle de T.
Lensemble de base M de la structure / est lensemble des termes clos du langage L H (le
langage de dpart tendu avec les constantes de Henkin). Les symboles de constante du langage
L H sont interprtes par eux-mmes. Les ventuels symboles de fonction du langage L ont
leur interprtation canonique (f n-aire est interprte par la fonction qui t
1
, . . . , t
n
associe
ft
1
, . . . , t
n
). Les formules atomiques closes sont vraies si et seulement si elles sont dans T
s
:
/ [= ssi T
s
.
On montre que ceci stend toutes les formules closes de L H.
Lemme 9.18 Pour toute formule F du langage L :
/ [= F
c
ssi F
c
T
s
.
68
Dmonstration. La preuve se fait pas une induction sur la complexit des formules un peu ren-
force : pour une formule universelle x A, on a besoin de lhypothse dinduction sur toutes les
formules A[t/x], t tant un terme quelconque. Ce principe dinduction est une simple consquence
du principe de rcurrence sur la complexit des formules (hauteur de son arbre de drivation).
Dans le cas des formules atomiques et de limplication, la preuve est essentiellement la mme
quen calcul propositionnel.
Atomes. Cest la dnition du modle.
Absurde. On a / ,[= par dnition de la satisfaction et , T
s
daprs le lemme 9.16.
Implication. Supposons le rsultat pour A et B, et montrons le pour A B. Distinguons deux
cas.
Supposons (A B)
c
T
s
. Si A
c
, T
s
, on a / ,[= A
c
par hypothse dinduction et donc
/ [= (A B)
c
. Si A
c
T
s
, on a
T
s A
c
B
c
et
T
s A
c
. On en dduit (limination)

T
s B
c
. Par saturation B
c
T
s
, et donc / [= B
c
, donc / [= (A B)
c
.
Supposons (A B)
c
, T
s
. Les deux cas A
c
, T
s
et B T
s
sont exclus car ils contredisent
lhypothse (A B) , T
s
, comme le montre ce qui suit.
Supposons A
c
, T
s
. Comme la thorie est complte on a que A
c
T
s
. On en dduit
(axiome de la thorie et limination) A
c

T
s . On a donc A
c

T
s B
c
(limination de
). On en dduit
T
s A
c
B
c
(introduction), et donc par saturation (lemme 5.12)
(A B)
c
T
s
.
Supposons B
c
T
s
. On a donc
T
s B
c
et donc A
c

T
s B
c
(aaiblissement). On en dduit

T
s A
c
B
c
(introduction), et donc par saturation (A B)
c
T
s
.
Comme A
c
T
s
et B
c
, T
s
, on a par hypothse dinduction / [= A et / ,[= B et donc
/ ,[= A B.
Quantication universelle. Supposons le rsultat pour toutes les formules A[t/x] et montrons
le pour xA. Distinguons deux cas.
Supposons (xA)
c
T
s
. Par limination
T
s A[t/x]
c
pour tout terme t, donc par saturation,
A[t/x]
c
T
s
pour tout terme t, or chaque lment du modle / est linterprtation dun
terme clos de L H, donc / [= xA
c
.
Supposons (xA)
c
, T
s
. On sait (lemme 9.14) quil existe un tmoin de Henkin c telle que
A[c/x]
c
T
s
. Par hypothse dinduction / ,[= A[c/x]
c
, par dnition de la satisfaction
/ ,[= xA
c
.
Corollaire 9.19 Il existe un modle / tel que pour toute formule F de T / [= F.
Dmonstration. Comme T
s
T, cest une consquence immdiate du lemme prcdent : il sut
doublier dans la L H-structure / les interprtations des constantes de Henkin pour obtenir
une L-structure satisfaisant toutes les formules de T
s
o les constantes de Henkin napparaissent
pas, en particulier les formules de T.
On a donc bien dmontr le thorme de compltude sous la forme nonce au corollaire 9.9.
9.6 Calcul des prdicats avec galit.
Remarquons tout dabord que lon ne dduit pas directement le thorme de compltude du
calcul des prdicats galitaire de la compltude du calcul des prdicat sans galit, en la particu-
larisant la thorie de lgalit (et aux thories contenant celle-ci). En eet, mme sil est tout
fait possible de prsenter de faon axiomatique la thorie de lgalit, la smantique elle est plus
prcise : dans un modle galitaire on doit interprter lgalit par lidentit, et non par une simple
relation satisfaisant les axiomes de lgalit. Le thorme de compltude en calcul des prdicats
galitaire pour une thorie T est donc en un sens plus fort que le thorme de compltude en
calcul des prdicats pour la thorie T plus la thorie de lgalit (puisque lon a alors a priori
dautre modles de la thorie de lgalit que ceux o celle-ci est interprte par lidentit).
Cependant, la preuve est essentiellement la mme que pour le calcul des prdicats sans galit.
On va se contenter de montrer comment la modier : il sagit de construire un contre-modle pour
une thorie galitaire non contradictoire en interprtant lgalit par lidentit.
69
Tout dabord, on tend de la mme faon le langage par des constantes de Henkin, et lon
construit de la mme faon une thorie T
s
contenant T (voir paragraphe 9.5.1), avec pour seule
dirence que lon utilise les rgles de lgalit pour la dduction (dans la dnition des
n
).
On montre de la mme faon que si T est cohrente, T
s
est cohrente, non contradictoire et
sature (cette fois, y compris pour les rgles de lgalit). Il ny a rien modier aux preuves des
lemmes du paragraphe 9.5.1.
Seule la construction de lensemble de base du modle / dire (voir paragraphe 9.5.2). On
considre toujours lensemble des termes clos du langage LH, mais on le quotiente par la relation
dnie par les galits syntaxiques entre les termes dans T
s
:
t t

ssi t = t

T
s
.
Cette relation est une relation dquivalence : elle est rexive par dnition, symtrique et
transitive daprs le lemme 2.1 page 19.
Elle est compatible avec les ventuels symboles de fonction du langage. Pour f un symbole
de fonction n-aire :
si t
1
t

1
, . . . , t
n
t

n
alors ft
1
. . . t
n
ft

1
. . . t

n
.
En eet il sut dappliquer n fois la rgle de lgalit lgalit ft
1
. . . t
n
= ft
1
. . . t
n
obtenue
par rexivit.
Cette relation est compatible les ventuels symboles de prdicat du langage. Pour P un
symbole de prdicat n-aire
si t
1
t

1
, . . . , t
n
t

n
alors (Pt
1
. . . t
n
T
s
ssi Pt

1
. . . t

n
T
s
)
En eet il sut de montrer Pt
1
. . . t
n
T
s
Pt

1
. . . t

n
T
s
qui se dmontre en appliquant
n fois la rgle de lgalit au prdicat Pt
1
. . . t
n
.
On peut alors dnir le modle / comme prcdemment. On dmontre alors de la mme faon
le lemme 9.18.
9.7 Thorme de Lowenheim-Skolem.
On peut remarquer que la construction prcdente fournit pour une thorie satisfaisable dun
langage de signature nie ou dnombrable, un modle dont lensemble de base est ni ou d-
nombrable, puisquil est obtenu comme quotient sur un ensemble de termes clos dun langage
dnombrable (le langage dorigine, complt par une innit dnombrable de constantes de Hen-
kin). On en dduit une forme faible du thorme de Lowenheim-Skolem :
Thorme 9.20 Toute thorie T satisfaisable dun langage de signature nie ou dnombrable
possde un modle densemble de base dnombrable.
Dmonstration. Reprendre la construction du modle eectue pour une thorie satisfaisable, dans
la preuve du thorme de compltude.
Cet nonc est parfois connu sous le nom de paradoxe de Skolem, bien que ce ne soit pas
rellement un paradoxe. En eet, il peut tre surprenant de penser que la thorie des ensembles,
dans laquelle on peut construire lensemble des rels R, a un modle dnombrable. Le paradoxe
disparait si lon analyse les choses de prs.
Tout dabord la thorie des ensembles considre est une thorie du premier ordre de lappar-
tenance. Dans un modle de la thorie des ensembles, un ensemble est donc reprsent par un
point du modle. Les axiomes sur lappartenance assurent que ce point reprsente un ensemble au
sens intuitif (collection de points). Mais il nest pas possible pour des questions de cardinalit que
chaque collection de points soit reprsente par un point du modle.
La notion de dnombrable dans un modle dnombrable (au sens intuitif) de la thorie des
ensembles nest pas celle du meta-langage. Cest dire que dans le modle tudi on ne peut
trouver de bection (un point du modle) entre les ensembles N et R.
70
Index
F[t/x], 46
[

x :=

m], 49
[x
1
:= m
1
, . . . , x
n
:= m
p
], 49
/ [= F, 50
/ [= F[x
1
:= m
1
, . . . , x
p
:= m
p
], 49
/ ,[= F[x
1
:= m
1
, . . . , x
p
:= m
p
], 49
t
M
, 49
[[, 55
quisatisfaisables, 58
quivalence smantique, 55
NP, 35
adquation, 30, 62
arit, 6
axiomatique de Peano, 21
axiomatiser, 51, 52
capture de variable, 16
champs dun signe lieur, 8
close, 7
compacit, 39, 64
complet (systme de connecteurs), 35
compltude, 38, 64
complexit dune drivation, 25
conclusion courante, 13
connecteur, 45
connecteurs, 6
consquence smantique, 55
constante de Henkin, 67
contexte, 13
contradictoire, 64
dduction, 16
drivation, arbre de drivation, 24
dnition inductive, 22
drivable, 19
limination des quanticateurs, 59
ensemble de base dune structure, 11, 48
environnement, 48
niment axiomatisable, 53
nitude, 39, 62
fonctionnellement complet, 35
forme de Skolem, 58
forme normale conjonctive, 33
forme normale disjonctive, 33
forme prnexe, 57
formule, 45
formule atomique, 44
formule close, 46
formule propositionnelle, 45
formule universellement valide, 50
formules atomiques, 6
homomorphisme, 53
incohrente, 52
inconsistente, 52
induction, 22
inxe, 6
isomorphisme, 54
lieur, 7
littral, 33
logique dordre suprieur, 9
logique du premier ordre, 9
meta-langage, 12
modle dune thorie, 52
modle, 50
monomorphisme, 54
multi-ensemble, 17
muticateur, 7
occurrence, 8, 45
occurrence indicative, 8
occurrence lie, 46
occurrence libre, 45
ordres denses sans extrmits, 59
paradoxe de Skolem, 70
plongement, 54
porte dun signe lieur, 8
postxe, 6
prxe, 6
quanticateur, 45
quantication borne, 7
rgle dlimination, 17
rgle dintroduction, 17
rgles dlimination, 14
rgles dintroduction, 14
relation de dduction, 13
satisfaction, 49
satisfaction (propositionnel), 28
satisfaisable (formule propositionnelle), 28
satisfaisable (formule), 51
satisfaisable (thorie propositionnelle), 28
satisfaisable (thorie), 52
smantique, 27, 48
squent, 13
signature, 10, 43
71
structure, 11, 48
substitution logique, 46
substitution simple, 46
substitution simultane, 46
syntaxe, 43
tmoin de Henkin, 67
table de vrit dune formule, 28
table de vrit, 27
tautologie, 28
terme, 43
thorie, 10, 52
thorie complte, 61
thorme, 19
valuation, 27
variable libre, 7
variable lie, 7
variable muette, 7
variable parlante, 7
vrai dans une structure, 49
72
Table des matires
1 Une prsentation informelle du langage de la logique mathmatique. 4
1.1 Les objets, les noncs, les preuves. . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Syntaxe et smantique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Syntaxe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.1 Les termes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.2 Les formules atomiques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.3 Les connecteurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.4 Les quanticateurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3.5 Signes lieurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3.6 Logique du premier ordre et logique dordre suprieur. . . . . . . . . . . . . 8
1.3.7 Les notations purement logique. . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3.8 Signature et thorie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4 Preuves et vrit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.1 Signature et structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.2 Interprtation dans une structure. . . . . . . . . . . . . . . . . . . . . . . . 12
1.5 Langage et meta-langage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2 Formalisation de la dduction. 13
2.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.1 Structure arborescente des preuves. . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.2 Contexte et conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.3 Un exemple de preuve. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.4 Rgles dintroduction, rgles dlimination. . . . . . . . . . . . . . . . . . . 14
2.2 La substitution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3 Les rgles de preuve. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.4 La dduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.5 Quelques exemples de drivation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3 Dnitions par induction. 21
3.1 Lexemple des entiers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2 Suites nies dentiers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3 Ensembles nis dentiers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.4 Arbres de drivations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5 Complexit dune drivation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4 Calcul propositionnel. 26
4.1 introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.2 Syntaxe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.3 Smantique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.4 Exemples de formalisation en calcul propositionnel. . . . . . . . . . . . . . . . . . . 29
4.4.1 Calcul propositionnel sur une structure. . . . . . . . . . . . . . . . . . . . . 29
4.5 Dduction en calcul propositionnel. . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.6 Quelques quivalences logiques et tautologies usuelles. . . . . . . . . . . . . . . . . 31
4.6.1 Ngation des connecteurs usuels. . . . . . . . . . . . . . . . . . . . . . . . . 31
4.6.2 Expression des connecteurs avec , et . . . . . . . . . . . . . . . . . . . 31
4.6.3 Proprits de la disjonction et de la conjonction. . . . . . . . . . . . . . . . 32
4.6.4 Proprits de limplication et de lquivalence. . . . . . . . . . . . . . . . . . 32
4.6.5 Encore quelques quivalences. . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.7 Formes normales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.7.1 Dnitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.7.2 Table de vrit et formes normales. . . . . . . . . . . . . . . . . . . . . . . . 33
4.7.3 Systmes complets de connecteurs. . . . . . . . . . . . . . . . . . . . . . . . 35
4.7.4 Mise sous forme normale. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
73
4.8 Quelques mthodes pour tester les tautologies, la satisfaisabilit etc. . . . . . . . . 35
4.8.1 Un peu de complexit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.8.2 La dduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.8.3 Satisfaction, Rfutation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.8.4 Tables de vrit rduites. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5 Compltude du calcul propositionnel. 38
5.1 Quelques prliminaires sur la relation de dduction. . . . . . . . . . . . . . . . . . . 38
5.2 noncs du thorme de compltude. . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.3 Le thorme de compacit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.4 La preuve du thorme de compltude. . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.4.1 Quelques prliminaires. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.4.2 Plan de la preuve. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.4.3 Une thorie complte et sature T
s
. . . . . . . . . . . . . . . . . . . . . . . 41
5.4.4 Une valuation validant T. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6 Syntaxe des langages du premier ordre. 43
6.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.2 Signature. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.3 Les termes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.3.1 Termes de larithmtique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.3.2 Cas gnral. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
6.3.3 Quelques dnitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
6.4 Formules atomiques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
6.4.1 Larithmtique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
6.4.2 Cas gnral. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
6.5 Formules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
6.5.1 Dnition des formules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
6.5.2 Occurrences libres ou lies dune variable, substitution. . . . . . . . . . . . . 45
7 Smantique des langages du premier ordre. 48
7.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7.2 Signature et structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7.3 Environnements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7.4 Interprtation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.4.1 Interprtation des termes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.4.2 Interprtation des formules : notations . . . . . . . . . . . . . . . . . . . . . 49
7.4.3 Interprtation des formules atomiques. . . . . . . . . . . . . . . . . . . . . . 49
7.4.4 Interprtation des formules. . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.4.5 Remarques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.5 Satisfaisabilit, axiomatisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.5.1 Formules satisfaisables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.5.2 Quelques notations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
7.5.3 Thories. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
7.6 Morphismes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
7.7 Consquence smantique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
8 Calcul des prdicats. 56
8.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
8.2 Quelques quivalences logiques et formules universellement valides. . . . . . . . . . 56
8.3 Formes prnexes, formes de Skolem . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
8.4 Un exemple dlimination des quanticateurs. . . . . . . . . . . . . . . . . . . . . . 59
74
9 La relation de dduction du calcul des prdicats : adquation et compltude. 62
9.1 Quelques prliminaires sur la relation de dduction. . . . . . . . . . . . . . . . . . . 62
9.2 La proprit dadquation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
9.3 noncs du thorme de compltude, compacit. . . . . . . . . . . . . . . . . . . . 64
9.4 Principe de la dmonstration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
9.5 Calcul des prdicats sans galit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
9.5.1 Une thorie complte et sature T
s
. . . . . . . . . . . . . . . . . . . . . . . 66
9.5.2 Construction dun modle de T. . . . . . . . . . . . . . . . . . . . . . . . . 68
9.6 Calcul des prdicats avec galit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
9.7 Thorme de Lowenheim-Skolem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Index 71
75

Vous aimerez peut-être aussi