Hostname: page-component-6766d58669-6mz5d Total loading time: 0 Render date: 2026-05-21T12:51:33.800Z Has data issue: false hasContentIssue false

αCheck: A mechanized metatheory model checker*

Published online by Cambridge University Press:  22 May 2017

JAMES CHENEY
Affiliation:
Laboratory for Foundations of Computer Science, University of Edinburgh, Edinburgh, Scotland (e-mail: jcheney@inf.ed.ac.uk)
ALBERTO MOMIGLIANO
Affiliation:
Dipartimento di Informatica, Università degli Studi di Milano, Milan, Italy (e-mail: alberto.momigliano@unimi.it)

Abstract

The problem of mechanically formalizing and proving metatheoretic properties of programming language calculi, type systems, operational semantics, and related formal systems has received considerable attention recently. However, the dual problem of searching for errors in such formalizations has attracted comparatively little attention. In this article, we present αCheck, a bounded model checker for metatheoretic properties of formal systems specified using nominal logic. In contrast to the current state of the art for metatheory verification, our approach is fully automatic, does not require expertise in theorem proving on the part of the user, and produces counterexamples in the case that a flaw is detected. We present two implementations of this technique, one based on negation-as-failure and one based on negation elimination, along with experimental results showing that these techniques are fast enough to be used interactively to debug systems as they are developed.

Information

Type
Regular Papers
Copyright
Copyright © Cambridge University Press 2017 

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

Article purchase

Temporarily unavailable