HOL-OCL: Experiences, Consequences and Design Choices
UML '02 Proceedings of the 5th International Conference on The Unified Modeling Language
Encoding Object-Z in Isabelle/HOL
ZB '02 Proceedings of the 2nd International Conference of B and Z Users on Formal Specification and Development in Z and B
Interactive Theorem Proving and Program Development
Interactive Theorem Proving and Program Development
UML-B: Formal modeling and design aided by UML
ACM Transactions on Software Engineering and Methodology (TOSEM)
Information and Software Technology
ATL: A model transformation tool
Science of Computer Programming
Proofs-as-Model-Transformations
ICMT '08 Proceedings of the 1st international conference on Theory and Practice of Model Transformations
A Brief Overview of Agda --- A Functional Language with Dependent Types
TPHOLs '09 Proceedings of the 22nd International Conference on Theorem Proving in Higher Order Logics
Integrating an automated theorem prover into agda
NFM'11 Proceedings of the Third international conference on NASA Formal methods
Weaving executability into object-oriented meta-languages
MoDELS'05 Proceedings of the 8th international conference on Model Driven Engineering Languages and Systems
Hi-index | 0.00 |
Modelling and analysing data dependencies and consistency between classes and objects is a complex task. We show that dependently typed programming languages can handle this in a particularly simple, convenient and highly automated way. Dependent datatypes are used to implement (meta)models for classes and objects directly and concisely. Data dependencies and similar system constraints are specified within the language's expressive type system. Verification and propagation of these constraints is handled by type inference, which can be enhanced by customised decision procedures or external solvers if needed. The approach thus supports the development of software models that are correct by construction.