Nominal/LF/index.html
author Christian Urban <christian.urban@kcl.ac.uk>
Tue, 07 Jan 2025 12:42:42 +0000
changeset 653 2807ec31d144
parent 465 4dac76eb27d9
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">
465
4dac76eb27d9 updated
Christian Urban <urbanc@in.tum.de>
parents: 429
diff changeset
     7
  <BASE HREF="http://nms.kcl.ac.uk/christian.urban/Nominal">
429
882ff9b28510 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 413
diff changeset
     8
402
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     9
</head>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    10
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    11
<body>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    12
<h1>Mechanising the Metatheory of LF</h1>
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
<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
    15
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    16
<h4>Abstract</h4>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    17
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    18
  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
    19
  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
    20
  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
    21
  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
    22
  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
    23
  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
    24
  these properties within Isabelle/HOL using
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    25
  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
    26
  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
    27
  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
    28
  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
    29
  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
    30
  Besides its intrinsic interest, our formalization
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    31
  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
    32
  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
    33
  metatheory of extensions to LF.<P>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    34
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    35
<b>Technical Report</b>
465
4dac76eb27d9 updated
Christian Urban <urbanc@in.tum.de>
parents: 429
diff changeset
    36
<A HREF="http://nms.kcl.ac.uk/christian.urban/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
    37
(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
    38
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
    39
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
    40
<p>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    41
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    42
<b>Nominal Isabelle Development</b>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    43
<p> (includes all three developments discussed in the technical report)
465
4dac76eb27d9 updated
Christian Urban <urbanc@in.tum.de>
parents: 429
diff changeset
    44
<A HREF="http://nms.kcl.ac.uk/christian.urban/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
    45
<p>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    46
<hr>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    47
<!-- hhmts start -->
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    48
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
    49
<!-- hhmts end -->
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    50
<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
    51
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    52
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    53
</body>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    54
</html>
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    55
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    56
9e089afe5086 added Nominal
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    57