Questions marquées «logic»

13
Que gagnons-nous à avoir des «types dépendants»?

Je pensais avoir bien compris la saisie dépendante (DT), mais la réponse à cette question: /cstheory/30651/why-was-there-a-need-for-martin-l%C3% B6f-to-create-intuitionistic-type-theory m'a fait penser le contraire. Après avoir lu sur DT et essayé de comprendre ce qu'ils sont, j'essaie de me...

13
Tester si une preuve arbitraire est circulaire?

Je pensais aux preuves et suis tombé sur une observation intéressante. Les preuves sont donc équivalentes aux programmes via l'isomorphisme de Curry-Howard, et les preuves circulaires correspondent à une récursion infinie. Mais nous savons par le problème de l'arrêt qu'en général, tester si un...

12
Prouver la tautologie avec coq

Actuellement, je dois apprendre le Coq et je ne sais pas comment gérer un or: Par exemple, aussi simple soit-il, je ne vois pas comment prouver: Theorem T0: x \/ ~x. J'apprécierais vraiment, si quelqu'un pouvait m'aider. Pour référence, j'utilise cette feuille de triche . Voici également un exemple...

12
Qu'est-ce qu'une «contradiction» dans la logique constructive?

Dans Fondements pratiques pour les langages de programmation , Robert Harper dit Si pour qu'une proposition soit vraie signifie en avoir la preuve, que signifie qu'une proposition est fausse? Cela signifie que nous en avons une réfutation , montrant qu'elle ne peut pas être prouvée. Autrement dit,...

11
Livre d'introduction sur la logique et le calcul

Pouvez-vous me donner quelques suggestions sur un bon livre d'introduction (mais complet) sur la logique et le calcul? Voici quelques sujets flous auxquels je pense: Presburger artihm., PA, ZF, ZFC, HOL Théorie des ensembles, Théorie des types Modélisation du calcul (machines de Turing) dans...

11
Existe-t-il une différence entre et ?

J'apprends actuellement le calcul lambda et je me posais des questions sur les deux différents types d'écriture d'un terme lambda. λxy.xyλxy.xy\lambda xy.xy λx.λy.xyλx.λy.xy\lambda x.\lambda y.xy Y a-t-il une différence de sens ou de manière d'appliquer la réduction bêta, ou s'agit-il simplement de...

11
Déduire les types de raffinement

Au travail, j'ai été chargé de déduire des informations de type sur un langage dynamique. Je réécris des séquences d'instructions en imbriquéeslet expressions , comme ceci: return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z if x then T else F; Z => if x then...

11
Exemple de solidité et d'exhaustivité de l'inférence

L'exemple suivant est-il correct pour savoir si un algorithme d' inférence est solide et complet ? Supposons que nous ayons des aiguilles a, b, c dans une botte de foin, et ayons également un algorithme d'inférence conçu pour trouver des aiguilles. son - Seules les aiguilles a, b et c sont...

10
Réécriture des termes; Calculer les paires critiques

J'ai essayé de résoudre l'exercice suivant mais je suis resté coincé en essayant de trouver toutes les paires critiques . J'ai les questions suivantes: Comment savoir quelle paire critique a produit une nouvelle règle? Comment savoir si j'ai trouvé toutes les paires critiques? Soit où est binaire,...