5723701
Software Development Based on Formal Methods
Formal methods employ mathematical notation to record specifications and use mathematical reasoning to justify designs with respect to such specifications. One avenue of formal methods research is known as the Vienna Development Method. VDM has been used on programming language and non-language applications. In this paper, programming languages and their compilers are ignored; the focus is on the specification and verification of programs. The discussion focusses on the approach to specification and the reliance on proof obligations in design steps of data reification and operation decomposition.
2399941
Operational semantics: Concepts and their expression
15308825
Scientific Decisions which Characterize VDM
The formal description and development method known as VDM has been used extensively, its specification language is now an ISO standard, and it has influenced other specification languages. The origins of VDM are normally placed in language description or semantics but it is probably best known in the wider arena of formal methods for (general) program specification and design. This paper sets out a personal view of some of the key technical decisions which characterize the Vienna Development Method.
9236653
The Early Search for Tractable Ways of Reasoning about Programs
This article traces the history - up to around 1990 - of research on reasoning about programs. The main focus is on sequential imperative programs but some comments are made on concurrency. The main thesis is that the idea of reasoning about programs has been around since they were first written; the search has been to find tractable methods.
6772552
Fixing the semantics of some concurrent object-oriented concepts
Abstract Concurrent object-oriented languages provide a suitable target for a compositional design process that copes with the interference inherent with concurrency. Fixing the semantics of an object-based design language has been undertaken using structured operational semantics and by a mapping to the pi-calculus. These two approaches are outlined and contrasted. In particular, the difficulties in the two approaches of justifying the proof rules of the proposed design method are explained.
45828501
Formal Definition in Program Development
The intent of the current paper is to show how a large problem like compiler development can be divided in a way which provides a structure for arguments of correctness. Although mechanically checked proofs are not envisaged, the use of formal notation is recommended so that the basis for correctness arguments exists.
33896540
A Triangulated Spatial Model for Cartographic Generalisation of Areal Objects
Cartographic generalisation involves interaction between individual operators concerned with processes such as object elimination, detail reductions amalgamation, typification and displacement. Effective automation of these processes requires a means of maintaining knowledge of the spatial relationships between map objects in order to ensure that constraints of topology and of proximity are obeyed in the course of the individual generalisation transformations. Triangulated spatial models, based on the constrained Delaunay triangulation, have proven to be of particular value in representing the proximal and topological relations between map objects and hence in performing many of the essential tasks of fully automated cartographic generalisation. These include the identification of nearby objects; determination of the structure of space between nearby objects; execution of boundary simplification, merge and collapse operations; and the detection and resolution, by displacement, of topological inconsistencies arising from individual operators. In this paper we focus on the use of a triangulated model for operations specific to execution of merge operations between areal objects. The model is exploited to identify the regions of space between nearby objects and to execute merge operations in which the triangulation is used variously to adopt intervening space and to move adjacent rectangular objects to touch each other. Methods for updating the triangulation are described.
6251055
End-User Programming
End-user software development is a growing avocation in every industry and every country. By the middle of the next century, computer literacy and programming skills will be almost as common as reading and writing skills. Almost every knowledge worker in the world will be able to program if he or she sets out to do so. The implications of widespread end-user software are only just beginning to be considered. There are many exciting possibilities and some potential hazards. The time is now at hand to consider business topics such as ownership of end-user applications and liability in cases of significant errors. >
42189866
Episodes in Space: Qualitative Representation and Reasoning Over Spatio-Temporal Objects
There is growing interest in many application domains for the temporal treatment and manipulation of spatially referenced objects. Handling the time dimension in spatial databases can greatly enhance and extend their functionality and usability by offering means of understanding the spatial behaviour in time. Few works, to date, have been directed towards the development of formalisms for representation and reasoning in this domain. In this paper, a new approach is presented for the representation and reasoning over spatio-temporal relationships. The approach is simple and aims to satisfy the requirements of coherency, expressiveness and reasoning power. Consistent behaviours of spatial objects in time are denoted episodes. The topology of the domain is defined by decomposing episodes into representative components and relationships are defined between those components. Spatio-temporal reasoning is achieved by composing the relationships between the object components using constraint networks. New composition tables between simple spatio-temporal regions and between regions and volumes are also derived and used in the reasoning process.
31900993
Geographical Interfaces to Museum Collections
12540236
Map generalization in the Web age
Geographic information represents our understanding of the association of phenomena with their location on and near the Earth’s surface. When presented in map form, an essential aspect of that information is that it may be adapted in semantic abstraction and level of geometric detail according to the purpose of the map and the extent of the Earth that is being considered at any one time. Representations of small areas in detail result in so-called large-scale maps, while representations of large regions in lesser detail are referred to as small-scale maps. Traditionally, cartographers have performed the task of adapting the content and the level of detail of a map to suit its scale and purpose, and this process is called map generalization. The widespread use of geographic information in computers in the context of geographical information systems (GIS) has brought with it the demand for automation of map generalization. Ideally, when accessing geographic information in a GIS, it would be possible to be able to modify the level of generalization of the available geo-data entirely automatically. At present, no such automatic facilities are readily available in commercial GIS. Some commercial GIS do provide mapgeneralization tools that the user may apply in a somewhat ad hoc manner to selected geometric data. These tools appear, however, to be targeted at cartographic specialists wanting to derive a generalized dataset from a more detailed one. There are some notable examples of the way in which automated map-generalization tools have been exploited for purposes of professional map production. For example, the Institut Géographique National of France have used GALBE (this issue) to generalize the entire French road network to produce 1 : 250 000 scale maps from their BDCarto database (approximately 1 :50 000). More recently, the demand for automated map generalization, which has been longstanding in the context of conventional GIS, has been reinforced by the prevalence of geographical information access on the Internet. There are several types of public access map-based Web sites that allow a user to zoom in and out of a particular region, but at present this is usually based on stepping between independent pre-generalized datasets which may differ markedly in their degree of generalization. It would be desirable to be able to change the level of detail on such systems in a smooth and progressive manner rather than the quantum-leap changes that often characterize the current approach. Hand-held computers and mobile phones with small screens can now support the display of small maps, but the size