# Logique contextuelle

La logique contextuelle L$_c$ est un système formel dont l'objectif est la modélisation et l'exploitation des connaissances par un agent intelligent. Elle postule qu'une phrase est, en soi, un ensemble de signes qui ne dit rien : son sens est dans la pensée, le langage est son moyen de communication, et cette relation doit être modélisée dans le formalisme qui porte l'expression.
Appliqué à la logique propositionnelle, l’exercice conduit à l'élaboration d'un langage sémantiquement non monotone et syntaxiquement monotone. Se situant dans le cadre de la révision des croyances et garantissant la cohérence syntaxique, L$_c$ propose des réponses à quelques difficultés propres aux langages formels, comme l’exploitation de connaissances avec exception, incohérentes ou aléthiques, et bénéficie d’une capacité à supporter des pensées imaginées.
Le terme a aussi été employé par Nicolas Gauvrit pour nommer un modèle de logique locale permettant d'élucider certains paradoxes de la logique naturelle, et par Yvon Gauthier pour proposer une analogie avec les logiques internes.

## Postulat contextuel

Selon Ludwig Wittgenstein : « 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 ». Le « postulat contextuel » propose une formalisation de cette affirmation :
   Soit L un langage formel muni de la fonction d’interprétation ⊨. Une formule bien formée f de L est un ensemble de signes qui n’a pas de signification. Son sens est porté par une pensée, qui est une proposition élémentaire de L. Pour c symbolisant cette pensée, la relation entre c et f est c ⊨ f.
Ainsi, l’expression c ⊨ f n’affirme ni la pensée c ni la phrase f, mais la connaissance (ou la « conscience ») que « la pensée c dit la phrase f » (ou que « la phrase f exprime la pensée c »). Cela entraîne une restriction de la fonction d’interprétation aux expressions C ⊨ f, pour C un ensemble de propositions élémentaires réputées symboliser des pensées et f une formule du langage.
Applicable à toute logique formelle L, le postulat contextuel génère la logique formelle L contextualisée. La logique propositionnelle contextualisée, notée L$_c$, est appelée par convention de langage la logique contextuelle.

## Sémantique contextuelle

Dans L$_c$, l'ensemble des propositions élémentaires est composées des propositions élémentaires de Lp et d'un ensemble de « pensées ». La sémantique de L$_c$ utilise les définitions suivantes :
   Une conjonction de pensées est appelé un « contexte ».
   Une formule produite par un contexte est appelé une « croyance ».
   Une expression comme contexte ⊨ croyance est appelé une « connaissance ».
Soient E$_{Lc}$ un ensemble de formules contextuelles, et C un ensemble de contextes dits de référence. Une croyance est dite :
* « possible » si, et seulement si, au moins un contexte de référence la produit,
* « crédible » si, et seulement si, au moins un contexte de référence la produit et si aucun contexte de référence ne produit sa négation,
* « vraie » si, et seulement si, tous les contextes de référence la produisent,
* « improbable » si, et seulement si, aucun contexte de référence ne la produit et si au moins un contexte de référence produit sa négation,
* « fausse » si, et seulement si, tous les contextes de référence produisent sa négation,
* « paradoxale » si, et seulement si, au moins un contexte de référence la produit et au moins un contexte de référence produit sa négation,
* « non interprétable » si elle n’est ni crédible ni improbable.

### Les contextes épistémiques

Une pensée dit des relations entre des propositions atomiques de L$_p$. Il y a aussi des méta-pensées (Jacques Pitrat) (qui disent des relations entre des pensées, et peut-être des propositions atomiques de L$_p$), probablement des méta-méta-pensées, etc. Cela établit une relation d’ordre entre les pensées. Pour la formaliser, les propositions élémentaires de L$_p$ sont dites de rang 0, les pensées de rang 1, les méta-pensées de rang 2, etc. Le contexte vide est dit de rang 0. Un contexte est de rang i>0 s’il est composé de pensées dont le rang est supérieur ou égal à i, et de rang strictement i si toutes les pensées qui le composent sont de rang i.
Un contexte est dit :
* « impossible » si, et seulement si, il n'est vérifié dans aucun modèle vérifiant l’ensemble des formules considéré. Il est dit « possible » sinon,
* « impossible minimal » si tout contexte qu'il contient strictement est possible,
* « possible maximal » si tout contexte qui le contient strictement est impossible,
* « crédible » s’il n’a pas de jointure non vide avec un contexte impossible minimal,
* « crédible maximal » s’il contient tous les contextes crédibles.
L$_c$ ne propose pas de définition des contextes de référence. Parmi les possibilités, une solution est de sélectionner les contextes possibles maximaux de rang au moins 2, en utilisant le rang comme une relation d’ordre pour privilégier des pensées sur les autres, puis de retenir les contextes crédibles maximaux de rang 1 associés à cette sélection :
   Pour i le plus haut rang des pensées dans E$_{Lc}$, soit C$_{i+1}$ le contexte vide.
   Pour j = i à 2, sélection dans chaque {E$_{Lc}$, C$_{j+1}$} des contextes C$_j$ possibles maximaux de rang j.
   Pour chaque C$_2$ obtenu, sélection du contexte crédible maximal de rang 1 dans {E$_{Lc}$, C$_2$}.
