Editorial
暂无分享,去创建一个
This volume contains four papers that were presented at a Festschrift Symposium that was held on the 24th and 25th September 2007 in Macao on the occasion of the 70th birthdays of Dines Bjorner and Zhou Chaochen, both members of the editorial board of Formal Aspects of Computing. Dines Bjorner is known for his many contributions to the theory and practice of formal methods for software engineering. He is particularly associated with two formal methods, although his influence is far wider. He worked on the Vienna development Method (VDM), initially at IBM in Vienna. Later, he was involved in developing the Rigorous Approach to Software Engineering (RAISE), a formal method with tool support. Zhou Chaochen is known for his seminal contributions to the theory and practice of timed and hybrid systems. While on an extended visit to Oxford, he became the prime instigator of the Duration Calculus, an interval logic for real-time systems. The Festschrift Symposium contained papers on topics chosen by their authors, but they were all central to the research interests of Dines and Chaochen. The organisers chose four papers from the symposium for revision and subsequent publication in this special issue of Formal Aspects of Computing dedicated to both Dines and Chaochen. The first paper, A denotational semantics for Handel-C, is by Andrew Butterfield. Handel-C is a language based on CSP and Occam, with a syntax familiar to C programmers. It is used to compile programs into hardware descriptions, particularly for field-programmable gate arrays. Butterfield presents a denotational semantics for an important subset of the language, using a technique based on typed assertion traces. Finding a tractable semantics for the language is difficult, the source of the complexity being due mostly to the presence of a priority-choice operator. Xia, Yang, Zhan, and Zhang’s paper, Symbolic decision procedure for termination of linear programs, tackles an important problem in program verification: the correctness of floating-point computations. They develop a symbolic decision procedure for the termination of linear programs. In contrast to existing work that uses numerical computation, this paper uses algorithms based on symbolic computation, therefore avoiding any errors that might be caused by floating-point computation. Haxthausen, Peleska, and Kinder’s paper, A formal approach for the construction and verification of railway control systems, describes a complete model-based development and verification approach for railway control systems. The development of their framework was formalised using the RAISE formal method. Finally, Mosses’ paper, VDM semantics of programming languages: combinators and monads, presents a historical account of the VDM. It describes VDM’s origins in denotational semantics, and its use in defining programming languages, focusing on how it differed from traditional Scott–Strachey semantics by making extensive use of combinators that have a fixed operational interpretation. It relates these combinators to the use of monads, the abstract data-type constructor familiar from functional programming.