• Aucun résultat trouvé

1 λ -Calcul LOFO—LogiqueFormelle(Correction)

N/A
N/A
Protected

Academic year: 2022

Partager "1 λ -Calcul LOFO—LogiqueFormelle(Correction)"

Copied!
11
0
0

Texte intégral

(1)

LOFO — Logique Formelle (Correction)

EPITA – Documents, ordinateurs et calculatrices sont interdits Juin 2012 (1h30)

Bien lire les questions, chaque mot est important. Écrire court, juste, et bien. Une argumentation informelle mais convaincante est souvent suffisante.

Pour les questions à choix multiples (numérotées Q.1, Q.2 etc.) aucune réponse manuscrite ne sera corrigée : répondre sur les formulaires. Renseigner les champs d’identité. Il y a exactement une et une seule réponse juste pour ces questions. Si plusieurs réponses sont valides, sélectionner la plus restrictive. Par exemple s’il est demandé si 0 estnul,non nul,positif, ou négatif, cocher nulqui est plus restrictif quepositifetnégatif, tous deux vrais. Répondre incorrectement est plus pénalisé que de ne pas répondre.

1 λ -Calcul

Q.1 Quelle équivalence estfausse? 7 xλx·xxx≡xλy·(yy)y

3 xλx·xxx≡xλy·y(yy)

7 xλx·xx≡x(λy·yy) 7 λxy·xy≡λab·ab Q.2 Quelle est la forme complètement parenthésée deλn f x·f(n f x).

7 (λx·(λf·(λn·(f((n f)x))))) 3 (λn·(λf·(λx·(f((n f)x)))))

7 (λx·(λf ·(λn·f)))((n f)x)) 7 (λn·)(λf·)λx·(f((n f)x))

Best-of:

• ((λx).(λy).(y(xx)y))((λx).(λy).(y(xx)y)) Q.3 Quel arbre de syntaxe abstraite est correct ?

7 abs

N abs

app

x abs

var

y y

3 app

var

v app

var

u abs

abs

var

y y x

7 app

N app

M abs

abs

var

x M x

7 app

abs

x abs

y var

y abs

abs

var

y y x

Soit le combinateur suivant :

Θ = (λxy·y(xxy))(λxy·y(xxy))

(2)

1. ÉcrireΘen le parenthésant complètement.

Correction:

Θ = λx·

λy·(y((xx)y)) λx·

λy·(y((xx)y))

(1) 2. Représenter l’arbre de syntaxe abstraite deΘen utilisant les constructeursvar,absetapp,

et les noms des variables pour feuilles.

Correction: app

abs

abs

app

app

var

y app

var

x var

x y y x abs

abs

app

app

var

y app

var

x var

x y y x

2

(3)

Best-of:

3. Prouver queΘest un opérateur de point fixe en démontrant que pour touteλ-fonctiongon aΘg=

β g(Θg).

Correction: Posonsθ=λxy·y((xx)y), i.e.,Θ=θθ. Alors Θg = (θθ)g

= (λxy·y((xx)y)θ)g

β λy·y((θθ)y)g

β g((θθ)g)

= g(Θg)

(4)

Barème: Je n’ai pas accepté les réponses qui font les deux réductions en une seule étape, surtout quand elles sont marquées par→.

Best-of:

• La bêta-réduction Θg =

β g(Θg) est vrai car le combinateur de Turing se décompose en 2 expressions tout à fait similaires. Il s’agit donc, par consé- quent, d’un opérateur point-fixe.

• J’ai souvent vu des pseudo-réductions dans le style des suivantes. Je les consigne uniquement dans l’espoir que les générations futures ne feront plus de pareilles horreurs.

Θg = ((λxy·y(xxy))(λxy·y(xxy)))g

→ (λxg·g(xxg))(λxg·g(xxg)) . . .

Θg = ((λxy·y(xxy))(λxy·y(xxy)))g

→ (g(xxg))(g(xxg)) . . .

4. Que permettent les combinateurs de point fixe ?

Correction: À simuler la récursion : ils prennent une fonction f, et en répètent l’application jusqu’à l’obtention d’un point fixe, i.e., unxtel quex= f(x).

4

(5)

Best-of:

• À combiner des points fixes.

• Avoir un opérateur/élément neutre pour le lambda calcul.

• Ces oppérateurs (sic) permettent de simplifier les expression (re-sic).

• Ils permettent de dupliquer des variables à gauche.

• Les combinateurs de point fixe permettent de dupliquer les fonctions.

• Ils permettent de faire des applications infinies.

