Recherche:"La Logique Contextuelle"

Une page de Wikiversité.
Sauter à la navigation Sauter à la recherche


Nuvola apps edu mathematics-p.svg
Wikimedia-research-fr.png
La Logique Contextuelle
(Travail de recherche)

Cette page de l’espace Recherche, dépend de la faculté Mathématiques. Consultez le portail de l'espace recherche ou pour plus de détails l'index des travaux de recherche par faculté.

Toutes les discussions sur ce sujet doivent avoir lieu sur cette page.


Introduction[modifier | modifier le wikicode]

La logique contextuelle[1] Lc est un système formel dont l'objectif est la modélisation et l'exploitation des connaissances par un agent intelligent. Elle propose une sémantique non monotone qui respecte les règles monotones de production syntaxique de la logique propositionnelle. Se plaçant dans le cadre de la révision des croyances, elle permet la représentation de connaissances avec exception, incohérentes ou aléthiques.

Le terme a aussi été employé par N. Gauvrit pour nommer un modèle de logique locale[2] permettant d'élucider certains paradoxes de la logique naturelle, et par Y. Gauthier pour proposer une analogie avec les logiques internes[3].

A. Kohler[1] étudiait les conséquences de l'approche de dicto sur la syntaxe de la logique propositionnelle. Cet article étend son application à la fonction d'interprétation sémantique, en constatant que la somme c1c2 des croyances produites depuis 2 contextes c1 et c2 n'est pas l'ensemble des croyances issues du contexte c1c2. Formellement :

  • Si c1f, si c2g, et si fgh, alors, selon l'approche de dicto, un agent intelligent peut croire {c1,f} et {c2,g} et ne pas croire h.

Les difficultés rencontrées en révision des croyances[modifier | modifier le wikicode]

La révision des croyances fait l'objet d'une littérature particulièrement riche. Quelques difficultés reviennent invariablement :

  • le traitement d'une information incohérente : son intégration en l'état rend la base de connaissances inexploitable. En effet, compte tenu des règles de production des langages classiques, si la base de connaissances contient {a,b} et qu'on y intègre ¬b, alors, à partir de {a,bb}, il est possible de déduire c quel que soit c. Ce n'est évidemment pas acceptable. La difficulté consiste alors :
    • à identifier les mécanismes qui permettent d'intégrer l'information ¬b en maintenant à la base de connaissances sa cohérence syntaxique,
    • ce qui, le plus souvent, nécessite de devoir faire un choix entre les connaissances existantes qui contredisent la nouvelle information. Dans l'exemple ci-dessus, il suffirait de retirer b des connaissances. Le problème est souvent plus complexe. Plusieurs solutions ont été étudiées. Citons par exemple les logiques paracohérentes ou le concept d"enracinement épistémique, proposé par Peter Gärdenfors et David Makinson. Aucune n'est toutefois totalement satisfaisante,
  • la gestion d'une règle qui admet des exceptions. La difficulté est double :
    • pouvoir exprimer une connaissance du type : si a est vrai, alors b est vrai "sauf cas exceptionnel". De nombreux formalismes ont été présentés, par exemple la circonscription de J. Mc Carthy, ou la logique des défauts de R. Reiter. Chacun propose une solution pour un mode de raisonnement particulier,
    • et pouvoir ensuite exploiter cette information en s'affranchissant d'un contrôle exhaustif des exceptions pour éviter l'explosion des temps de calcul,
  • la modélisation d'une connaissance aléthique : le besoin est de pouvoir exprimer des niveaux de crédibilité entre les connaissances (a est plus crédible que b). Ce périmètre est le terrain de jeu privilégié des logiques modales,
  • la modélisation d'un paradoxe, c'est à dire d'une information contraire au sens commun : la logique classique laisse peu de place entre le vrai et le faux, alors que les exemples ne manquent pas de connaissances apparemment vraies et fausses. Un exemple bien connu est le paradoxe du menteur : je dit Je mens. Si je mens, alors je ne mens pas. Et si je ne mens pas, alors je mens. La logique classique ne sait pas formaliser ce genre d'énoncé.

Découverte de Lc par un exemple[modifier | modifier le wikicode]

L'exemple utilisé dans ce paragraphe est un cas d'école. Bien qu'apparemment trivial, il illustre de nombreuses difficultés qu'on rencontre en révision des croyances. Son propos est de modéliser la connaissance que, si la plupart des oiseaux volent, certains ne volent pas. L'objectif est alors d'identifier les mécanismes qui permettent de déduire :

  • que Tweety, qui est une autruche, ne vole pas,
  • mais que Titi, dont on sait seulement qu'il est un oiseau, vole.

