7190198
Reasoning About Partial Functions in the Formal Development of Programs
Partial functions and operators are used extensively in the formal development of programs and thus development methods have to clarify how to reason about them. There are a number of approaches which cover up the fact that ''First Order Predicate Calculus'' does not handle undefined logical values. There is also at least one specific ''Logic of Partial Functions'' (LPF) which tackles the issue at its root by using a weaker logic. Recently, we have come to realise that LPF fits a particular way of developing programs. This paper explains why LPF is a suitable logic for ''posit and prove'' development and explores some problems that other approaches present.
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.
2399941
Operational semantics: Concepts and their expression
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.
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. >
205571678
A Prolog Rule-Based System for Cartographic Name Placement
Manual name placement is an extremely time consuming task and has been one of the most difficult aspects of the map production process to automate. It is complicated by the large number of rules required for the selection and placement of names. A hybrid Prolog/Fortrau rule-based system is described for placing names on a variety of map types. It uses a set of Prolog primitives for spatial search and name placement operations. The Ordnance Survey's 1:625000 scale digital dataset has been used to illustrate the application of rules for the selection of labels as well as for controlling their size and orientation. The application to other types of maps and diagrams is also briefly described.
13190855
Conflict resolution in cartographic name placement
Abstract The increasing application of computer cartography in geographical information systems and in professional map production has highlighted the requirement for automatic positioning of cartographic text in a manner that ensures legibility. An important aspect of the implementation of automated name placement is the avoidance of conflict, in particular due to overlap between names, and between names and map features. This paper reviews the automated strategies that have been adopted for conflict resolution. The majority of these may be classified as either iterative or graph-search procedures. In general the problem may be seen as one in which initially trial positions are generated for each of a selected set of names. These trial positions should obey rules relating to text characteristics and to the relationships between names and other map features. Conflict resolution then consists in finding, for each name, a trial position that obeys the cartographic rules governing the relationships between names.
7423994
Computational Perspectives on Map Generalization
9300744
Matching and aligning features in overlayed coverages
1. ABSTRACT The problems caused by locational error when overlaying spatial data from different sources have been recognised for some time, and much research has been directed towards finding solutions. In this paper we present a solution in the form of an algorithm that seeks to match and align semantically equivalent features prior to overlay. It is assumed that, because of locational error, semantically equivalent features will not always be geometrically equivalent. The technique has been developed to assist in the detection of change between multi-date vector-defined data sets. Initial results, obtained by applying our algorithm to land cover data, are presented. 1.1