Quelqu'un pourrait-il expliquer la différence entre les types dépendants et les types de raffinement? Si je comprends bien, un type de raffinement contient toutes les valeurs d’un type satisfaisant un prédicat. Existe-t-il une caractéristique des types dépendants qui les distingue? Si cela peut aider, je suis tombé sur les types …
J'ai vu qu'il était mentionné que les systèmes de types dépendants ne sont pas inférables, mais sont vérifiables. Je me demandais s'il existait une explication simple de la raison pour laquelle il en était ainsi et s'il existait ou non une limite de "dépendance" dans laquelle les types peuvent être …
Quelle serait la meilleure introduction aux idées de Per Martin-Löfs sur la théorie des types? J'ai regardé certaines conférences de l'université d'été de l'Oregon PL, mais la question suivante me laisse toujours perplexe: Qu'est-ce qu'un type? Je sais ce qu'est un ensemble, car vous pouvez les définir à l'aide des …
Je sais qu'Idris a des types dépendants mais n'est pas complet. Que peut-il ne pas faire en abandonnant la complétude de Turing, et est-ce lié à avoir des types dépendants? Je suppose que cette question est assez spécifique, mais je ne connais pas énormément les types dépendants et les systèmes …
EDIT: J'ai maintenant posé une question similaire sur la différence entre les catégories et les ensembles. Chaque fois que je lis sur la théorie du type (qui est certes plutôt informelle), je ne peux pas vraiment comprendre comment elle diffère de la théorie des ensembles, concrètement . Je comprends qu’il …
Si quelque chose est simple, alors il devrait être complètement explicable en quelques mots. Cela peut être fait pour le λ-calcul: Le λ-calcul est une grammaire syntaxique (fondamentalement, une structure) avec une règle de réduction (ce qui signifie qu'une procédure de recherche / remplacement est appliquée à plusieurs reprises à …
Fondamentalement, je connais trois fondements des mathématiques Théorie des ensembles Théorie des types Théorie des catégories Alors, en quoi les langages de programmation et les fondements des mathématiques sont-ils liés? MODIFIER La question d'origine était "Langages de programmation basés sur les fondements des mathématiques" avec le paragarphe ajouté de Et …
De nombreux manuels couvrent les types d'intersection dans le lambda-calcul. Les règles de typage pour l'intersection peuvent être définies comme suit (en plus du lambda-calcul simplement tapé avec sous-typage): Γ ⊢ M: T1Γ ⊢ M: T2Γ ⊢ M: T1∧ T2( ∧ I)Γ ⊢ M: ⊤( ⊤ I)Γ⊢M:T1Γ⊢M:T2Γ⊢M:T1∧T2(∧je)Γ⊢M:⊤(⊤je) \dfrac{\Gamma \vdash M …
Wikipédia ainsi que d'autres sources que j'ai trouvées listent le voidtype C comme type d'unité par opposition à un type vide. Je trouve cela déroutant car il me semble que cela voidcorrespond mieux à la définition d'un type vide / bas. Autant voidque je sache , aucune valeur n'habite . …
J'apprends la langue de programmation Haskell et j'essaie de comprendre ce qu'est la différence entre a typeet a kind. Si je comprends bien, a kind is a type of type. Par exemple, a ford is a type of caret a car is a kind of vehicle. Est-ce une bonne façon …
La plupart d'entre nous connaissent la correspondance entre la logique combinatoire et le calcul lambda . Mais je n'ai jamais vu (peut-être que je n'ai pas regardé assez profondément) l'équivalent de "combinateurs typés", correspondant au calcul lambda simplement tapé. Une telle chose existe-t-elle? Où trouver des informations à ce sujet?
En bref: comment les systèmes de types sont-ils classés dans des contextes académiques; en particulier, où puis-je trouver des sources fiables qui rendent les distinctions entre les différents types de système de types clairs? Dans un sens, la difficulté avec cette question n'est pas que je ne trouve pas de …
Il est bien connu que l'inférence de type Hindley-Milner (le -calculus simplement typé avec polymorphisme) a une inférence de type décidable: vous pouvez reconstruire des types de principe pour n'importe quel programme sans aucune annotation.λλ\lambda L'ajout de classes de style Haskell semble préserver cette décidabilité, mais d'autres ajouts rendent l'inférence …
Dans le script que je lis actuellement sur le calcul lambda, l'équivalence bêta est définie comme suit: L' équivalence est la plus petite équivalence qui contient .ββ\beta≡β≡β\equiv_\beta→β→β\rightarrow_\beta Je n'ai aucune idée de ce que ça veut dire. Quelqu'un peut-il l'expliquer en termes plus simples? Peut-être avec un exemple? J'en ai …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.