We present an extensible encoding of object-oriented data models into higher-order logic (HOL). Our encoding is supported by a datatype package that leverages the use of the shallow embedding technique to object-oriented specification and programming languages. The package incrementally compiles an objectoriented data model, i. e., a class model, to a theory containing object-universes, constructors, accessor
functions, coercions (casts) between dynamic and static types, characteristic sets, and co-inductive class invariants. The package is conservative, i. e., all properties are derived entirely from constant definitions, including the constraints over object structures. As an application, we use the package for an object-oriented core-language called IMP++, for which we formally prove the correctness of a Hoare-Logic with respect to a denotational semantics.
In: Journal of Automated Reasoning (JAR), DOI: 10.1007/s10817-008-9108-3, 41 (3-4), pages 219-249, Springer. 2008.
Keyword
[none]
Group
°
Formal Testing and System Exploration
Contact
[none]