Nominal/LF/index.html
author Christian Urban <christian dot urban at kcl dot ac dot uk>
Wed, 30 Mar 2016 17:16:41 +0100
changeset 414 05e5d68c9627
parent 413 78b2ea2053f1
child 429 882ff9b28510
permissions -rw-r--r--
updated
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
402
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     1
<?xml version="1.0" encoding="utf-8"?>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     2
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     3
<html>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     4
<head>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     5
  <title>The Nominal Datatype Package</title>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     6
  <link rel="stylesheet" href="nominal.css">
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     7
</head>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     8
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     9
<body>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    10
<h1>Mechanising the Metatheory of LF</h1>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    11
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    12
<h3>by Christian Urban, James Cheney and Stefan Berghofer</h3>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    13
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    14
<h4>Abstract</h4>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    15
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    16
  LF is a dependent type theory in which many other formal systems can
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    17
  be conveniently embedded.  However, correct use of LF relies on
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    18
  nontrivial metatheoretic developments such as proofs of correctness
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    19
  of decision procedures for LF's judgments.  Although detailed
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    20
  informal proofs of these properties have been published, they have
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    21
  not been formally verified in a theorem prover. We have formalized 
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    22
  these properties within Isabelle/HOL using
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    23
  the Nominal Datatype Package, closely following a recent article by
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    24
  Harper and Pfenning.  In the process, we identified and resolved a
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    25
  gap in one of the proofs and a small number of minor lacunae
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    26
  in others.  We also formally derive a version of the type checking 
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    27
  algorithm from which Isabelle/HOL can generate executable code. 
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    28
  Besides its intrinsic interest, our formalization
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    29
  provides a foundation for studying the adequacy of LF encodings, the
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    30
  correctness of Twelf-style metatheoretic reasoning, and the
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    31
  metatheory of extensions to LF.<P>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    32
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    33
<b>Technical Report</b>
413
78b2ea2053f1 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 412
diff changeset
    34
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/Nominal/LF/techreport.pdf">[pdf]</A><BR>  
402
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    35
(This technical report contains in some sections more details of our development 
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    36
than we presented in the LICS'08 paper, and also a new section on the
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    37
locally nameless representation of binders and on code generation.)
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    38
<p>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    39
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    40
<b>Nominal Isabelle Development</b>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    41
<p> (includes all three developments discussed in the technical report)
413
78b2ea2053f1 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 412
diff changeset
    42
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/Nominal/LF/LF.tgz">[LF.tgz]</A>
402
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    43
<p>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    44
<hr>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    45
<!-- hhmts start -->
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    46
Last modified: Fri Oct 23 17:42:50 CEST 2009
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    47
<!-- hhmts end -->
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    48
<a href="http://validator.w3.org/check/referer">[Validate this page.]</a>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    49
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    50
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    51
</body>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    52
</html>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    53
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    54
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    55