Le principal enjeu est d'obtenir ces conclusions en faisant l'économie de l'analyse exhaustive des exceptions (Titi n'est pas une autruche, n'est pas un pingouin, n'est pas un kiwi, n'a pas une aile cassée, etc.), qui entraînerait une explosion des temps de calcul. Pour cela, plaçons-nous dans le cadre de la syntaxe de la logique propositionnelle, et considérons un ensemble initial contenant les connaissances suivantes :

  • A → ( Oiseau → Voler )
  • B → ( Oiseau → Herbivore )
  • C → ( Oie → Oiseau )
  • D → ( Autruche → Oiseau )
  • E → ( Vautour → Oiseau )

La première formule, par exemple, se lit : Le signe A exprime que les oiseaux volent. Par convention de langage, appelons :

  • une expression de la forme A ∧ B ∧ C un contexte. Nous le noterons {A,B,C},
  • une formule produite par un contexte une croyance. Par exemple, la croyance Les oies volent est produite par le contexte {A,C},
  • une expression comme "contextecroyance" une connaissance.

Une difficulté qu'on rencontre dans les formalismes logiques est de trouver un modèle qui satisfasse l'ensemble des connaissances. La modélisation retenue ci-dessus permet d'un trouver un immédiatement : il suffit de considérer que A, B, C, D et E sont faux. Un modèle possible pour notre exemple est donc {¬A,¬B,¬C,¬D,¬E}.

Supposons toutefois que le contexte {A,B,C,D,E} soit vrai. On déduit la croyance que les oies, les autruches et les vautours sont des oiseaux, herbivores, qui volent. Ce n'est pas tout à fait vrai. Notamment, les autruches ne volent pas. Modélisons cette nouvelle information :

  • A → ( Oiseau → Voler )
  • B → ( Oiseau → Herbivore )
  • C → ( Oie → Oiseau )
  • D → ( Autruche → Oiseau )
  • E → ( Vautour → Oiseau )
  • F → ( Autruche → ¬ Voler )

Le contexte {A,D,F} produit la croyance que les autruches volent et ne volent pas - donc, selon les règles syntaxiques de la logique propositionnelle, qu'elles ne sont pas (¬ Autruche). Faisons toutefois l'hypothèse que Autruche est vrai. On distingue alors 2 contextes d'interprétations :

  • {A,D,F} : A, D et F ne sont pas interprétables. En effet, {Autruche,A,D,F} produit ¬ Autruche, ce qui est incohérent. Donc au moins une des propositions A, D ou F est fausse, mais la base de connaissances ne contient pas d'information permettant de choisir laquelle (ou lesquelles),
  • {B,C,E} est, par contre, un contexte crédible : il ne produit pas d'incohérence, et il n'a pas d'intersection avec {A,D,F} - donc toutes les croyances qu'il génère (par exemple que les oies sont des herbivores) sont crédibles.

L'incohérence relevée sur {A,D,F} provient de A : en réalité, tous les oiseaux ne volent pas. Pour modéliser cette nouvelle information, exprimons le fait que A est à la fois vrai et faux (certains oiseaux volent, et certains oiseaux ne volent pas) :

  • A → ( Oiseau → Voler )
  • B → ( Oiseau → Herbivore )
  • C → ( Oie → Oiseau )
  • D → ( Autruche → Oiseau )
  • E → ( Vautour → Oiseau )
  • F → ( Autruche → ¬ Voler )
  • A' → ( A )
  • B' → ( ¬ A )

A' et B' expriment une méta connaissance (dans le sens d'une connaissance sur la connaissance) sur A et, indirectement, sur D et F. Par convention de langage, nous dirons que :

  • les propositions Oiseau, Voler, Herbivore, Oie, Autruche, etc., sont de rang 0,
  • les propositions A, B, C, D, E et F sont de rang 1 : elles expriment une connaissance sur les propositions de rang 0,
  • les propositions A' et B' sont de rang 2 : elles expriment une connaissance sur les propositions de rang 0 ou 1.

A' et B' suggèrent l'existence de 2 contextes d'interprétations, distinguant lorsque A est vrai et lorsque A est faux. Restons sur l'hypothèse que Autruche est vrai :

  • si A' est vrai, alors A est vrai, B' est faux et {D,F} n'est pas interprétable. Donc le contexte crédible est {A',A,B,C,E},
  • si B' est vrai, alors A' et A sont faux, {D,F} est interprétable (parce que A est faux, ce qui résout l'incohérence), et le contexte crédible est {B',B,C,D,E,F}.

