|
|
|
|
|
|
|
|
current work |
|
The group’s work focuses on developing, using and reasoning with visual notations. Currently we are working in the following areas. LinksExternally funded projects
Externally funded projectsWe have been awarded several grants. Details can be found on the Projects page.
Knowing the expressiveness of notations is important because it helps us to decide if that
notation is sufficient for our needs. The group has shown that the spider diagram language,
which is decidable, is equivalent in expressive power to monadic first order logic.
Currently the group is investigating the expressiveness of the constraint diagram language.
We are also working towards identifying decidable fragments of the constraint diagram
language.
FormalisationThe main thrust of our work on the modelling side is the development of diagrammatic notations for use with the Unified Modelling Language (UML) notations in software development. One such notation is constraint diagrams, which was designed to express visually mathematical constraints such as system invariants and operation preconditions and postconditions. The group is currently completing the formalisation of constraint diagrams and developing a reading algorithm for the notation. ModellingWe are developing case studies using the notations and comparing the
results with similar systems developed using UML or mathematical notations.
Diagrammatic reasoningOut of the investigation into constraint diagrams arose the visual notation spider diagrams. These are based on Venn and Euler diagrams and build on a long tradition of such notations. The group has given formal semantics to the notation in terms of set theory/first-order predicate logic. Diagrammatic reasoning rules have been developed for spider diagram systems and these have been proved to be sound and complete. The group is now investigating reasoning rules for constraint diagram systems. Automated reasoningWe have developed tools to automate reasoning with diagrammatic logics. We have implemented theorem provers for Euler diagrams and spider diagrams. Abstract and concrete diagramsDiagrammatic notations can be given a formal concrete syntax
in terms of, for example, topological elements such as Jordan curves and
a formal abstract syntax in terms of, for example, many-sorted algebras.
An abstract diagram is independent of any drawn representation, but any
concrete diagram, or token, must comply with its abstract diagram,
or type. The group is investigating the relationships between abstract
and concrete diagrams and believe that this area is important in the understanding
the nature of formal diagrammatic notations and how they differ from textual
and symbolic notations.
UsabilityWe are investigating applying
cognitive
dimensions to study the usability of the notations.
Generating diagramsThe group has developed and implemented an algorithm that takes an
abstract Euler diagram and delivers a concrete diagram. The paper
describing this work was voted best paper at the Diagrams 2002 conference
in Georgia.
Implementation in PVSThe group is working in collaboration with Manuel Barrio Solorzano of the University of Valladolid in Spain on implementing the spider diagram system SD2 in PVS. ProjectionsA projection within a diagram based on Venn or Euler diagrams is a device for removing clutter and focusing attention appropriately. They may also be important in modularising and nesting diagrams. We are investigating the properties and applications of projections. Textual languagesThe group also has interests in UML's (textual) assertion language OCL and in languages designed for run-time checking of logical assertions such as Eiffel's assertion language and the Java Modelling Language (JML) and also in mathematically-based notations such as Larch and Z. CombinatoricsWe have been counting abstract Euler diagrams and the number of labelled and unlabelled concrete diagrams satisfying different well-formedness criteria. |
|