Formalizing UML Models and OCL Constraints in PVS

Marcel Kyas, Harald Fecher, Frank S. de Boer, Joost Jacob, Jozef Hooman, Mark van der Zwaag, Tamarah Arons, and Hillel Kugler

To appear in: Proceedings Semantic Foundations of Engineering Design Languages (SFEDL’04), Electronic Notes in Theoretical Computer Science (ENTCS), 8 pages, 2004.


The Object Constraint Language (OCL) is the established language for the speci- fication of properties of objects and object structures in UML models. One reason that it is not yet widely adopted in industry is the lack of proper and integrated tool support for OCL. Therefore, we present a prototype tool, which analyzes the syntax and semantics of OCL constraints together with a UML model and translates them into the language of the theorem prover PVS. This defines a formal semantics for both UML and OCL, and enables the formal verification of systems modeled in UML. We handle the problematic fact that OCL is based on a three-valued logic, whereas PVS is only based on a two valued one.