Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Pierre Letouzey
natded
Commits
364ea391
Commit
364ea391
authored
Sep 03, 2019
by
Pierre Letouzey
Browse files
talk in english
parent
e2efcd9d
Changes
2
Hide whitespace changes
Inline
Side-by-side
talk/expose.md
View file @
364ea391
% Certification
Coq d'un cours de logique de master
%
Coq
Certification
of a Master logic course
% Pierre Letouzey
% 3
s
eptemb
r
e 2019
% 3
S
eptembe
r
2019
##
L'informatique, ça peut être assez fumeux
...
##
Off-topic : a pipe-related business in Italy
...
\i
ncludegraphics[width=
\l
inewidth]{tabacchi.jpg}
## En cas de doute, suivre le chemin canonique ...
\p
ause
Désolé, c'est un peu fumeux...
## Off-topic : if lost in Italy, follow the canonical way ...
\i
ncludegraphics[width=
\l
inewidth]{piombino_via_canonica.jpg}
## Pointe
u
rs
## Pointers
-
Le
cours
d
e "preuves assistées par ordinateur" (Master 1
ici
) :
<https://www.irif.fr/users/letouzey/edu/preuves>
-
My
course "preuves assistées par ordinateur" (Master 1
here
) :
<https://www.irif.fr/users/letouzey/edu/preuves>
-
Le poly d'
Alexandre Miquel :
<https://www.irif.fr/~letouzey/preuves/cours.pdf>
-
The course pdf by
Alexandre Miquel :
<https://www.irif.fr/~letouzey/preuves/cours.pdf>
-
L
e n
ouveau
d
é
velop
pe
ment
Coq (et cet exposé
) :
<https://gitlab.math.univ-paris-diderot.fr/letouzey/natded>
-
Th
e n
ew Coq
d
e
velopment
(and this talk
) :
<https://gitlab.math.univ-paris-diderot.fr/letouzey/natded>
##
Réalisation de cette année
##
This year's contribution
Encodage "profond" d'un calcul des prédicats e
n Coq
Deep encoding of a predicate calculus i
n Coq
-
Déduction naturelle (avec
context
e
s),
1er
ord
r
e
-
Visée pédagogique (rien de révolutionnaire, mais ...
)
-
Bas
é sur le poly d'
Alexandre Miquel
-
Modèles classiques (Coq) et théorème de complétude
\f
ootnote{cas dénombrabl
e}
-
Natural Deduction style (with
contexts),
first
orde
r
-
Pedagogical aim (no pioneer work, but not so obvious either
)
-
Bas
ed as much as possible on
Alexandre Miquel
document
-
Classical models (Coq) and completeness theorem
\f
ootnote{countable cas
e}
##
Pourquoi
?
##
Why
?
P
as de doute envers ces résultats très standards. Mais
:
P
retty unlikely to find bugs in such standard results. But
:
-
Montrer aux étudiants un usage
r
é
alist
e de Coq
-
Venir en appui des preuves méta répétitives
**et**
délicates
-
Illustrer l'aspect mécanis
able
(un
micro pro
u
ve
ur exécutable
?)
-
Diff
é
rent
es
exp
é
riment
ation
s (alpha, locally-nameless, ...)
-
A terme : Coq pour corriger les TD de déduction naturelle
?
-
Shows a
r
e
alist
ic usage of Coq to students
-
Helps meta proofs (boring
**and**
tedious)
-
Highlights the computability (an execut
able micro prove
r
?)
-
Diff
e
rent exp
e
riments (alpha, locally-nameless, ...)
-
Coq to proof-check students homework on natural deduction
?
##
Littérature
##
Related Works
-
De
s
encod
ages profonds de logique à la pell
e
-
Ex
e
mple: l
ogique linéaire par
O. Laurent
-
De
ep
encod
ings of logics are commonplac
e
-
Ex
a
mple: l
inear logic by
O. Laurent
-
Cf aussi le
POPLmark Challenge
pour le codage des lieurs
-
J. Margetson, 2004 :
théorème de complétude e
n Isabelle
-
See also
POPLmark Challenge
concering the binder encoding
-
J. Margetson, 2004 :
completeness theorem i
n Isabelle
<https://www.isa-afp.org/entries/Completeness-paper.pdf>
##
Un aperçu du poly d'origine
##
A glimpse of the reference document
Cf
<https://www.irif.fr/~letouzey/preuves/cours.pdf>
E
n particul
ie
r :
I
n particul
a
r :
-
la dé
finition
récursive des
term
e
s
et
formul
e
s
-
la dé
finition
de l'
alpha-
é
quivalence
-
la dé
finition
des dérivations de preuve
s
-
les
th
é
ories
de
Peano
et de
ZF
-
un example de mé
ta-th
é
or
ie : le théorème de complétude
-
De
finition
of
terms
and
formul
a
s
-
De
finition
of
alpha-
e
quivalence
-
De
finition
of proof derivation
s
-
Concrete
th
e
ories
:
Peano
,
ZF
-
Some me
ta-th
e
or
y, for instance the incompleteness theorem
##
Pourquoi ce style de
logi
que
?
##
Why this choice of
logi
c
?
-
Certes pas de propriété de la sous-formule
-
Certes pas propice à l'élimination des coupures
-
Mais
usage
**et**
m
é
ta-th
é
or
i
e relative
ment
simple
s
-
Prolongement vers
Curry-Howard,
ordre supérieu
r, Coq ...
-
Ok, no sub-formula property (bad for proof search)
-
Ok, problematic cut elimination
-
But both
usage
and
m
e
ta-th
e
or
y ar
e relative
ly
simple
-
Extension-friendly :
Curry-Howard,
higher orde
r, Coq ...
##
Points délicats pour les é
tud
ia
nts
##
Difficult points for s
tud
e
nts
-
Les v
ariables
et l'
alpha-
é
quivalence
-
Les
conditions
de bord dans
$
\f
orall$-intro
et
$
\e
xists$-elim
-
Lemme de s
ubstitution
-
Plus généralement preuves méta répé
titive
s
**
et
**
subt
i
les
-
V
ariables
and
alpha-
e
quivalence
-
Side-
conditions
in
$
\f
orall$-intro
and
$
\e
xists$-elim
-
S
ubstitution
lemma
-
More generally : repe
titive
**
and
**
subtle
meta-proof
s
## Superficiel / Profond ?
Shallow Embedding / Deep Embedding ?
## Shallow Embedding / Deep Embedding ?
##
Comment coder les l
ie
u
rs ?
##
How to encode binders (quantif
iers
)
?
-
nommé
-
indice de
De Bruijn
-
Named
-
De Bruijn
indices
-
HOAS
-
l
ocally nameless
-
L
ocally nameless
-
...
## L
ignes de code
Coq
## L
oC (Lines of
Coq
)
```
201 AsciiOrder.v + StringOrder.v
...
...
@@ -110,16 +112,16 @@ Shallow Embedding / Deep Embedding ?
10884 total
```
##
Visite guidée des fichiers Coq
##
Guided tour of Coq files
##
Conclusions & Perspectives
##
Future
A faire
:
To do
:
-
Un binaire autonome
(micro assistant
de preuve
)
-
Finir quelques bricoles (Théorème de Skolem)
-
Théorème d'incomplétude de Gödel
?
-
Aspect
p
é
dagogi
que à améliorer (un atelier de preuve
?)
-
A standalone executable program
(micro
proof-
assistant)
-
Skolem theorem (should be obvious now)
-
Gödel incompleteness theorems
?
-
Improve
p
e
dagogi
cal aspects (a proof "workshop"
?)
-
ZF ?
Plus long terme : d'autres cours Coq-ifiables
?
More generally, which other courses could benefit from Coq
?
talk/expose.pdf
View file @
364ea391
No preview for this file type
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment