Object Orientation in Z


Book Description

This collection of papers draws together a variety of approaches for adding ob ject orientation to the Z formal specification language. These papers are not a conference proceedings, but have a slightly more complicated his tory. This work has grown and evolved from some work originally done in the ZIP project, under the United Kingdom's Department of Trade and Industry (DTI) IED initiative. ZIP is a three year project which aims to make the use of the Z specification language more widespread. It hopes to achieve this by producing a standard for Zj developing a method for Zj building tool support for Zj and carrying out research into refinement, proof and concurrency in Z. The ZIP methods work includes performing a survey of current Z practitioners (reported in [Barden et al. 1992])j investigating current styles and methods of Z usagej and developing a Z Method handbook (available early in 1993). As part of this work, we carried out a comparative study of the ways in which object orientation has been combined with Z. A summary of that work has been published as [Stepney et al. 1992].




The Object-Z Specification Language


Book Description

Object-Z is an object-oriented extension of the formal specification language Z. It adds to Z notions of classes and objects, and inheritance and polymorphism. By extending Z's semantic basis, it enables the specification of systems as collections of independent objects in which self and mutual referencing are possible. The Object-Z Specification Language presents a comprehensive description of Object-Z including discussions of semantic issues, definitions of all language constructs, type rules and other rules of usage, specification guidelines, and a full concrete syntax. It will enable you to confidently construct Object-Z specifications and is intended as a reference manual to keep by your side as you use and learn to use Object-Z. The Object-Z Specification Language is suitable as a textbook or as a secondary text for a graduate-level course, and as a reference for researchers and practitioners in industry.




Formal Methods and Software Engineering


Book Description

This book constitutes the refereed proceedings of the 4th International Conference on Formal Engineering methods, ICFEM 2002, held in Shanghai, China, in October 2002. The 43 revised full papers and 16 revised short papers presented together with 5 invited contributions were carefully reviewed and selected from a total of 108 submissions. The papers are organized in topical sections on component engineering and software architecture, method integration, specification techniques and languages, tools and environments, refinement, applications, validation and verification, UML, and semantics.




Z User Workshop, York 1991


Book Description

In ordinary mathematics, an equation can be written down which is syntactically correct, but for which no solution exists. For example, consider the equation x = x + 1 defined over the real numbers; there is no value of x which satisfies it. Similarly it is possible to specify objects using the formal specification language Z [3,4], which can not possibly exist. Such specifications are called inconsistent and can arise in a number of ways. Example 1 The following Z specification of a functionf, from integers to integers "f x : ~ 1 x ~ O· fx = x + 1 (i) "f x : ~ 1 x ~ O· fx = x + 2 (ii) is inconsistent, because axiom (i) gives f 0 = 1, while axiom (ii) gives f 0 = 2. This contradicts the fact that f was declared as a function, that is, f must have a unique result when applied to an argument. Hence no suchfexists. Furthermore, iff 0 = 1 andfO = 2 then 1 = 2 can be deduced! From 1 = 2 anything can be deduced, thus showing the danger of an inconsistent specification. Note that all examples and proofs start with the word Example or Proof and end with the symbol.1.




Formal Object-oriented Specification Using Object-Z


Book Description

This text presents techniques for the precise description of software or systems using the object-oriented formal specification language, Object Z. It includes numerous and varied case studies to illustrate the techniques and language of object-oriented formal specification and illustrates the key role of formal specification in formal verification and in implementation. Although primarily intended for safety-critical or complex software development, formal specification also has wide application in hardware or general system description.




ECOOP '92. European Conference on Object-Oriented Programming


Book Description

This volume constitutes the proceedings of the sixth European Conference on Object-Oriented Programming (ECOOP), held in Utrecht, The Netherlands, June 29 - July 3, 1992. Since the "French initiative" to organize the first conference in Paris, ECOOP has been a very successful forum for discussing the state of the art of object orientation. ECOOP has been able to attract papers of a high scientific quality as well as high quality experience papers describing the pros and cons of using object orientation in practice. This duality between theory and practice within object orientation makes a good example of experimental computer science. The volume contains 24 papers, including two invited papers and 22 papers selected by the programme committee from 124 submissions. Each submitted paper was reviewed by 3-4 people, and the selection of papers was based only on the quality of the papers themselves.




ECOOP '91 European Conference on Object-Oriented Programming


Book Description

ECOOP '91 is the fifth annual European Conference on Object-Oriented Programming. From their beginning, the ECOOP conferences have been very successful as a forum of high scientific quality where the newest devel- opments connected to object-oriented programming and related areas could be presented and discussed. Over the last few years object-oriented technology has gained widespread use and considerable popularity. In parallel with this, the field has matured scientifically, but there is still a lot of room for new ideas and for hot debates over fundamental issues, as these proceedings show. The 22 papers in this volume were selected by the programme committee from 129 submissions. Important issues discussed in the contributions are language design, specification, databases, concurrency types and software development.




Z User Workshop, London 1992


Book Description

The Z notation has been developed at the Programming Research Group at the Oxford University Computing Laboratory and elsewhere for over a decade. It is now used by industry as part of the software (and hardware) development process in both Europe and the USA. It is currently undergoing BSI standardisation in the UK, and has been proposed for ISO standardisation internationally. In recent years researchers have begun to focus increasingly on the development of techniques and tools to encourage the wider application of Z and other formal methods and notations. This volume contains papers from the Seventh Annual Z User Meeting, held in London in December 1992. In contrast to previous years the meeting concentrated specifically on industrial applications of Z, and a high proportion of the participants came from an industrial background. The theme is well represented by the four invited papers. Three of these discuss ways in which formal methods are being introduced, and the fourth presents an international survey of industrial applications. It also provides a reminder of the improvements which are needed to make these methods an accepted part of software development. In addition the volume contains several submitted papers on the industrial use of Z, two of which discuss the key area of safety-critical applications. There are also a number of papers related to the recently-completed ZIP project. The papers cover all the main areas of the project including methods, tools, and the development of a Z Standard, the first publicly-available version of which was made available at the meeting. Finally the volume contains a select Z bibliography, and section on how to access information on Z through comp.specification.z, the international, computer-based USENET newsgroup. Z User Workshop, London 1992 provides an important overview of current research into industrial applications of Z, and will provide invaluable reading for researchers, postgraduate students and also potential industrial users of Z.




Advanced R


Book Description

An Essential Reference for Intermediate and Advanced R Programmers Advanced R presents useful tools and techniques for attacking many types of R programming problems, helping you avoid mistakes and dead ends. With more than ten years of experience programming in R, the author illustrates the elegance, beauty, and flexibility at the heart of R. The book develops the necessary skills to produce quality code that can be used in a variety of circumstances. You will learn: The fundamentals of R, including standard data types and functions Functional programming as a useful framework for solving wide classes of problems The positives and negatives of metaprogramming How to write fast, memory-efficient code This book not only helps current R users become R programmers but also shows existing programmers what’s special about R. Intermediate R programmers can dive deeper into R and learn new strategies for solving diverse problems while programmers from other languages can learn the details of R and understand why R works the way it does.




ZB 2003: Formal Specification and Development in Z and B


Book Description

The refereed proceedings of the Third International Conference of Z and B Users, ZB 2003, held in Turku, Finland in June 2003. The 28 revised full papers presented together with 3 invited papers were carefully reviewed and selected for inclusion in the book. The book documents the recent advances for the Z formal specification notation and for the B method, spanning the full scope from foundational, theoretical, and methodological issues to advanced applications, tools, and case studies.