PL Seminar: Twelf & LF


In this course, we will study LF and Twelf using Pfenning's notes, Computation and Deduction.

MeetingM 9-11am, Tech L170
WF 9-10am, Tech M128

Mailing listsubscribe / info

Twelf InstallationIf you have questions about any of this, post on the mailing list.
  1. Install SML/nj 110.53
  2. Download twelf-1-5R1.tar.gz
  3. unpack, and cd into the twelf/ directory
  4. edit the Makefile to define the sml variable (near the top)
  5. startup sml (from the first step) and enter the following expressions
      - CM.make "";
      - SMLofNJ.exportFn ("bin/.heap/twelf-server", Server.server);
    (the hyphen is the sml prompt). The first one should take a while and the second one should exit SML.
  6. At the shell prompt, type make twelf-server this should create bin/twelf-server. Run it and you should see this output:
      Twelf 1.5R1, Mar 8, 2005 (tabling)
      %% OK %%
    (type control-d to exit)
  7. Then, type make twelf-emacs and follow the instructions, updating your ~/.emacs file.
Docs for twelf: twelf.pdf

(before class)
(during class)
9/22 & 9/241.1-1.3, 2.1-2.5, pages 1-242.1-2.4
9/27no class
9/29no class
10/12.6, 2.72.8, 2.14, 2.17
10/4continue with 2.14
10/6continue with 2.14
10/83.1, 3.2
10/113.1, 3.2
10/133.1, 3.2start proof of thm 3.1
10/153.1, 3.2redefine canonical judgment to avoid ellipses
10/18no class
10/20no class
10/223.3-3.93.4, 3.6, 3.3
10/253.6representing various evaluations & HOAS
10/273.6representing various evaluations & HOAS
11/14 & 5
11/34 & 5
11/54 & 5
11/85.5, 5.6
11/105.5, 5.6
11/12Proving metatheorems with Twelfditto
11/15Proving metatheorems with Twelf
11/17proof of commutativity of plus
11/19proof of commutativity of plus
11/22proof of type preservation for miniml
11/24proof of type preservation for miniml
11/29proof of type preservation for miniml
12/1evaluation contexts
12/3evaluation contexts

Robby Findler