Chacun de ces contextes produit des croyances :

  • {A',A,B,C,E} : que les oies et les vautours sont des oiseaux qui volent et sont herbivores par exemple,
  • {B',B,C,D,E,F} : que les autruches sont des oiseaux qui sont herbivores et ne volent pas.

Le cumul des croyances issues de chacun des 2 contextes forment un tout cohérent, et donne toutes les information qu'il est possible de produire de cet ensemble de connaissances. Par contre, les croyances issues de la conjonction formelle des 2 contextes généreraient une incohérence (Autruche et ¬ Autruche par exemple).

Ce petit exemple présente des applications d'apprentissage (de nouvelles informations sont intégrées dans la base initiale), de règles avec exception (certains oiseaux ne volent pas), d'informations aléthiques (modélisation de méta connaissances) et d'informations paradoxales (A est vrai et faux). Il illustre les mécaniques de modélisation et de raisonnement de la logique contextuelle :

  • les connaissances n'expriment pas un fait (les oiseaux volent, par exemple), mais la connaissance d'avoir exprimé ce fait (les oiseaux volent) par une formule (Oiseau → Voler). La logique contextuelle applique donc une distinction, dans le langage, entre le fait et le dire (approche de dicto),
  • les croyances ne s'interprètent pas en fonction de l'ensemble des connaissances, mais en fonction de contextes distincts qui sont des sous ensembles des connaissances - et l'ensemble des croyances produites est constitué de sous-ensembles non joints de croyances.

Pour finaliser l'appropriation de Lc, étendons la base de connaissances, et décrivons les étapes de l'interprétation de différentes hypothèses. Ce travail, un peu fastidieux à lire, permettra de bien comprendre - et, accessoirement, de vérifier - les mécanismes mis en oeuvre.

  • A → ( Oiseau → Voler )
  • B → ( Oiseau → Herbivore )
  • C → ( Oie → Oiseau )
  • D → ( Autruche → Oiseau )
  • E → ( Vautour → Oiseau )
  • F → ( Autruche → ¬ Voler )
  • G → ( Vautour → Carnivore )
  • H → ( Vautour → ¬ Herbivore )
  • I → ( Autruche → ¬ Oie )
  • J → ( Autruche → ¬ Vautour )
  • K → (Oie → ¬ Vautour )
  • A' → ( A )
  • B' → ( ¬ A )
  • C' → ( B )
  • D' → ( ¬ B )

G et H indiquent que les vautours ne sont pas des herbivores, mais des carnivores. C' et D' indiquent que B n'est pas toujours vrai (tous les oiseaux ne sont pas des herbivores). Enfin, I, J et K indiquent que les autruches ne sont ni des oies ni des vautours, et que les oies ne sont pas des vautours. Interprétons ces données selon plusieurs hypothèses.

  1. Supposons que Autruche (Tweety) est vrai. Dans ce cas, nous avons 1 contexte incohérent : {A,D,F}. La combinatoire donnent 4 contextes possibles sur le rang 2 :
    • {A',C'} : il produit ¬ B', ¬ D', A et B. Le contexte crédible est donc {A',C',A,B,C,E,G,H,I,J,K},
    • {A',D'} : il produit ¬ B', ¬ C', A et ¬ B. Le contexte crédible est donc (A',D',A,C,E,G,H,I,J,K},
    • {B',C'} : il produit ¬ A', ¬ D', ¬ A et B. Le contexte crédible est donc {B',C', B,C,D,E,F,G,H,I,J,K},
    • {B',D'} : il produit ¬ A', ¬ C', ¬ A et ¬ B. Le contexte crédible est donc {B',D',C,D,E,F,G,H,I,J,K}.
    • Les autruches sont des oiseaux, ce ne sont ni des oies ni des vautours, elles sont herbivores et elles ne volent pas.
  2. Supposons que Vautour est vrai. Dans ce cas, nous avons 1 contexte incohérent : {B,E,H}. La combinatoire donnent 4 contextes possibles sur le rang 2 :
    • {A',C'} : il produit ¬ B', ¬ D', A et B. Le contexte crédible est donc {A',C',A,B,C,D,F,G,I,J,K},
    • {A',D'} : il produit ¬ B', ¬ C', A et ¬ B. Le contexte crédible est donc (A',D',A,C,D,E,F,G,H,I,J,K},
    • {B',C'} : il produit ¬ A', ¬ D', ¬ A et B. Le contexte crédible est donc {B',C',B,C,D,F,G,I,J,K},
    • {B',D'} : il produit ¬ A', ¬ C', ¬ A et ¬ B. Le contexte crédible est donc {B',D',C,D,E,F,G,H,I,J,K}.
    • Les vautours sont des oiseaux, ce ne sont ni des oies ne des autruches, ils sont carnivores, non herbivores, et ils volent.
  3. Supposons que Oie est vrai. Dans ce cas, il n'y a pas de contexte incohérent. La combinatoire donnent 4 contextes possibles sur le rang 2 :
    • {A',C'} : il produit ¬ B', ¬ D', A et B. Le contexte crédible est donc {A',C',A,B,C,D,E,F,G,H,I,J,K},
    • {A',D'} : il produit ¬ B', ¬ C', A et ¬ B. Le contexte crédible est donc (A',D',A,C,D,E,F,G,H,I,J,K},
    • {B',C'} : il produit ¬ A', ¬ D', ¬ A et B. Le contexte crédible est donc {B',C', B,C,D,E,F,G,H,I,J,K},
    • {B',D'} : il produit ¬ A', ¬ C', ¬ A et ¬ B. Le contexte crédible est donc {B',D',C,D,E,F,G,H,I,J,K}.
    • Les oies sont des oiseaux, ce ne sont ni des autruches ni des vautours, elles sont herbivores et elles volent.
  4. Supposons que Oiseau (Titi) est vrai. Dans ce cas, les contextes crédibles sont les mêmes que ceux obtenus avec l'hypothèse Oie est vrai.
    • L'oiseau vole, il est herbivore, et il n'est ni une autruche ni un vautour.
  5. Faisons l'exercice sans hypothèse. Les contextes crédibles sont les mêmes que ceux obtenus avec l'hypothèse Oiseau est vrai.
    • Autruche n'est pas et Vautour n'est pas.

Selon chaque hypothèse, on obtient l'ensemble cohérent et complet des croyances qu'il est possible de produire à partir de l'ensemble des connaissances. Remarquons que les contextes crédibles ne sont pas directement dépendants les uns des autres (ils sont en fait liés par les contextes incohérents). Par conséquence :

  • dans le premier exemple, pour arriver à la conclusion que Tweety ne vole pas, il suffit de construire au moins un contexte crédible portant cette croyance - le 3ième ou le 4ième dans l'exemple,
  • et dans le quatrième exemple, pour conclure que Titi vole, il suffit de construire le 1ier ou le 2ième contexte crédible.

Nous n'entrerons pas dans le sujet des algorithmes, il est encore à étudier. Remarquons juste que, en tous cas pour cet exemple, l'obtention d'un contexte crédible n'est pas nécessaire pour arriver à la conclusion que Titi vole : la preuve se construit directement par {Oiseau,A',A}. On obtient donc bien ce qu'on souhaitait au début de ce paragraphe :

  • un langage permettant de modéliser le fait que la plupart des oiseaux volent,
  • et un mécanisme qui déduit que Tweety (Autruche )ne vole pas, et que Titi (Oiseau) vole en faisant l'économie de l'analyse exhaustive des exceptions.

Notons enfin, pour finir ce paragraphe, un comportement singulier de la logique contextuelle. Les oies ont elles aussi des particularités : si certaines volent, d'autres ne volent pas. Si on modélisait cette exception dans la base de donnée, on obtiendrait l'interprétation suivante (en faisant l'exercice sans hypothèse) :

  • Autruche n'est pas et Vautour n'est pas et Oie n'est pas.

Dans la mesure où il n'existe probablement pas de règle sans exception, on déduit que c'est la confrontation à un fait - ou à une hypothèse - qui initie les mécanismes du raisonnement dans Lc. A défaut de confrontation, la logique contextuelle interprète que rien est - hors les 3 principes d'Aristote : (A est A), (A ou non A) et (non (A et non A)) - qui sont vrais dans tous les contextes et quelques soient les hypothèses.

Ce que montre cet exemple[modifier | modifier le wikicode]

En révision des croyances[modifier | modifier le wikicode]

Le mécanisme présenté propose une solution aux différents problèmes soulevés par la révision des croyances :

  • le traitement d'une nouvelle information incohérente : l'information est simplement enregistrée comme elle arrive. La cohérence syntaxique de l'ensemble des connaissances  est toujours assurée : il suffit de douter de toutes les connaissances, et de considérer que (A est faux et B est faux et C est faux etc.) pour obtenir un modèle syntaxiquement cohérent. En fait, la logique contextuelle conclue que la révision est un faux problème : le sujet n'est pas dans la révision des connaissances, mais dans leur exploitation (l'identification des connaissances nécessaires pour répondre à un stimulus, modéliser dans le langage contextuel par la notion d'hypothèse),
  • la gestion d'une règle avec exception :
    • sa modélisation : l'exemple montre comment on peut modéliser ce genre de règle. Cela aurait pu être faite de plusieurs autres manières, l'objectif était de montrer qu'il y en a au moins une pour laquelle cela fonctionne,
    • son exploitation : comme l'exemple l'a montré, l'exhaustivité n'est pas une nécessité. Il suffit, pour obtenir une réponse, de produire au moins un contexte crédible qui la porte,
  • la modélisation d'une connaissance aléthique : l'exemple montre la modélisation de méta connaissances, qui expriment des notions de crédibilité sur les connaissances (les propositions de rang 2 portent des informations de crédibilité sur les propositions de rang inférieur),
  • la modélisation d'un paradoxe :
    • la syntaxe de Lc, qui portent les mécanismes de production des formules, est celle de la logique propositionnelle. L'ensemble des connaissances ne contient donc syntaxiquement pas de paradoxe,
    • par contre, la sémantique de Lc s'appuie sur une fonction d'interprétation qui autorise les paradoxes sémantiques. Par exemple, A' et B' expriment des connaissances contradictoires. Pourtant, elles appartiennent chacune à un contexte crédible,
    • et il est intéressant de noter qu'elles sont utiles l'une et l'autre à la production de l'ensemble complet et cohérent des croyances issues de la base de connaissances.

Un principe : l'approche de dicto[modifier | modifier le wikicode]

La conception de re suppose que Les prédicats se rapportent à la nature de la chose dont on parle : un état de chose et son expression sont supposés liés, dans le langage, par une forme de relation d'équivalence. La conception de dicto suppose que Les prédicats déterminent la nature du dictum, de la proposition qui est dite. Elle propose donc une interprétation différente : un tableau peint peut être décrit par un ensemble de phrases, mais il n'y a pas d'équivalence entre le tableau et l'ensemble des formules du langage qui le représente. Quand bien même la description formelle serait idéalement complète et parfaite, elle n'est pas le fait qu'elle décrit.

Une approche stricte de de dicto suppose donc que le tableau, d'une part, et les formules qui le représentent, d'autre part, doivent être distingués dans le langage. Pour formaliser ce postulat, la logique contextuelle propose une relation entre la syntaxe (les combinaisons des symboles utilisées pour modéliser le langage) et la sémantique (l'interprétation que le formalisme propose de ces combinaisons) :

Soit L un langage formel muni de la règle d'interprétation sémantique ⊨L. Soit c un état, et f  la formule qui décrit c dans L. Alors c est une proposition élémentaire de L, et la relation dans L entre c et f est donnée par : cL f.

Selon cet énoncé, l'agent ne mémorise ni l'état c ni sa modélisation f : il mémorise la connaissance qu'il a de modéliser c par f. Cette approche rejoint L. Wittgenstein, lorsqu'il affirme : Nous ne devons pas dire : Le signe complexe aRb dit que a se trouve dans la relation R avec b, mais : Que a se trouve dans une certaine relation R avec b dit que aRb.

2 principes semblent ressortir de l'exemple présenté au paragraphe précédent :

  • adopter une approche de dicto (et non de re), en raisonnant non pas sur les formules du langage (OiseauVoler par exemple) mais sur les signes qui symbolisent ces connaissances (dans l'exemple : A , ... , K , A' , ... , D'),
  • et interpréter la base de connaissances au travers des contextes, considérant que l'ensemble des croyances produites d'un ensemble de connaissances est un tout composé d'ensembles de croyances disjointes.

En fait, le premier principe induit le second : c1c2 est une formule du langage formel, et une application stricte de de dicto suppose que le sens ne doit pas être porté par les formules. Le fait que la somme c1c2 des croyances issues de 2 contextes c1 et c2 n'est pas l'ensemble des croyances issues du contexte c1c2 est donc aussi une conséquence de l'approche de dicto. Formellement :

  • Si c1f, si c2g, et si fgh, alors, selon l'approche de dicto, un agent intelligent peut croire {c1,f} et {c2,g}, et ne pas croire h.

La logique contextuelle, en distinguant "ce qui est" et "ce qui est dit", propose une application stricte de l'approche de dicto.

La logique contextuelle[modifier | modifier le wikicode]

Le langage[modifier | modifier le wikicode]

Le langage de Lc est celui de la logique propositionnelle Lp. Les connecteurs de négation, de disjonction, de conjonction, d'implication, et d'équivalence, sont notés respectivement ¬, ∨, ∧, → et ↔. Lc utilise les symboles classiques de parenthèses.

L'ensemble infini dénombrable des propositions atomiques p est noté PLc. Il est décomposé en une infinité d'ensembles infinis dénombrables disjoints de propositions atomiques, notés PLci, pour i un nombre entier. i est appelé le rang de p dans Lc. p est noté pi.

Par convention, PLc0 est considéré comme étant l'ensemble des propositions atomiques de PLp.

La syntaxe[modifier | modifier le wikicode]

La syntaxe de Lc est celle de la logique propositionnelle. La règle d'inférence valide de Lc est celle de Lp, notée ⊢Lp.

Une formule contextuelle est une formule de la forme pi+1fi :

  • pi+1PLci+1,
  • fi est une formule construite sur des propositions atomiques appartenant à ⋃ j=0...i PLcj. On dit que fi décrit pi+1.

L'ensemble des formules contextuelles, noté WLc, forme l'ensemble des formules biens formées de Lc.

Lc propose des définitions formelles pour les termes connaissance, contexte, hypothèse et croyance :

  • une connaissance dans Lc est un ensemble non vide de formules contextuelles,
  • un contexte dans Lc est une conjonction finie de propositions atomiques appartenant à PLci, pour i > 0. Le rang d'un contexte est le plus haut rang des propositions atomiques qui participent à sa composition. Le rang du contexte vide est égal à 0,
  • une hypothèse dans Lc est une formule,
  • une croyance dans Lc est une formule.

On déduit facilement :

  • un ensemble de connaissances est toujours syntaxiquement cohérent,
  • une connaissance est l'expression d'une relation entre un contexte et une croyance. On dit de cette croyance qu'elle décrit ce contexte,

La sémantique[modifier | modifier le wikicode]

La sémantique de Lc étend la sémantique de Lp en définissant une fonction de méta interprétation des croyances. Soient :

  • E un ensemble de connaissances,
  • H une hypothèse,
  • {c0 , ... , ci}, pour i un nombre entiers, un ensemble de contextes dits de référence,
  • {f0 , ... , fi} pour chaque fj la description du cj concerné dans E.

Une croyance c est dite :

  • fausse dans {E , H , c0 , ... , ci} si, et seulement si, il existe 0ji tel que {H , fi}⊢Lp ¬ c,
    • si c est un contexte, il est dit faux minimal si tout contexte qu'il inclue strictement est vrai,
  • vraie dans {E , H , c0 , ... , ci} si, et seulement si, il existe 0ji tel que {H , fi}⊢Lp c,
    • si c est un contexte, il est dit vrai maximal s'il existe au moins un contexte faux dans lequel il est inclue,
    • si c est un contexte, il est dit vrai crédible s'il n'a aucune intersection avec un contexte faux minimal,
  • non interprétable dans {E , H , c0 , ... , ci} sinon.

La sémantique de Lc profite des propriétés de Lp pour garantir son adéquation et sa complétude.

Les contextes de référence[modifier | modifier le wikicode]

La sémantique de Lc ne propose pas de solution pour déterminer, parmi l'ensemble des contextes possibles, ceux qu'il faut retenir comme contextes de référence. Cette absence est volontaire : selon Lc, ce choix, déterminant, est lié aux propriétés du raisonnement qu'on souhaite modéliser.

La définition retenue pour présenter l'exemple au paragraphe précédent exploite l'idée que les propositions de rang i expriment une méta connaissance sur les contextes de rang inférieur. Un contexte crédible privilégie donc les propositions du plus haut rang i, puis les propositions du rang i-1, etc., jusqu'au rang 1 (un contexte ne contenant pas de proposition atomique de rang 0). Il se construit de la manière suivante :

Soit i le plus haut des rangs dans l'ensemble des connaissances :

  • ci est tel que :
    • il n'est pas un contexte faux dans {∅ , EH , ∅},
    • il ne contient que des propositions de rang i,
    • son extension par une proposition atomique de rang i le rend faux dans {∅ , EH , ∅},
  • pour 2jicj-1 = cjcj-1' tel que :
    • cj-1 n'est pas un contexte faux dans {∅ , EH , ∅},
    • cj-1' ne contient que des propositions de rang j-1,
    • il n'est pas en intersection avec un contexte faux minimal dans {∅ , EHcj , ∅} qui ne contient que des propositions de rang j-1.

Cette définition est constructive, et les contextes peuvent être construits indépendamment les uns des autres. Cette remarque est utile pour optimiser des algorithmes de production de preuve, en cherchant à construire uniquement le contexte crédible répondant à la question posée.

Application[modifier | modifier le wikicode]

En mathématiques[modifier | modifier le wikicode]

Il est généralement admis que la logique classique est insuffisante pour modéliser et exploiter des connaissances qui sortent d'un cadre rigoureux, comme les mathématiques par exemple. De nombreux formalismes logiques ont été développés pour y pallier.

Nous avons constaté que Lc enrichit la capacité d'expression du langage tout en respectant la syntaxe de la logique propositionnelle, et permet de modéliser des informations avec exception, incohérentes ou modales. La complétude n'a pas été prouvée, mais des premières pistes d'études ont été explorées[4].

La logique contextuelle ouvre donc les recherches sur l'existence d'un formalisme fédérateur de l'ensemble des langages logiques. La solution se trouvera peut-être dans son application aux familles logiques d'ordre supérieur.

En Intelligence Artificielle[modifier | modifier le wikicode]

L'expression Intelligence Artificielle, ou IA, ne bénéficie pas d'une définition unanimement acceptée. Elle varie notamment selon le but recherché : modéliser un raisonnement humain ou modéliser un raisonnement idéal. Lc propose une sémantique des croyances. Elle se situe donc dans le premier cas.

Apparue autour des années 1950, l'IA a dans un premier temps été portée par les théories basées sur les réseaux neuronaux (qui appartiennent aux théories probabilistes). Ils ont été supplantés dans les années 1970/1990 par les approches adossées aux langages formels, et les réflexions autour des langages de 5ième génération. Ceux-ci ont conduit à la réalisation de systèmes experts. Ils ont été décevants, notamment pour 2 raisons : la complexité de leurs algorithmes d'une part, qui engendrent des temps de calcul prohibitifs, et les limites de leurs capacités d'expression d'autre part. Dans les années 2000, les avancées dans la théorie des réseaux neuronaux, couplées à l'explosion des capacités de calcul des ordinateurs, a relancé l'IA et conduit à des résultats pratiques probants - en particulier avec la conception de systèmes capables d'apprentissage.

La logique contextuelle s'inscrit dans une approche de l'IA par les langages formels. Son apport porte sur la capacité d'expression du langage. Elle n'apporte pas de solution au problème de la complexité algorithmique et des temps de réponses qu'ils induisent. Les progrès des technologies réalisés depuis plusieurs décennies repoussent sans cesse le seuil des possibles, mais sans préjuger de l'existence d'une limite. L'arrivée des calculateurs quantiques résoudra peut-être ce problème - et en posera probablement d'autres.

En attendant, et en supposant que l'intelligence humaine n'est pas, ou est très peu, quantique, les Sciences Cognitives proposent des solutions à cette difficulté.

Les langages formels sont confrontés à deux difficultés, qu'il leur faut résoudre simultanément : garantir la cohérence syntaxique des connaissances, et identifier les mécanismes permettant son exploitation pour répondre aux stimulus auxquels sont confrontés les agents intelligents (pour agir, répondre ou décider). En garantissant la cohérence syntaxique de la base de connaissances, Lc s'affranchit du besoin de contrôle syntaxique. Elle est en ce sens un bon candidat pour tester les modèles cognitifs, en permettant de concentrer les études sur l'exploitation sémantique de l'information.

On peut, par exemple, indiquer les thèmes suivants[5] :

  • la capacité à produire de nouvelles connaissances. La théorie identifie 3 manières de les inférer :
    • l'induction (création d'une loi générale à partir d'observations) : comment, et sous quelles conditions, peut-on induire Les oiseaux ont des plumes à partir de l'information Les autruches ont des plumes, sachant que Les autruches sont des oiseaux ? Une règle à étudier pourrait être : si A → (ab) et si B → (ac), alors on induit C → (bc). Selon le même raisonnement, il serait aussi rajouté D → (cb) (Ce qui a des plumes est un oiseau).
    • la déduction (obtention de conclusions à partir de prémisses) : c'est le terrain de jeu privilégié des langages formels,
    • l'abduction (construction par hypothèses des prémisses vraisemblables à des conclusions) : comment, et sous quelles conditions, peut-on conclure que L'objet que je vois voler est un oiseau à partir de la connaissance Les oiseaux volent ? Le problème peut sembler simple lorsque la proposition Oiseau est la seule qui infère Voler dans la base de connaissances. Par contre, cela devient immédiatement plus compliqué lorsqu'une autre proposition, qui n'est pas un Oiseau, porte la même propriété (par exemple Avion). A défaut d'information complémentaire, il semble qu'il n'y ait pas d'autre solution que de conclure que L'objet que je vois voler est un oiseau ou un avion,
  • comment générer de nouvelles connaissances pour accélérer des inférences (les dires d'experts) ? Par exemple, sachant que A → (fg) et B → (gh), sous quelles conditions est-il utile de produire et de mémoriser C → (fh) ? Ou sachant que A → (fg), sous quelles conditions est-il judicieux de générer les deux connaissances {C → f , A' → (C → g) } ?
  • les mécanismes de nettoyage de la base de connaissances : comment identifier et effacer les informations redondantes ou non utiles ? La logique contextuelle bénéficie d'une syntaxe dont la cohérence est garantie. La base peut donc être étendue à toutes les relations logiques possibles. Il est de ce fait nécessaire d'identifier les connaissances similaires (du type A → f et C → f) et les connaissances non pertinentes. Par exemple, si A → (fg) et B → (gh), est-il utile de conserver C → (fh) ?
  • l'apprentissage : comment l'agent identifie-t-il les questions à poser à son instructeur ? L'exemple présenté précédemment apporte des éléments de réponse. Il est pertinent de poser des questions sur les contextes non interprétables et, plus précisément, sur les contextes qui produisent la négation d'une proposition (¬ Autruche pose la question du contexte {A,D,F}). Un autre sujet porte sur la modélisation de l'information reçue,
  • les définitions des contextes de références, sur une typologie des inférences qu'on souhaite reproduire : les mécanismes de raisonnements, d'analyses du langage ou des images ne sont peut-être pas tout à fait les mêmes par exemple.
  • la relation entre la mémoire à long terme (la MCT - l'ensemble des connaissances de l'agent intelligent) et la mémoire à court terme (la MCT - la part des connaissances utilisées à un instant t pour agir, répondre ou prendre une décision). Le besoin est de définir la fonction qui permet d'identifier le sous-ensemble des connaissances supposées pertinentes pour réagir au stimulus,
  • les notions de seuils cognitifs :
    • le changement minimal (évolution minimale de la mémoire à court terme),
    • le critère d'évolution (enracinement épistémique privilégiant les informations les plus récentes)
    • les seuils d'incapacité technique (manipulation simultanée d'un nombre limité de connaissances),
    • les seuils sémantiques : les travaux de J. Pitrat laissent à penser qu'un humain n'est pas capable de raisonner sur plus de quatre niveaux de méta-connaissances.

En philosophie[modifier | modifier le wikicode]

En assujettissant toute interprétation sémantique à un contexte, Lc décorrèle les mécaniques du raisonnement (les trois principes d'Aristote - (A est A), (A ou non A) et (non (A et non A))) des mécaniques de la pensée (l'interprétation sémantique), cassant ainsi le dogme de l'adéquation et de la complétude. La logique contextuelle, en appliquant strictement l'approche de dicto, présente quelques singularités comportementales :

  • une connaissance n'affirme pas la certitude d'un fait, mais uniquement la "conscience" d'une relation entre ce fait supposé et sa transcription dans le langage,
  • l'ensemble des croyances est composé de sous-ensembles de croyances non joints - et qui ne sont pas joignables,
  • la modélisation des paradoxes est nécessaire au processus d'interprétation, qui lui-même pourtant s'adosse à une mécanique syntaxique totalement aristotélicienne,
  • le raisonnement ne peut se faire sans confrontation à des faits ou à des hypothèses (sans hypothèse, rien est),
  • le doute est intrinsèque au langage (tout est faux est un modèle acceptable de toute base de connaissances contextuelles).

Ces comportements requestionnent l'idée selon laquelle limiter la pensée à ce qui est logique l'appauvrirait.

Références[modifier | modifier le wikicode]

  1. 1,0 et 1,1 Arnaud Kohler, « Proposition d'une structure de représentation de la connaissance pour les raisonnements non classiques », {{{périodique}}}, Aix-Marseille 1, 1995-01-01 [texte intégral (page consultée le 2019-03-03)]
  2. Nicolas Gauvrit, « La logique contextuelle », {{{périodique}}}, Paris, EHESS, 2001-01-01 [texte intégral (page consultée le 2019-03-03)]
  3. Yvon Gauthier, De la logique interne [lire en ligne] 
  4. La logique contextuelle et les autres formalismes sur www.pacariane.com. Consulté le 2019-03-04
  5. La logique contextuelle et l'Intelligence Artificielle sur www.pacariane.com. Consulté le 2019-03-04