Abstract
The twolevel logic approach (2LL) to reasoning about computational specifications, as implemented by the Abella theorem prover, represents derivations of a specification language as an inductive definition in a reasoning logic. This approach has traditionally been formulated with the specification and reasoning logics having the same type system, and only the formulas being translated. However, requiring identical type systems limits the approach in two important ways: (1) every change in the specification language's type system requires a corresponding change in that of the reasoning logic, and (2) the same reasoning logic cannot be used with two specification languages at once if they have incompatible type systems. We propose a technique based on adequate encodings of the types and judgements of a typed specification language in terms of a simply typed higherorder logic program, which is then used for reasoning about the specification language in the usual 2LL. Moreover, a single specification logic implementation can be used as a basis for a number of other specification languages just by varying the encoding. We illustrate our technique with an implementation of the LF dependent type theory as a new specification language for Abella, coexisting with its current simply typed higherorder hereditary Harrop specification logic, without modifying the type system of its reasoning logic.
BibTeX  Entry
@InProceedings{southern_et_al:LIPIcs:2014:4871,
author = {Mary Southern and Kaustuv Chaudhuri},
title = {{A TwoLevel Logic Approach to Reasoning About Typed Specification Languages}},
booktitle = {34th International Conference on Foundation of Software Technology and Theoretical Computer Science (FSTTCS 2014)},
pages = {557569},
series = {Leibniz International Proceedings in Informatics (LIPIcs)},
ISBN = {9783939897774},
ISSN = {18688969},
year = {2014},
volume = {29},
editor = {Venkatesh Raman and S. P. Suresh},
publisher = {Schloss DagstuhlLeibnizZentrum fuer Informatik},
address = {Dagstuhl, Germany},
URL = {http://drops.dagstuhl.de/opus/volltexte/2014/4871},
URN = {urn:nbn:de:0030drops48716},
doi = {10.4230/LIPIcs.FSTTCS.2014.557},
annote = {Keywords: Abella theorem prover, twolevel logic, typed specification languages}
}
Keywords: 

Abella theorem prover, twolevel logic, typed specification languages 
Seminar: 

34th International Conference on Foundation of Software Technology and Theoretical Computer Science (FSTTCS 2014) 
Issue Date: 

2014 
Date of publication: 

11.12.2014 