En logique mathématique, la skolémisation d'une formule du calcul des prédicats est une transformation de cette formule, qui, dans le cas d'une forme prénexe, consiste à éliminer toutes les occurrences de quantificateur existentiel en utilisant de nouveaux symboles de fonction (un par quantification existentielle), tout en conservant la satisfaisabilité de la formule.

La terminologie fait référence au logicien Thoralf Skolem et les fonctions introduites, que l'on peut voir comme des fonctions de choix, sont appelées fonctions de Skolem[1].

Définition modifier

Intuitivement, si on a une formule du type   on peut se dire que pour chaque   il existe (au moins) un   tel que   est vrai, on peut donc supposer qu'il y a une fonction   qui nous fournit un « bon »   pour chaque  . Ceci nous permet de réécrire la formule comme  .

Il est plus simple de décrire la skolémisation pour une formule sous forme prénexe, c'est-à-dire avec tous les quantificateurs au début (ce qui est toujours possible, en appliquant les équivalences connues). Dans ce cas, chaque occurrence d'une variable   quantifiée existentiellement est remplacée par un terme    sont les variables quantifiées universellement dont les quantificateurs apparaissent avant celui de  . S'il n'y a aucun quantificateur universel avant  ,   sera une fonction 0-aire, c'est-à-dire une constante. Pour chaque variable à skolémiser il faut choisir un nouveau nom de fonction qui n’apparaît pas déjà dans la formule.

La formule obtenue, qui est une formule prénexe n'ayant que des quantificateurs universels en tête, est parfois dite sous forme normale de Skolem. Il n'y a pas unicité (même au nom des symboles de fonctions près, et à équivalence près de la partie propositionnelle) de la forme normale de Skolem d'une formule donnée.

Exemples modifier

  1. La formule   n'est pas sous forme normale de Skolem car elle contient un quantificateur existentiel. La skolémisation remplace   par  , où   est une nouvelle fonction et supprime le quantificateur  . La formule résultante est  .
  2. La formule   peut être skolémisée en  
  3. La formule   peut être skolémisée en   (  dépend uniquement de  ,   dépend de   et de  )
  4. La formule   deviendra  , où   est une constante.

Propriétés modifier

La version skolémisée d'une formule ne lui est en général pas équivalente (le langage étant étendu). Néanmoins :

– tout modèle (ou même bien sûr sa restriction au langage initial) de la formule skolémisée est modèle de la formule initiale ;
– tout modèle de la formule initiale peut en présence de l'Axiome du Choix être étendu en un modèle de la formule skolémisée, obtenu en conservant les interprétations des symboles de la signature initiale, et en interprétant correctement les nouveaux symboles de fonction introduits par la skolemisation.

Une formule close et sa forme de Skolem sont donc dans ZFC ce que l'on appelle équisatisfaisables, ou équicohérentes : l'une possède un modèle si, et seulement si l'autre en possède un.

Utilisation modifier

En raisonnement automatique et en programmation logique (p. ex. dans le langage Prolog), on utilise fréquemment le principe de résolution de Robinson ; or cette règle d'inférence ne s'applique que sur des formules dont les variables sont toutes quantifiées universellement (en fait sur des clauses) : il suffit donc d'appliquer la skolémisation avant de pouvoir appliquer la résolution.

Herbrandisation modifier

On appelle aussi herbrandisation, du nom du logicien français Jacques Herbrand, la transformation duale de la skolémisation, qui traduit tous les quantificateurs universels en fonctions. Cela revient à skolemiser la négation de la formule : la négation de la formule herbrandisée est équisatisfaisable avec la négation de la formule initiale. La forme de Herbrand d'une formule est donc universellement valide (ou, par complétude, démontrable) si et seulement si la formule initiale l'est. Pas plus que la forme de Skolem, et pour les mêmes raisons (le langage est enrichi au cours de la transformation), la forme de Herbrand d'une formule n'est en général équivalente à celle-ci.

Par exemple, la formule

 

devient, par herbrandisation,

 

La variable   est remplacée par une constante, c'est-à-dire une fonction 0-aire, car la quantification universelle   ne dépend d'aucune quantification existentielle. En revanche, la quantification  , à laquelle se résume  , dépend de la quantification existentielle   ; c'est pourquoi la variable   est traduite par une fonction  .

Annexes modifier

Articles connexes modifier

Bibliographie modifier

  • Th. Skolem, « Sur la logique mathématique », in Jean Largeault, Logique mathématique. Textes, Paris, Armand Collin, Épistémologie, 1972, p. 91-108.
  • (en) Dirk van Dalen (de), Logic and Structure, Third edition, ed. Springer-Verlag, Berlin Heidelberg, 1994. Chapitre « 3.4 Skolem Functions or How to Enrich Your Language », pp. 136-142 (de la 3e édition). (ISBN 3-540-57839-0) et (ISBN 0-387-57839-0).
  • Michel de Rougemont et Richard Lassaigne, Logique et fondements de l'informatique (logique du premier ordre, calculabilité et lambda calcul), Partie 3.3 : Formules prénexes. Formes de Skolem, Hermes Science Publications, 1997. (ISBN 2-86601-380-8)

Notes et références modifier

  1. D. van Dalen, opp.cit., p.136 : The idea of enriching the language by the introduction of extra function symbols, which take the role of choice functions, goes back to Skolem.