• Ils permettent de montrer qu’une variable n’a pas été modifiée par la fonc- tion. Pour f(x)=x2, on a 0 et 1 par exemple.

• Les combinateurs de point fixe permettent de réaliser des bêta-réduction qu’il n’aurait pas été possible de faire autrement.

• Les opérateurs de point fixes permettent de générer des entiers.

• Ils permettent

• Les combinateurs de point-fixe permettent de dédoubler un terme.

• Ils permettent de combiner les points-fixes, évidemment.

• Les combinateurs de point fixe permettent de se passer deλ.

2 λ -Calcul Simplement Typé

Q.4 Toutλ-terme est typable. . .

7 vrai 3 faux

Q.5 Toutλ-terme qui admet un type simple est. . . 7 non nécessairement normalisable

7 faiblement normalisable

3 fortement normalisable 7 normalisé

Q.6 Quel type admetλxy·xy.

7 ρ→σ→τ

3 (σ→τ)→σ→τ 7 (τ→σ)→σ→τ

7 (τ→(ρ→ρ))→τ→(ρ→ρ) Correction: La réponse (d) n’est pas fausse, mais (b) est plus générale.

1. Le prouver.

Barème:

2 Si la preuve est correcte, mais les hypothèses ne sont pas déchargées.

(6)

Best-of:

3 Calcul des Séquents Classique

1. Éliminer la coupure dans la preuve suivante.

A`A

` ∨l A`A∨B

B`B

W` B,A∨B`B B,A`B Cut

X` A,B`B

∧ ` A∧B`B

Correction:

B`B W` B,A`B

X` A,B`B

∧ ` A∧B`B

6

(7)

Best-of:

Q.7 Pour toute preuve avec coupures. . .

3 elle peut être normalisée en une preuve sans coupure mais ce processus est très coûteux 7 elle peut être normalisée en une preuve sans coupure

7 il existe une preuve sans coupure

7 il n’existe pas nécessaire de preuve équivalente sans coupure

Q.8 Quelle déduction est une preuve de ((A⇒B)⇒A)⇒A(Loi de Peirce) ?

(8)

7

A`A B`B A,A⇒B`B ⇒`

`⇒

A⇒B`A⇒B

`X

`A⇒B,A⇒B

`C

`A⇒B

A`A

`⇒

`A⇒A

`⇒

`((A⇒B)⇒A)⇒A

7

A`A

`⇒

`A⇒B,A A`A

⇒`

(A⇒B)⇒A`A

`⇒

`((A⇒B)⇒A)⇒A

3

A`A

`W A`A,B

`⇒

`A⇒B,A A`A

⇒`

(A⇒B)⇒A`A,A

`C (A⇒B)⇒A`A

`⇒

`((A⇒B)⇒A)⇒A

7

A⇒B`A⇒B

`X

`A⇒B,A⇒B

`C

`A⇒B A`A

⇒`

(A⇒B)⇒A`A

`⇒

`((A⇒B)⇒A)⇒A Q.9 Quelle déduction prouve (A⇒B)∨A?

3

A`A

`W A`B,A

`⇒

`A⇒B,A

`l∨

`A⇒B∨A,A

`r∨

`A⇒B∨A,A⇒B∨A

`C

`A⇒B∨A

7

A`

`W A`B

`A⇒B

` ∨r

`(A⇒B)∨A

7

B`B

`W B`A,B

⇒`

A⇒B`A

`r∨

`A⇒B∨A

7

A`A C`

`A

`r∨

`(A⇒B)∨A

Q.10 Cette preuve est-elle intuitionniste ? 7 Non, elle part du tiers exclus.

3 Non, certains des séquents ont deux formules à droite.

7 Oui,A⇒Best faux ssiAest vrai (etBest faux) donc on a bien intuitivement (A⇒B)∨A.

7 Oui, car aucun mot du langage n’apparaît dans les hypothèses.

