51 research outputs found
Transforming OCL to PVS: Using Theorem Proving Support for Analysing Model Constraints
The Unified Modelling Language (UML) is a de facto standard language for describing
software systems. UML models are often supplemented with Object Constraint
Language (OCL) constraints, to capture detailed properties of components and systems.
Sophisticated tools exist for analysing UML models, e.g., to check that well-formedness
rules have been satisfied. As well, tools are becoming available to analyse and reason
about OCL constraints. Previous work has been done on analysing OCL constraints by
translating them to formal languages and then analysing the translated constraints with
tools such as theorem provers.
This project contributes a transformation from OCL to the specification language of the
Prototype Verification System (PVS). PVS can be used to analyse and reason about
translated OCL constraints. A particular novelty of this project is that it carries out the
transformation of OCL to PVS by using model transformation, as exemplified by the
OMG's Model-Driven Architecture. The project implements and automates model
transformations from OCL to PVS using the Epsilon Transformation Language (ETL)
and tests the results using the Epsilon Comparison Language (ECL )
Recommended from our members
Working notes of the 1991 spring symposium on constraint-based reasoning
Neuere Entwicklungen der deklarativen KI-Programmierung : proceedings
The field of declarative AI programming is briefly characterized. Its recent developments in Germany are reflected by a workshop as part of the scientific congress KI-93 at the Berlin Humboldt University. Three tutorials introduce to the state of the art in deductive databases, the programming language Gödel, and the evolution of knowledge bases. Eleven contributed papers treat knowledge revision/program transformation, types, constraints, and type-constraint combinations
Studies related to the process of program development
The submitted work consists of a collection of publications arising from research carried out at Rhodes University (1970-1980) and at Heriot-Watt University (1980-1992). The theme of this research is the process of program development, i.e. the process of creating a computer program to solve some particular problem. The papers presented cover a number of different topics which relate to this process, viz. (a) Programming methodology programming. (b) Properties of programming languages. aspects of structured. (c) Formal specification of programming languages. (d) Compiler techniques. (e) Declarative programming languages. (f) Program development aids. (g) Automatic program generation. (h) Databases. (i) Algorithms and applications
Extracting proofs from documents
Often, theorem checkers like PVS are used to check an existing proof, which is part of some document. Since there is a large difference between the notations used in the documents and the notations used in the theorem checkers, it is usually a laborious task to convert an existing proof into a format which can be checked by a machine. In the system that we propose, the author is assisted in the process of converting an existing proof into the PVS language and having it checked by PVS. 1 Introduction The now-classic ALGOL 60 report [5] recognized three different levels of language: a reference language, a publication language and several hardware representations, whereby the publication language was intended to admit variations on the reference language and was to be used for stating and communicating processes. The importance of publication language ---often referred to nowadays as "pseudo-code"--- is difficult to exaggerate since a publication language is the most effective way..
- …