“doc” (Col. : Science Sup 17x24) — 2007/7/19 — 18:18 — page 44 — #54
i
i
i
i
i
i
i
i
44
2
• La programmation déclarative
Dans la mémoire
1
nil
1
2
3
"X"
x
Figure 2.11 Un identificateur qui fait référence à une valeur.
2.2.6 Les valeurs partielles
Une valeur partielle est une structure de données qui peut contenir des variables non
liées. La figure 2.12 montre l’enregistrement person(name:"George" age:x 2 ),
référencé par l’identificateur X. C’est une valeur partielle parce qu’elle contient la
variable non liée x 2 . L’identificateur Y référence x 2 . La figure 2.13 montre la situation
après le lien de x 2 avec 25 (par l’opération de lien Y=25). Maintenant x 1 est une
valeur partielle qui ne contient pas de variables non liées, ce que nous appelons une
valeur complète. Une variable déclarative peut être liée à plusieurs valeurs partielles,
du moment qu’elles sont compatibles entre elles. Nous disons que les valeurs partielles
sont compatibles si on peut lier leurs variables non liées pour les rendre égales. Par
exemple, person(age:25) et person(age:x) sont compatibles (parce que x
peut être liée à 25) mais person(age:25) et person(age:26) ne le sont pas.
x
1
person
"George"
name
age
"X"
"Y"
Dans la mémoire
non liée
2
x
Figure 2.12 Une valeur partielle.
i
i
i
i
i
i
i
i
44
2
• La programmation déclarative
Dans la mémoire
1
nil
1
2
3
"X"
x
Figure 2.11 Un identificateur qui fait référence à une valeur.
2.2.6 Les valeurs partielles
Une valeur partielle est une structure de données qui peut contenir des variables non
liées. La figure 2.12 montre l’enregistrement person(name:"George" age:x 2 ),
référencé par l’identificateur X. C’est une valeur partielle parce qu’elle contient la
variable non liée x 2 . L’identificateur Y référence x 2 . La figure 2.13 montre la situation
après le lien de x 2 avec 25 (par l’opération de lien Y=25). Maintenant x 1 est une
valeur partielle qui ne contient pas de variables non liées, ce que nous appelons une
valeur complète. Une variable déclarative peut être liée à plusieurs valeurs partielles,
du moment qu’elles sont compatibles entre elles. Nous disons que les valeurs partielles
sont compatibles si on peut lier leurs variables non liées pour les rendre égales. Par
exemple, person(age:25) et person(age:x) sont compatibles (parce que x
peut être liée à 25) mais person(age:25) et person(age:26) ne le sont pas.
x
1
person
"George"
name
age
"X"
"Y"
Dans la mémoire
non liée
2
x
Figure 2.12 Une valeur partielle.
