Quel est l'intérêt d'appeler -calculus une algèbre?

11

Quelle est la différence d'appeler -calculus une algèbre au lieu d'un calcul? Je pose cette question parce que j'ai lu quelque part la ligne « -calculus n'est pas un calcul mais une algèbre» (iirc, attribué à Dana Scott). Dans quel but? Merci.λλ

journée
la source
Venant d'un apprenti du sujet sans aucun aperçu: n'est-ce pas de déterminer si deux expressions lambda-calcul sont équivalentes indécidables? Cela at-il une influence sur la raison pour laquelle il ne serait pas considéré comme un "calcul"? Parce que c'est une question fondamentale qui ne peut pas être calculée par algorithme ...
Jeremy Kun

Réponses:

14

Un calcul est un système de calcul basé sur la manipulation d'expressions symboliques. Une algèbre est un système d'expressions symboliques et de relations entre elles [*]. Autrement dit, un calcul est un système pour trouver des réponses, et une algèbre est un moyen d'exprimer les relations entre les termes.

Le -calcul est soit un calcul, soit une algèbre, selon que vous voulez considérer les règles β et η comme des règles de réduction orientées ou des équations non orientées. Si vous pensez que les règles sont orientées, vous avez fixé un ordre d'évaluation et les règles vous indiquent comment prendre un terme et produire une forme normale. Si vous pensez que les règles ne sont pas orientées, elles vous donnent la relation d'égalité sur les termes λ .λβηλ

[*] Il existe également une définition catégorique de l'algèbre, qui est une définition formelle quelque peu plus restrictive que l'idée informelle. En gros, la différence est que la définition formelle de l'algèbre englobe uniquement les systèmes sans liaison variable. Les combinateurs SKI forment donc une algèbre, mais pas le -calculus.λ

Neel Krishnaswami
la source
Comme mentionné dans mon commentaire, la définition catégorique des algèbres peut être montrée comme englobant les structures avec des opérations de liaison. L'idée principale est que tandis que les structures sans liants peuvent être représentées comme des algèbres sur des ensembles, les structures avec des liants peuvent être représentées par des algèbres sur -presheafs-.
cody
AFAIK, c'est la définition de l'algèbre dans les algèbres universelles qui ne permet pas les opérations avec des signatures d'ordre supérieur (selon les fondations de John Mitchell's Foundations of Programming Languages).
Blaisorblade
10

Traditionnellement, une algèbre est un ensemble de porteuses dont les opérations satisfont certaines équations (pensez «groupe»). Il existe de nombreuses façons de généraliser la notion:

  • les algèbres multi-triées ont plusieurs ensembles de supports. Un exemple serait un module sur un anneau R , où nous voulons considérer le tout comme une seule algèbre. Un autre exemple, assez stupide, est un graphe orienté, qui a deux ensembles de porteurs, E des arêtes et V des sommets, et deux opérations, source s : E V et cible E V , ne satisfaisant à aucune équation.MREVs:EVEV

  • des axiomes plus généraux qui ne sont pas de simples équations peuvent être autorisés. Par exemple, les axiomes d'un champ sont toutes des équations à l'exception de . Un autre exemple est quelque chose comme un domaine intégral.X0XX-1=1

  • des opérations plus générales peuvent être autorisées, en particulier celles d'arité infinie, ou des opérations d'ordre supérieur qui prennent des fonctions comme arguments. Un exemple d'une opération infinitaire est le dans les algèbres médianes de Martin Escardo et Alex Simpson. Si vous allez loin dans cette direction, vous arrivez à des monades.M

En ce sens, le -calculus non typé est une algèbre car il est spécifié en termes d'un ensemble de porteuses avec certaines opérations (d'ordre supérieur) satisfaisant certaines équations ( β et η ).λβη

Andrej Bauer
la source
6

