15-317 Constructive Logic
Software
Dcheck
Dcheck is an experimental derivation parser and checker written by Karl Crary.
- Documentation
- Sample file
- A syntax check is on the Andrew machines at
~crary/bin/dsanity
- A visualizer for Dcheck derivations is on the Andrew machines
at
~crary/bin/dvis
SML
We assume that all students know how to run Standard ML of New Jersey
(smlnj) or some other SML compiler.
Prolog
For this course we provide Ciao
Prolog on the Andrew machines but you can also install GNU Prolog or SWI Prolog on your own computer.
You can run the Andrew installation of Ciao Prolog by running
$ ~fp/bin/ciao
but you should add the line set enable-bracketed-paste off
to the file ~/.inputrc in your Andrew home directory
to work around a bug in rlwrap (which is used to streamline
interaction with the Prolog interpreter).
You can test Ciao Prolog by downloading, for example,
lec18.pl and then run
$ ~fp/bin/ciao
Ciao 1.22.0 [LINUXx86_64]
?- [lec18].
yes
?- plus(X,Y,s(s(0))).
X = 0,
Y = s(s(0)) ? ;
X = s(0),
Y = s(0) ? ;
X = s(s(0)),
Y = 0 ? ;
no
?- halt.
$
Most installations of vim and emacs have editing modes for Prolog code, but
the default is to treat .pl files as Perl code. To switch to the
Prolog mode in vim, use the command :setf prolog . To switch to
the Prolog mode in emacs, use the command M-x prolog-mode .
[ Home
| Schedule
| Assignments
| Software
]
fp@cs
Frank Pfenning
|