Les contextes ainsi définis sont appelés les « contextes épistémiques ».

### Exemple d'application

Soient l’ensemble des propositions élémentaires {a, b, c, d} et un ensemble de formules :
   E$_{Lp}$ = {a → b, c → a, d → a, d → ¬ b}
Le besoin est de pouvoir dire que la formule a → b est vraie en général. Elle serait vraie lorsque c est vraie (ce qui permettrait de déduire b), mais fausse lorsque d est vraie (ce qui permettrait de ne pas produire simultanément b et ¬ b). L’ensemble contient quatre formules. Soient A, B, C et D les pensées associées. Selon le postulat contextuel, ce sont des propositions élémentaires. L'ensemble devient :
   E$_{Lc}$ = {A ⊨ a → b, B ⊨ c → a, C ⊨ d → a, D ⊨ d → ¬ b}
Soient A' et B' qui disent respectivement que la pensée A est vraie et que la pensée A est fausse :
   E$_{Lc}$ = {A ⊨ a → b, B ⊨ c → a, C ⊨ d → a, D ⊨ d → ¬ b, A' ⊨ A, B' ⊨ ¬ A}
Si H ⊨ c, il y a deux contextes épistémiques :
* {A', A, B, C, D, H}, qui produit {a, b, c, ¬ d}.
* {B', B, C, D, H}, qui produit {a, c}.
→ Si H ⊨ c, alors b ∧ c et a ∧ c sont crédibles : si c est pris comme hypothèse, a → b est crédible.
Si H ⊨ d, il y a deux contextes épistémiques :
* {A', A, B}, qui produit {a → b, c → a}.
* {B', B, C, D, H}, qui produit {a, ¬ b, d}.
→ Si H ⊨ d, alors ¬ b ∧ d et a ∧ d sont crédibles, et a → b est possible, ainsi que a ∧ ¬ b ∧ d. Si d est pris comme hypothèse, a → b n'est pas crédible.
Enfin, si l’hypothèse est le contexte vide, les contextes épistémiques sont {B’, B, C, D}, qui ne produit pas de proposition élémentaire de rang 0, et {A', A, B, C, D}, qui produit ¬ d. Dit autrement : à défaut d'hypothèse, d est improbable.

### Synthèse des propriétés de L$_c$

Dans L$_c$, un ensemble de connaissances est toujours syntaxiquement cohérent (« toutes les pensées sont fausses » caractérise un modèle possible).
L$_c$ respecte les règles de production syntaxique de la logique propositionnelle. Il est de ce fait syntaxiquement monotone.
L$_c$ est sémantiquement non monotone : l’adjonction d’une nouvelle connaissance peut entraîner une modification des contextes de références, et donc des résultats de l’interprétation sémantique.
L$_c$ a une conception perspectiviste de la connaissance : les contextes de référence identifient des sous-ensembles des connaissances (des perspectives), et l’interprétation sémantique est la somme des interprétations issues de chaque perspective. En supposant f, g et h trois formules telles que f ∧ g ⊢ h, la sémantique contextuelle peut se prononcer sur f et sur g (selon deux contextes éventuellement distincts), et dire dans le même instant que h n’est pas interprétable. Une application immédiate est la possibilité d’interpréter une croyance f comme étant simultanément vraie et fausse (cad possible dans la sémantique de L$_c$) selon deux perspectives différentes.
L$_c$ a une conception faillibiliste de la connaissance : toute pensée pouvant être fausse, L$_c$ interprète comme crédible une croyance dès l’instant où elle est produite par un raisonnement justifiable et qui ne la contredit pas. La justification est portée par la définition retenue pour construire les contextes de référence.

### La production de pensées imaginées

Les langages formels classiques infèrent des formules par application du modus ponens. Ce sont des productions par déduction, l’imagination leur échappe complètement. La cohérence sémantique d'expression qui n’est pas produite par les règles classiques du langage formel est forcément incertaine, et son apparition pourrait générer une explosion en logique classique.
Dans L$_c$, la garantie de la cohérence syntaxe permet d’étendre les connaissances par n’importe quelle autre connaissance, à condition qu’elle soit portée par une pensée nouvelle. La logique contextuelle peut donc supporter des productions par induction ou par abduction par exemple – ou, de manière générale, toute combinaison de signes syntaxiquement bien formée.