Style des formules

Les formules sont affichées en HTML
Cette page utilise des fonctions particulières d'affichage de formules (plus d'infos) , vous pouvez choisir entre un affichage mathml, un affichage html, et un affichage texte

Calcul des prédicats : les substitutions

Une substitution est le fait de remplacer une variable par un autre terme. Nous représenterons la substitution au sein de l'ensemble par une lettre grecque, et l'opérateur de substitution par le signe  / , mais nous pouvons aussi retrouver dans certains ouvrages le signe = dont la signification est identique.

Nous traduirons la notation  { X / Y }  par « X est remplacé par Y »1.

Contents Haut

Définition de la substitution

Une substitution est un ensemble de la forme σ  =   { X1 / t1, ..., Xn / tn }  tel que  

  •  ∀ i ∈  { 1, ..., n } Xi ∈ V
  •  ∀ i ∈  { 1, ..., n } ti ∈ T
  •  ∀ i, j ∈  { 1, ..., n } i ≠ j ⇒ Xi ≠ Xi
  •  ∀ i ∈  { 1, ..., n } Xi ≠ ti

Contents Haut

Domaine et co-domaine

Soit σ  =   { X1 / t1, ..., Xn / tn }  une substitution, nous avons
dom(σ)  =   { X1, ..., Xn }  et codom(σ)  =  var(t1, ..., tn)

Contents Haut

Exemples de substitutions

  •  { X / 1, Y / 2, Z / 3 }  substitue 1 à X (remplace X par la valeur 1), substitue 2 à Y, et 3 à Z.
  •  { X / 3, Y / f(Z) } 
  •  { X / Z, Y / f(Z) } 

Contents Haut

Exemples non-valides

  •  { X / X, Y / 1 }  n'est pas une substitution car on ne peut substituer une variable par elle-même.
  •  { X / 1, X / 2, Y / 3 }  n'est pas une substitution car on ne peut lier une variable à deux termes différents. Sinon, devons nous substituer 1 ou 2 à X ?

Contents Haut

Substitutions appliquées à des expressions

Nous pouvons aussi appliquer des substitutions sur des termes composés ou des expressions prédicatives. Si nous appliquons une substitution σ sur l'expressions prédicative E (dont nous noterons le résultat σE), nous devons remplacer, pour toute variable X que nous rencontrons dans E, la variable X par le terme t qui lui est associé dans E.

Substitution (σ) | Expression (E) | Résultat (σE) |
 { X / niklaus_wirth, Y / 1 }  | p(X, X, jean-raymond_abrial) | p(niklaus_wirth, niklaus_wirth, jean-raymond_abrial) |
 { X / oswald_spengler, Y / 1 }  | p(X, Z) | p(oswald_spengler, Z) |
 { X / niklaus_wirth, Y / f(Z) }  | p(g(Y), X, h(X), W) | p(g(f(Z)), niklaus_wirth, h(niklaus_wirth), W) |

Contents Haut

Composition

Nous obtenons la composition σθ de σ  =   { X1 / t1, ..., Xn / tn }  par θ  =   { Y1 / u1, ..., Ym / um }  à partir de { X1 / t1θ, ..., Xn / tnθ, Y1 / u1, ..., Ym / um }  en supprimant tous les Xi / tiθ tels que Xi = tiθ et tous les Yj / uj tels que Yj ∈ codom(σ)

Contents Haut

Cette page utilise des fonctions particulières d'affichage de formules (plus d'infos) , vous pouvez choisir entre un affichage mathml, un affichage html, et un affichage texte

English translation

You have asked to visit this site in English. For now, only the interface is translated, but not all the content yet.

If you want to help me in translations, your contribution is welcome. All you need to do is register on the site, and send me a message asking me to add you to the group of translators, which will give you the opportunity to translate the pages you want. A link at the bottom of each translated page indicates that you are the translator, and has a link to your profile.

Thank you in advance.

Document created the 10/07/2010, last modified the 28/10/2018
Source of the printed document:https://www.gaudry.be/en/calcul-predicats-substitution-rf-html.html

The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.

Notes
  1.  Notation : Dans certains ouvrages  { Y / X }  est traduit par « Y remplace X », mais nous n'utiliserons jamais cette notation dans les pages qui suivent car cette notation est inversée par rapport à celle que nous utilisons. Une fois qu'un choix de notation est pris, nous devons nous y tenir afin d'éviter toute confusion possible.

Contents Haut

References

  1. book Language of the document:fr IHDCB337 - Technique d'intelligence artificielle : JM Jacquet, Programmation déclarative (2009)
  2. book Language of the document:fr IHDCB337 - Technique d'intelligence artificielle : H Toussaint, Tp (2009)
  3. book Language of the document:fr Logique pour l'informatique : Serenella Cerrito, Introduction à la déduction automatique (October 2008)

These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.

Contents Haut