On the Formalization of Imperative Object-based Calculiin (Co)Inductive Type Theories
Abstract
In this paper, we study the formalization of Abadi and Cardelli's impsigma, a representative object-based calculus with types and side effects, in interactive proof assistants based on (Co)Inductive Type Theories, Like Coq. In order to make the formal development of the theory of impsigma easier, we reformulate its static and dynamic semantics taking most advantage of the features provided by CC^(Co)Ind, the coinductive type theory underlying Coq. The new presentation is thus in the style of Natural Deduction Semantics (the counterpart in Natural Deduction style of Kahn's Natural semantics), using higher-order abstract syntax and hypothetical-general premises à la Martin-Löf. Interestingly, for a significant fragment of impsigma we can even use coinductive typing systems, thus avoiding "store types" and leading to a substantial simplification of the proofs of key metaproperties, such as Subject Reduction. The solutions we have devised in the encoding of and metareasoning on can be readily applied to other imperative calculi featuring similar issues.