Catégorie syntaxique

Bonjour,
je décide de créer ce fil, pour me pousser à essayer de comprendre cette notion de catégorie syntaxique ou, en anglais, syntactic category. Est-ce-qu'une bonne âme pourrait m'aider à comprendre ?
Merci.
ignatus.

Réponses

  • Qu'est-ce que tu sais déjà, qu'est-ce que tu ne sais pas, qu'est-ce qui te gêne ?
  • En fait, je cherche à comprendre cette page. A partir du paragraphe 3, je ne comprends plus rien.
    J'ai aussi beaucoup de mal avec la notion d'adjonction.

    ignatus.
  • Je ne comprends pas non plus la notion de contexte, ni pourquoi elle n'apparaît que dans une théorie typée.

    ignatus.
  • Intuitivement parlant, je dirais qu'on dispose d'une théorie, avec ses objets, ses fonctions, ses relations et ses axiomes.
    Un contexte représente alors un modèle de la théorie, qui fait intervenir d'autres axiomes, en plus de ceux initiaux de la théorie. Ceci permet de démontrer des propositions qui ne pourraient pas l'être en se basant initialement sur la théorie de départ mais qui, dans le contexte particulier où l'on se place.
    Après, je ne vois pas très bien ce que pourrait être un morphisme de contextes.

    Le processus inverse me semble encore plus compliqué. On a une théorie "concrète". On peut considérer qu'elle est l'interprétation d'une "théorie logique". Il semble qu'il faille pouvoir reconnaître beaucoup d'interprétations avant d'être à même d'en dégager la "logique interne", c'est-à-dire les différents types, les axiomes de base minimaux ( comme un pgcd d'un ensemble d'entiers naturels).

    ignatus.
  • Un contexte c'est essentiellement une déclaration de variables.

    Quand tu fais une preuve mathématique, disons d'analyse, tu diras des choses comme "Soit $x$ un nombre réel, $\epsilon $ un réel strictement positif vérifiant telle chose par rapport à $x$" etc.
    En théorie des types, ces déclarations "soit machin" deviennent le contexte, ainsi tu pourras avoir un contexte $\Gamma$ qui vaut $x: \mathbb R, \epsilon : \{y : \mathbb R_+^*\mid y > \frac{1}{|x|+1}\}$ par exemple (remarque qu'ici le deuxième type dépend de $x$, mais on pourrait très bien aussi avoir par exemple $x:\mathbb R, \epsilon : \mathbb R_+^*$, etc. ).

    Une fois que tu as ça, un morphisme entre contextes est défini dans la page en question : disons que tu as deux contextes $\Gamma,\Delta$, alors un morphisme $\Gamma\to \Delta$ ce sera une manière de déclarer le contexte $\Delta$ à partir de celui de $\Gamma$.

    Par exemple, disons que tu pars juste de $\Gamma := (x: \mathbb R)$, et que tu veux trouver un $0<\epsilon < \frac{1}{|x|+1}$, bah ce sera représenté par un morphisme $\Gamma \to (x:\mathbb R, \epsilon : \mathbb R_+^*, \epsilon < \frac{1}{|x|+1})$, avec, par exemple $\Gamma \vdash x: \mathbb R, \Gamma\vdash \frac{1}{|x|+2} : \{y: \mathbb R_+^*\mid y< \frac{1}{|x|+1}\}$.

    Il y a plein d'autres morphismes, mais si tu veux un morphisme $\Gamma\to \Delta$ c'est une manière d'interpréter le contexte $\Delta$ en partant de $\Gamma$.

    Donc en résumé : un contexte c'est une liste de déclarations de variables et d'où elles habitent (j'espère que ça rend le nom "contexte" plus clair : c'est en gros le contexte de ta preuve - "dans cette preuve on aura telles et telles variables, c'est le contexte dans lequel je travaille"); et un morphisme de contextes c'est une manière de passer d'un contexte à un autre, c'est-à-dire de définir des variables qui correspondent au second contexte en partant des variables du premier contexte.
  • Merci Maxtimax pour cette clarification.
    Il n'y a donc pas d'ajout d'axiomes, mais des déclarations d'affectation de variables dans des types.
    La catégorie en question dépend donc des types que j'ai au départ, et des opérations de productions de types que je me donne.
    Ensuite, il n'y a pas toujours de morphisme entre deux contextes.
    Dans ce texte, j'avais pourant l'impression qu'il fallait aussi rajouter des axiomes...

    ignatus.
  • Bah bien sûr, une théorie a des types et des axiomes, sinon la catégorie syntaxique ne dépendrait pas de la théorie :-S

    Par exemple (celui qui est pris sur le nLab), avec les groupes, tu veux qu'un modèle de ta théorie soit un groupe, il te faut bien des axiomes pour cela.
  • Je commence à y voir (un peu) plus clair.
    Mais j'ai des problèmes de définition, entre les termes et les variables par exemple. Les termes semblent être des éléments clos, c'est-à-dire totalement définis. Alors que les variables ne semblent définies que par leur type. Un terme est la valeur prise par une variable qui est d'un type donné.
    Je ne vois pas trop ce qu'est la catégorie des contextes, sinon que cela me donne a priori toutes les variations possibles à partir d'une théorie donnée. Un contexte peut donc lui-même définir une théorie, et sa catégorie de contexte sera une sous-catégorie de la première.
    Un problème fondamental est de savoir quand on a affaire à un terme et pas à une simple variable. En effet, les morphismes reviennent à des substitutions de variables, mais aussi de termes. Comment donc savoir quand deux morphismes sont égaux ?

    Ce que j'aimerais comprendre aussi, c'est le processus inverse : trouver la logique interne à une catégorie.
    En fait, j'aimerais comprendre la notion de topos classifiant.

    ignatus.
  • Un terme est défini dans un contexte. Par exemple, dans la théorie des groupes, tu pourras avoir le terme $xy$ dans le contexte $x:G,y:G,z: G$, mais pas dans le contexte $x:G$ (qui est $y$ ???)
    Un terme est un machin que tu peux construire avec des variables et avec les fonctions élémentaires de ta théorie (dans le cas des groupes : la multiplication, l'inverse, le neutre); chaque variable étant déclarée dans ton contexte et étant d'un type fixé.

    "Comment savoir quand deux morphismes sont égaux ?" : c'est une très bonne question, ça va un peu dépendre des présentations. Souvent on dit que deux morphismes sont égaux quand les termes qui les constituent sont prouvablement (au sens de la théorie) égaux dans le contexte donné.

    Par exemple, dans la théorie des groupes, tu prends $\Gamma := (x:G, y:G,z:G)$ et $\Delta := (a:G)$, alors tu as en particulier deux morphismes $\Gamma \to \Delta$ définis par les termes $(xy)z$ et $x(yz)$. Ces deux-là sont prouvablement égaux, donc les morphismes correspondants aussi.
    En particulier, la question de savoir quand deux morphismes sont égaux n'est pas évidente (rien que dans la théorie des groupes, cf. l'indécidabilité du word problem)

    Pour une première excursion vers les topos classifiants (même si c'en est encore bien loin - mais je pense que c'est une étape nécessaire), je te conseille de lire l'interprétation d'Awodey des idées de Lawvere, ici (c'est le chapitre 1).
    Faut dire que Lawvere a développé ces idées pendant sa thèse, elle est vraiment géniale (aujourd'hui c'est des trucs relativement basiques, mais il faut penser à l'époque !!), et donne les idées essentielles de la sémantique fonctorielle (c'est son titre d'ailleurs), qui est à la base de la théorie des topos classifiants.
    Je pense qu'une fois que tu auras compris cette idée dans le cas relativement simple des théories algébriques, tu seras mieux armé pour attaquer des théories plus complexes (notamment typées), et donc à terme les topos classifiants.
  • Merci pour tes indications.
    Je ne crois pas pouvoir mesurer la complexité de la question sur l'égalité des morphismes.
    Merci pour le document.

    ignatus.
Connectez-vous ou Inscrivez-vous pour répondre.