MPI-INF/SWS Research Reports 1991-2017

# MPI-I-91-211

## Natural semantics and some of its meta-theory in Elf

### Michaylov, Spiro and Pfenning, Frank

#### August 1991, 26 pages.

.
##### Status: available - back from printing

Operational semantics provide a simple, high-level and elegant means of specifying interpreters for programming languages. In natural semantics, a form of operational semantics, programs are traditionally represented as first-order tree structures and reasoned about using natural deduction-like methods. Hannan and Miller combined these methods with higher-order representations using $\lambda$Prolog. In this paper we go one step further and investigate the use of the logic programming language Elf to represent natural semantics. Because Elf is based on the LF Logical Framework with dependent types, it is possible to write programs that reason about their own partial correctness. We illustrate these techniques by giving type checking rules and operational semantics for Mini-ML, a small functional language based on a simply typed $\lambda$-calculus with polymorphism, constants, products, conditionals, and recursive function definitions. We also partially internalize proofs for some metatheoretic properties of Mini-ML, the most difficult of which is subject reduction.

URL to this document: http://domino.mpi-inf.mpg.de/internet/reports.nsf/NumberView/1991-211

BibTeX
@TECHREPORT{MichaylovPfenning91,
AUTHOR = {Michaylov, Spiro and Pfenning, Frank},
TITLE = {Natural semantics and some of its meta-theory in Elf},
TYPE = {Research Report},
INSTITUTION = {Max-Planck-Institut f{\"u}r Informatik},