• Aucun résultat trouvé

1 λ -Calcul LOFO—LogiqueFormelle(Correction)

N/A
N/A
Protected

Academic year: 2022

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

Copied!
6
0
0

Texte intégral

(1)

LOFO — Logique Formelle (Correction)

EPITA – Sans machine ni document Juin 2013 (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 est nul, non nul, positif, ou négatif, cocher nul qui est plus restrictif que positif et négatif, tous deux vrais. Répondre incorrectement est plus pénalisé que de ne pas répondre.

1 λ -Calcul

Q.1 Quelle est la forme complètement parenthésée de λxyz · xz(yz).

3 (λx · (λy · (λz · ((xz)(yz))))).

7 (λx · (λy · (λz · (x(z(yz)))))).

7 (λx · (λy · (λz · (xz))(yz))).

7 (λx · (λy · (λz · (xz)))(yz)).

7 ((λx · (λy · (λz · (xz))))(yz)).

Q.2 À quoi λn f x · f ( f (x)) n’est pas équivalent ?

7 λ f f x · f ( f (x)) 7 λx f x · f ( f (x)) 7 λxx f · x(x( f )) 3 λx f x · x(x( f )) Q.3 Quel arbre de syntaxe abstraite est correct ?

7 abs

N abs

app

x abs

var

y y

7 app

N app

M abs

abs

var

x M x

3 app

var

v app

var

u abs

abs

var

y y x

7 app

abs

x abs

y var

y abs

abs

var

y y x

Soit les combinateurs suivants :

True = λx · λy · x False = λx · λy · y

Pair = λx · λy · λ f · f xy

First = λp · p True

Second = λp · p False

(2)

1. Prouver que First (Pair M N) →

M.

2. Les entiers de Church, n sont des fonctions de répétition. Le nombre de Church 0 applique 0 fois son argument fonction à un argument valeur, 42 le fait 42 fois. On pose :

n = λ f · λx · ( f · · · ( f

| {z }

nfois

x ) · · · )

|{z}

nfois

Que calcule le combinateur S ?

S = λn · λ f · λx · f (n f x)

Correction: On reconnaît le combinateur qui calcule le successeur d’un entier de Church : il applique la fonction une fois de plus.

S n = λn · λ f · λx · f (n f x) n

β

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

= λ f · λx · f (λx · ( f · · · ( f

| {z }

nfois

x ) · · · )

|{z}

nfois

)

= λ f · λx · (λx · ( f · · · ( f

| {z }

n+1 fois

x ) · · · )

|{z}

n+1 fois

)

= n + 1

Best-of:

• S calcule 1.

• Il calcule la valeur de n au rang supperieur.

3. En considérant que le combinateur Succ prenne un entier de Church n et retourne n + 1, que vaut Φ (Pair m n) où :

Φ = λx · Pair (Second x) (Succ (Second x))

Correction: Il est clair que Second (Pair M N) →

N, ce qui se montre comme en première question.

Φ (Pair m n) = λx · Pair (Second x) (Succ (Second x)) (Pair m n)

β

Pair (Second (Pair m n)) (Succ (Second (Pair m n)))

β

Pair n (Succ (Second (Pair m n)))

β

Pair n (Succ n)

β

Pair n n + 1 4. Que calcule le combinateur P ? Le montrer.

P = λn · First (n Φ (Pair 0 0))

(3)

Correction: Appliqué à 0, on a :

P 0 = λn · First (n Φ (Pair 0 0)) 0

→ First (0 Φ (Pair 0 0))

→ First (Pair 0 0)

→ 0 Appliqué à n, pour n non nul :

P n = λn · First (n Φ (Pair 0 0)) n

→ First (n Φ (Pair 0 0))

→ First (n − 1 Φ (Pair 0 1))

→ First (n − 2 Φ (Pair 1 2))

→ . . .

→ First (0 Φ (Pair n − 1 n))

= First (Pair n − 1 n)

→ n − 1

Autrement dit, P calcule le prédécesseur d’un nombre de Church (en retournant 0 pour 0).

Best-of: Le n-ième nombre de Fibonacci.

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.

3 Calcul des Séquents Classique

Q.7 Soit π une preuve avec coupures du séquent Γ ` ∆.

7 il existe une preuve sans coupure de Γ ` ∆

7 Γ ` ∆ n’est pas nécessairement provable sans coupure 7 π peut être normalisée en une preuve sans coupure

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

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

(4)

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 ⇒ B est faux ssi A est vrai (et B est 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 prendre B = ⊥ 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.

1. Prouver A ∨ B, ¬ B ` A, en utilisant la négation intuitionniste.

Correction:

A ` A

W ` A, B ⇒ ⊥ ` A

B ` B ⊥ ` A

B, B ⇒ ⊥ ` A ⇒`

(5)

4 Déduction Naturelle Intuitionniste

Q.11 Quelle preuve de A ∧ B ⇒ B ∧ A est valide ?

3

[A ∧ B]

1

∧ r E B

[A ∧ B]

1

∧ l E A ∧I B ∧ A

⇒I

1

A ∧ B ⇒ B ∧ A

7

[A ∧ B]

1

∧ r E A B B A X

∧I B ∧ A

⇒I

1

A ∧ B ⇒ B ∧ A

7

[A ∧ B]

1

∧ r E B

[A ∧ B]

2

∧ l E A ∧I B ∧ A

⇒I

1,2

A ∧ B ⇒ B ∧ A

7

[A ∧ B]

1

∧ r E B

[A ∧ B]

2

∧ l E A ∧I B ∧ A

⇒I

2

B ⇒ B ∧ A

⇒I

1

A ∧ B ⇒ B ∧ A

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

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:

2. Prouver B ∨ ¬ B.

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

Barème:

2 si on se contente de dire impossible 3 si on précise “en logique intuitionniste”

4 si on me dit « le tiers exclu est indémontrable en logique intuitionniste » (i.e., les trois choses).

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

(6)

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

Une copie synthétique, bien orthographiée, avec un affichage clair des résultats, sera toujours mieux notée qu’une autre demandant une quelconque forme d’effort de la part

Une copie synthétique, bien orthographiée, avec un affichage clair des résultats, sera toujours mieux notée qu’une autre demandant une quelconque forme d’effort de la part

Dans ce sujet on s’intéresse aux « entiers de Church », une façon de coder les nombres naturels directement en λ-calculus, sans avoir à l’étendre avec de nouvelles

Correction: On rappelle qu’en λ -calcul simplement typé, tout terme est fortement normalisable, et il est bien clair que des termes comme Y et Θ qui font des récur- sions, ne sont

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

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