2 Syntaxe de la logique des pr´
edicats (sans symbole fonc-
tionnel)
Dans un premier temps, nous allons d´
ecrire un sous ensemble simplifi´
e de la lo-
gique des pr´
edicats, que nous compl`
eterons par la suite.
On d´
efinit une logique du premier ordre sans symboles fonctionnel par la donn´
ee :
– d’un ensemble de de symboles de pr´
edicats P ; chaque pr´
edicat a une arit´
e, qui
est son nombre d’arguments.
– d’un ensemble de constantes C ;
– d’un ensemble de variables X.
On d´
efinit les formules du premier ordre pour P et C inductivement :
Base : si p/n ∈Palors p(a1, ..., an)est une formule, pour tout aidans C∪X
(c’est aussi un atome). exemple : si X est une variable, et aragorn une constante, et que
prog est un pr´
edicat d’arit´
e 1, alors prog(X)et prog(aragorn) sont des formules
(et des atomes).
Cas particulier : les pr´
edicats d’arit´
e 0 correspondent aux propositions.
induction : Si A et B sont des formules et X une variable, alors
–¬Aest une formule ;
–(A∧B)est une formule ;
–(A∨B)est une formule ;
–(A→B)est une formule (on peut ´
eventuellement ajouter ←et ↔) ;
–∀XA est une formule ;
–∃XA est une formule ;
Les parenth`
eses servent `
a´
eviter les ambigu¨
ıt´
es.
fermeture : les seules formules du premier ordre sur P et C sans symboles fonc-
tionnels sont celles obtenues par induction.
Grammaire formelle (en utilisant les DCG) :
/*grammaire de la logique des pr´
edicats en DCG */
terme --> foncteur,"(",termes, ")".
terme --> constante.
terme --> variable.
termes --> terme.
termes --> terme, ",", termes.
atome --> predicat, "(", termes, ")".
formule --> atome.
formule --> "non", esp, formule.
formule --> "(", formule, esp, "ou", esp, formule, ")".
formule --> "(", formule, esp, "et", esp, formule, ")".
formule --> "(", formule, esp, "->", esp, formule, ")".
formule --> "pourtout", esp, variable, esp, formule.
2