Auto-référence
Un article de Wikipédia, l'encyclopédie libre.
L’auto-référence est la propriété, pour un système, de faire référence à lui-même. La référence est possible lorsqu’on est en présence de deux niveaux logiques, un niveau et un méta-niveau. Cette situation se rencontre fréquemment en mathématiques, en philosophie, en programmation ou encore en linguistique.
Il y a hétéro-référence lorsqu’un mot (ou une phrase) se réfère à un objet (ou une situation) du monde, par exemple : une encyclopédie. Il y a auto-référence lorsqu’un signe se réfère à lui-même. Ainsi, la phrase : « Cette phrase compte cinq mots. » est auto-référente. Les phrases auto-référentes peuvent être paradoxales ; ainsi : « Cette phrase est un mensonge » (paradoxe d'Épiménide) ne peut être classée vraie ou fausse. Un paradoxe de type Épiménide peut être considéré comme la négation d’une auto-référence. Exemples tirés du Trésor des Paradoxes (Éd. Belin) : « N’est pas en français est en français » ; « Imprimé ici n’est pas imprimé ici » ; « Ma fourche ne langue jamais » (contrepèterie avec négation d’une auto-référence) ; « Je ne m’ai jamais trompé en parlant » ; « Cette phrase n’est pas auto-référente » ; « Si cette phrase était traduite en chinois, elle signifierait tout autre chose » (Douglas Hofstadter). Synthèse possible de tous ces exemples : « Ceci n’est pas un article de Wikipédia ».
Un autre type de situation auto-référentielle est celui de l’autopoïèse, car l’organisation logique produit la structure physique qui la réalise logiquement et la régénère.
Sommaire |
[modifier] En philosophie
Certains concepts ont un fort caractère auto-référentiel, par exemple conscience, être, réalité, identité, existence. Ils renvoient à eux-mêmes : on parle de miroir ontologique.
[modifier] En mathématiques
Kurt Gödel a révolutionné les mathématiques en 1931, en utilisant une variante du paradoxe d'Epiménide pour prouver l'incomplétude des systèmes mathématiques qui contiennent les entiers naturels.
En mathématiques et en logique mathématique l'auto-référence s'appelle l'imprédicativité (ou la non prédicativité). Ce concept est au cœur du débat sur les fondements qui au opposa Henri Poincaré et Bertrand Russell au début du XXe siècle.
[modifier] En programmation informatique
En programmation, on peut faire référence à une variable par un pointeur. En Pascal, par exemple, la référence à une variable V s'écrit @V. Ainsi, si on définit une pointeur P de la sorte :
var P: Pointer; I: Integer; begin P := @I; { P pointe sur l'entier I } P := @P; { Maintenant, P pointe sur lui-même } end.
A la fin, le pointeur P pointera sur lui-même.
On peut faire des exemples plus complexe avec des types structurés. Par exemple :
type { définition des types de variables utilisés } PStructure = ^TStructure; { type pointeur vers structure } TStructure = record { le type de la structure elle-même } a,b,c: integer; { quelques variables, ici des nombres entiers } SoiMeme: PStructure; { le pointeur que l'on va utiliser pour l'autoréférencement } end; var S : TStructure; { notre variable de structure } begin S.a := 5; { on définit des valeurs } S.b := 6; S.c := 8; S.SoiMeme := @S; { on affecte au pointeur de structure l'adresse de S elle-même } end.
L'intérêt peut être par exemple de faire une liste chainée infinie. Par exemple, si on définit le type suivant :
type PListe = ^TListe; TListe = record element : integer; suivant : PListe; end;
On peut faire quelques éléments distinct 1, 2 puis 3, puis on revient à 3. Cela donnera la suite infinie 1, 2, 3, 3, 3...
var un, deux, trois: TListe; begin un.element := 1; un.suivant := @deux; deux.element := 2; deux.suivant := @trois; trois.element := 3; trois.suivant := @trois; { autoréférencement } EcrireListe(un); end.
Avec la procédure EcrireListe suivante :
procedure EcrireListe(liste: TListe); begin write(liste.element); { test si fin de liste: ça n'arrivera pas dans le cas en question } if (liste.suivant = nil) then writeln('. Fini.') else begin write(', '); EcrireListe(liste.suivant^); { déréférencement: en effet, 'suivant' est un pointeur, pas une TListe, tandis que 'suivant^' correspond bien à la variable liste } end; end;
EcrireListe est une procédure récursive, c'est-à-dire autoréférente.
[modifier] En linguistique
Elle apparaît principalement pour les autonymes, c'est-à-dire les mots cités en tant que mots. Les autonymes doivent être marqués typographiquement pour être distingués du discours non auto-référent. Le soulignement peut être utilisé dans un texte manuscrit, l'italique dans un texte dactylographié. Par exemple : « le mot mot est un nom ». Cela renvoie au paradoxe de Grelling-Nelson.
[modifier] En littérature
Le poème de Francis Ponge Fable commence par « Par le mot par commence ce texte » et le second vers est « Dont la première ligne dit la vérité ».
[modifier] Dans la vie quotidienne
La mention « Vous êtes ici », présente sur les cartes implantées à un endroit fixe.
[modifier] Voir aussi
[modifier] Liens internes
- Mème
- Pangramme autodescriptif
- Paradoxe de Richard
- Paradoxe de Berry
- Récursivité
- Théorème d'incomplétude de Gödel
[modifier] Bibliographie
- Raymond Smullyan, Les théorèmes d'incomplétude de Gödel, Dunod, 2000 - ISBN 2-10-005287-X ( Manuel de logique sur les théorèmes d'incomplétude, agrémenté d'exemples où l'autoréférence apparaît dans un système formel)
- Raymond Smullyan, Le livre qui rend fou, Dunod, 1984 - ISBN 2-10-003202-X (ouvrage de vulgarisation sur les mêmes thèmes)
- Douglas Hofstadter, Gödel, Escher, Bach : les Brins d'une Guirlande Éternelle, Éditeur : Intereditions (ouvrage en grande partie consacré au concept d'auto-référence)
- Douglas Hofstadter, Ma thémagie, Éditeur : Intereditions. (Les premiers chapitres sont consacrés à des phrases autoréférentielles dans le langage naturel.)
- Philippe Boulanger & Alain Cohen, Le Trésor des Paradoxes, Belin, 2007 (présentation éclectique sur l'ubiquité des paradoxes, incluant les auto-références, notamment en matière de communication).