Abstract
This paper presents a theory of Object-Oriented concepts embedded shallowly in HOL for the verification of OO analysis models. The theory is application-specific in the sense that it is automatically constructed depending on the type information of the application. This allows objects to have attributes of arbitrary types, making it possible to verify models using not only basic types but also highly abstracted types specific to the target domain. The theory is constructed by definitional extension based on the operational semantics of a heap memory model, which guarantees the soundness of the theory. This paper mainly focuses on the implementation details of the theory.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
OMG. Unified Modeling Language, http://www.omg.org/
The HOL system, http://hol.sourceforge.net/
Warmer, J., Kleppe, A.: The object constraint language: precise modeling with UML. Addison-Wesley, Reading (1999)
Nipkow, T., von Oheimb, D., Pusch, C.: μJava: Embedding a Programming Language in a Theorem Prover. In: Foundations of Secure Computation. IOS Press, Amsterdam (2000)
Jacobs, B., et al.: LOOP project, http://www.cs.kun.nl/~bart/LOOP/
von Oheimb, D.: Hoare Logic for Java in Isabelle/HOL. Concurrency and Computation: Practice and Experience 13, 1173–1214 (2001)
Poetzsch-Heffer, A., Muller, P.: A programming logic for sequential Java. In: Swierstra, S.D. (ed.) ESOP 1999. LNCS, vol. 1576, p. 162. Springer, Heidelberg (1999)
Poetzsch-Heffer, A., Muller, P.: Logical Foundations for Typed Object-Oriented Languages. In: Programming Concepts and Methods, PROCOMET (1998)
van den Berg, J., Huisman, M., Jacobs, B., Poll, E.: A type-theoretic memory model for verification of sequential Java programs. Techn. Rep. CSI-R9924, Comput. Sci. Inst., Univ. of Nijmegen (1999)
Marché, C., Paulin-Mohring, C.: Reasoning on Java programs with aliasing and frame conditions. In: Hurd, J., Melham, T. (eds.) TPHOLs 2005. LNCS, vol. 3603, pp. 179–194. Springer, Heidelberg (2005)
Naraschewski, W., Wenzel, M.: Object-Oriented Verification based on Record Subtyping in Higher-Order Logic. Tecnische Universitat Munchen (1998)
Aoki, T., Tateishi, T., Katayama, T.: An Axiomatic Formalization of UML Models. Practical UML-based Rigorous Development Methods, 13–28 (2001)
Marcano, R., Levy, N.(eds.): Using B formal specifications for analysis and verification of UML/OCL models. In: Workshop on consistency problems in UML-based software development. 5th International Conference on the Unified Modeling Language. Dresden, Germany (October 2002)
Lano, K., Clark, D., Androutsopoulos, K.: UML to B: Formal Verification of Object-Oriented Models. In: Boiten, E.A., Derrick, J., Smith, G.P. (eds.) IFM 2004. LNCS, vol. 2999, pp. 187–206. Springer, Heidelberg (2004)
Smaragdakis, Y., Batory, D.: Implementing layered designs with mixin layers. In: Jul, E. (ed.) ECOOP 1998. LNCS, vol. 1445, p. 550. Springer, Heidelberg (1998)
Fisler, K., Krishnamurthi, S.: Modular verification of collaboration-based software designs. In: Symposium on the Foundation of Software Engineering (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Yatake, K., Aoki, T., Katayama, T. (2005). Implementing Application-Specific Object-Oriented Theories in HOL. In: Van Hung, D., Wirsing, M. (eds) Theoretical Aspects of Computing – ICTAC 2005. ICTAC 2005. Lecture Notes in Computer Science, vol 3722. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11560647_33
Download citation
DOI: https://doi.org/10.1007/11560647_33
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-29107-7
Online ISBN: 978-3-540-32072-2
eBook Packages: Computer ScienceComputer Science (R0)