15-317 Constructive Logic
Lecture 15: Metaprogramming in Prolog
In this lecture we write a decision procedure for
intuitionistic propositional logic based on a
contraction-free sequent calculus, exploiting
inversion. The implementation will be in Prolog,
using a logic programming language to implement
logic, which is sometimes called metaprogramming.
- Reading: in preparation
- Code: g5ip.pl
- Key concepts:
- Representing propositions
- Types as predicates
- Asynchronous and synchronous propositions
- Previous lecture: Prolog
- Next lecture: The LF Logical Framework
[ Home
| Schedule
| Assignments
| Handouts
| Software
]
fp@cs
Frank Pfenning
|