Correction: Non, certains des séquents ont deux formules à droite (e.g., A ` A,B). Et effectivement, il suffit de prendreB = ⊥ pour voir pourquoi ce résultat n’est pas (prouvable en logique) intuitionniste.

Ça vous amusera peut-être d’apprendre que les propositions incorrectes sont ti- rées des best-ofs des années précédentes.

2. ProuverA∨B,¬B`A, en utilisant la négation intuitionniste.

Correction:

A`A

W` A,B⇒ ⊥ `A

B`B ⊥ `A B,B⇒ ⊥ `A ⇒`

∨ ` A∨B,B⇒ ⊥ `A

8

(9)

Best-of:

3. ProuverA∨B,¬B`A, en utilisant la négation classique.

Correction:

A`A W` A,¬B`A

B`B

`W B`B,A B,¬B`A` ¬

∨ ` A∨B,¬B`A

4 Déduction Naturelle Intuitionniste

Q.11 Quelle preuve deA∧B⇒B∧Aest valide ?

3

[A∧B]1

∧rE B

[A∧B]1

∧lE A∧I B∧A

⇒I1 A∧B⇒B∧A

7

[A∧B]1

∧rE A B B AX

∧I B∧A

⇒I1 A∧B⇒B∧A

7

[A∧B]1

∧rE B

[A∧B]2

∧lE A∧I B∧A

⇒I1,2 A∧B⇒B∧A

7

[A∧B]1

∧rE B

[A∧B]2

∧lE A∧I B∧A

⇒I2 B⇒B∧A

⇒I1 A∧B⇒B∧A

1. Prouver (A∧B)∨(A∧C)`A∧(B∨C).

Correction:

(A∧B)∨(A∧C)

[A∧B]1 A

[A∧C]1 A1 A

(A∧B)∨(A∧C)

[A∧B]2 B B∨C

[A∧C]2 C B∨C B∨C 2

A∧(B∨C) 2. ProuverA∧(B∨C)`(A∧B)∨(A∧C).

(10)

Correction:

A∧(B∨C) B∨C

A∧(B∨C) A [B]1

A∧B (A∧B)∨(A∧C)

A∧(B∨C) A [C]1

A∧C (A∧B)∨(A∧C) (A∧B)∨(A∧C) 1

Best-of:

3. ProuverB∨ ¬B.

Correction: Il est bien entendu impossible de démontrer le tiers exclus en lo- gique intuitionniste.

Best-of:

10

(11)

5 À propos de ce cours

Bien entendu je m’engage à ne pas tenir compte de ces renseignements pour vous noter. Ils ne sont pas anonymes, car je suis curieux de confronter vos réponses à votre note. En échange, quelques points seront attribués pour avoir répondu. Merci d’avance.

Répondre sur les formulaires de QCM. Vous pouvez cocher plusieurs réponses par question.

Q.12 Assiduité 7 Jamais venu

7 Presque jamais venu

7 Souvent venu 7 Toujours présent Q.13 Prises de notes

7 Aucune 7 Sur papier

7 Sur ordinateur à clavier 7 Sur ardoise

7 Sur le journal du jour

Q.14 Travail personnel 7 Rien

7 Bachotage récent

7 Relu les notes entre chaque cours

7 Fait les anales 7 Lu d’autres sources

Q.15 Ce cours

7 Est incompréhensible et j’ai rapidement abandonné

7 Est difficile à suivre mais j’essaie

7 Est facile à suivre une fois qu’on a compris le truc

7 Est trop élémentaire Q.16 Ce cours

7 Ne m’a donné aucune satisfaction 7 N’a aucun intérêt dans ma formation 7 Est une agréable curiosité

7 Est nécessaire mais pas intéressant 7 Je le recommande

Q.17 L’enseignant

7 N’est pas pédagogue

7 Parle à des étudiants qui sont au dessus de mon niveau

7 Me parle

7 Se répète vraiment trop

7 Se contente de trop simple et devrait pousser le niveau vers le haut

Références

Documents relatifs

Toute utilisation commerciale ou impression systématique est consti- tutive d’une infraction pénale.. Toute copie ou impression de ce fichier doit conte- nir la présente mention

Correction: Cette formule n’est pas prouvable en logique intuitionniste, comme nous l’avons vu dans l’exercice précédent.. 5 À propos de

Ils ne sont pas anonymes, car je suis curieux de confronter vos réponses à votre note.. En échange, quelques points seront attribués pour

Représentez l’arbre de syntaxe abstraite de FMN en utilisant les constructeurs var, abs et app, et les noms des variables pour

Vous pouvez cocher plusieurs réponses par question. Q.12 Assiduité 7

Par exemple s’il est demandé si 0 est nul, non nul, positif, ou négatif, cocher nul qui est plus restrictif que positif et négatif, tous deux vraisa. Répondre incorrectement est

Et effectivement, il suffit de prendre B = ⊥ pour voir pourquoi ce résultat n’est pas (prouvable en logique) intuitionniste.. Ça vous amusera peut-être d’apprendre que

Pour les questions à choix multiples (numérotées Q.1, Q.2 etc.) aucune réponse manuscrite ne sera corrigée : répondre sur les formulaires.. Renseigner les