Il existe une définition assez précise de ce qu'est une algèbre dans la théorie des catégories: voir cet article par exemple. Il a fallu quelques années pour comprendre comment une structure avec des variables liées pouvait être comprise dans le même contexte que le terme structure d'algèbre couramment utilisé en mathématiques et en informatique, et il s'avère que le concept catégorique d'algèbres F est capable d'unifier deux. Je ne suis pas sûr des aspects historiques de la solution, mais une approche possible est que les algèbres pré-en-cas introduites par Fiore, Plotkin et Turi (disponibles ici ) ont réglé la question et encouragé des approches différentes mais similaires, voir par exemple Hirshowitz et al. et son doctorante Julianna Zsido .

Il reste à faire des recherches sur la façon d'utiliser les concepts catégoriels pour refactoriser et approfondir notre compréhension des structures avec des variables liées, dans l'espoir d'éliminer la "cruft" syntaxique qui comprend généralement les chapitres les plus ennuyeux des thèses sur -calculi et connexes structures.λ

cody
la source
Les algèbres F sont généralement des algèbres libres, c'est-à-dire qu'elles ne permettent pas les équations; L'introduction de la théorie des catégories de Pierce (à partir de 1992) affirme qu'il n'y a pas de développement d'équations pour les algèbres F. Je n'ai lu que des solutions dans l'abstrait de la thèse de Chung-Kil (Gil) Hur, de 2010: "Systèmes équationnels catégoriques: modèles algébriques et raisonnement équationnel". Est-ce que c'est ce que je suppose, et est-ce le premier traitement du sujet?
Blaisorblade
Je ne pense pas qu'il y ait une raison pour laquelle l'approche de l'algèbre F ne s'applique pas aux théories avec des équations. L'idée est que vous pouvez former des algèbres initiales avec des équations à partir des libres (sans équations) en "quotientant" par la théorie appropriée. Je ne sais pas grand chose sur le travail de Gil ni sur ce que Pierce voulait dire par sa remarque.
cody
Addendum: après un coup d'œil rapide, le travail de Gil avec Marcello Fiore semble traiter une notion générale de théories équationnelles pour les algèbres F.
cody
5

S'il est vrai que la notion de "calcul" est moins bien définie que la notion d '"algèbre", généralement le "calcul" implique généralement un processus de calcul, tandis que les algèbres ont des schémas de construction avec des théories équationnelles.
On pourrait dire qu'il y a plus un sentiment que les algèbres "existent déjà" en tant que structures et que nous découvrons simplement des vérités à leur sujet, plutôt que d'utiliser une méthode pour produire de nouvelles réponses qui n'existaient pas auparavant.

Si vous pensez à ce que Scott essayait d'accomplir avec les domaines Scott, sa déclaration est logique: il essayait de trouver des structures mathématiques et algébriques prédéfinies qui serviraient de sémantique fixe pour LC. Il voulait supprimer le sentiment que le sens d'un terme était tout ce qui arrivait d'un processus particulier.

Vous pourriez être intéressé par une réponse précédente à une question connexe: Qu'est - ce qui constitue la sémantique dénotationnelle?

Marc Hamann
la source
4

βηMN

Si Scott avait jamais appelé le calcul lambda une "algèbre" (ce dont je doute plutôt), alors il aurait fait un point assez subtil, à savoir que vous pouvez penser au calcul lambda comme ayant une signification a priori .

Pourtant, il aurait du mal à convaincre les algébriques de sa prétention, car il n'a pas d'équations dans le calcul lambda, il a des équivalences (c'est-à-dire au niveau méta). "L'algèbre combinatoire", en revanche, est parfaitement normale.

Uday Reddy
la source
3

Le calcul n'existe pas, mais il existe un objet mathématique bien défini appelé algèbre , bien que le mot ait de nombreuses utilisations . Cependant, je suppose que le nom a été donné dans le sens de

(...) l'étude abstraite des systèmes de numérotation et des opérations en leur sein.

λ

Janoma
la source
Regardez la réponse de Neel.
Dave Clarke
λ