Logical Relations and Data Abstraction

John Power and Edmund Robinson

To appear at Computer Science Logic 2000 (CSL 2000), Fischbachau near Munich, Germany, 21-26 August 2000


Abstract

We prove, in the context of simple type theory, that logical relations are sound and complete for data abstraction as given by equational specifications. Specifically, we show that two implementations of an equationally specified abstract type are equivalent if and only if they are linked by a suitable logical relation. This allows us to introduce new types and operations of any order on those types, and to impose equations between terms of any order. Implementations are required to respect these equations up to a general form of contextual equivalence, and two implementations are equivalent if they produce the same contextual equivalence on terms of the enlarged language. Logical relations are introduced abstractly, soundness is almost automatic, but completeness is more difficult, achieved using a variant of Jung and Tiuryn's logical relations of varying arity. This also relates to lax, equivalently, pre-logical relations. The results are expressed and proved categorically.


Server START Conference Manager
Update Time 19 Apr 2000 at 10:13:07
Maintainer csl2000-org@tcs.informatik.uni-muenchen.de.
Start Conference Manager
Conference Systems