scispace - formally typeset
Search or ask a question
Author

G. O'Neill

Bio: G. O'Neill is an academic researcher from National Physical Laboratory. The author has contributed to research in topics: Formal specification & Message authentication code. The author has an hindex of 1, co-authored 1 publications receiving 10 citations.

Papers
More filters
Book ChapterDOI
21 Oct 1991
TL;DR: A detailed example is given of how a formal specification language has been used to specify an international banking standard on message authentication.
Abstract: A detailed example is given of how a formal specification language has been used to specify an international banking standard on message authentication. It illustrates how a specification language can be used to specify and validate a standard.

10 citations


Cited by
More filters
01 Jan 1978
TL;DR: This ebook is the first authorized digital version of Kernighan and Ritchie's 1988 classic, The C Programming Language (2nd Ed.), and is a "must-have" reference for every serious programmer's digital library.
Abstract: This ebook is the first authorized digital version of Kernighan and Ritchie's 1988 classic, The C Programming Language (2nd Ed.). One of the best-selling programming books published in the last fifty years, "K&R" has been called everything from the "bible" to "a landmark in computer science" and it has influenced generations of programmers. Available now for all leading ebook platforms, this concise and beautifully written text is a "must-have" reference for every serious programmers digital library. As modestly described by the authors in the Preface to the First Edition, this "is not an introductory programming manual; it assumes some familiarity with basic programming concepts like variables, assignment statements, loops, and functions. Nonetheless, a novice programmer should be able to read along and pick up the language, although access to a more knowledgeable colleague will help."

2,120 citations

Proceedings ArticleDOI
01 Dec 1990
TL;DR: In the UK it is increasingly becoming a requirement for safety-critical software both military and civil to be subjected to “static code analysis”, and in some instances formal verification, i.e. mechanically-checked proof that a program meets its specification (or at least, a formal statement of its safety requirements).
Abstract: In the UK it is increasingly becoming a requirement for safety-critical software both military and civil to be subjected to “static code analysis”. This includes control-flow, data-flow and information-flow analysis, and in some instances formal verification, i.e. mechanically-checked proof that a program meets its specification (or at least, a formal statement of its safety requirements). Plow analysis and path function analysis have been used in industrial software validation for some years [Car& et al, 19861, for instance in nuclear reactor protection [Bromell and Sadler, 19871, railway signalling, automobile equipment, navigation aids [Neilan, 19881 and banking [Brendish, 19871. The industrial use of formal proof methods is not yet commonplace, but there have been notable successes, for example in the formal verification of jet engine controls [O’Neill et al, 19881.

41 citations

Book ChapterDOI
15 Sep 1997
TL;DR: This paper describes how programs in a modern functional language may be automatically generated from formal specifications, and demonstrates the success of the approach by describing errors found in published specifications.
Abstract: Interest in the use of functional languages for prototyping and animating formal specifications has decreased recently, as some of the limitations of traditional approaches have become apparent, in comparison to direct execution of the specification In this paper we attempt to inject new life into this debate by describing how programs in a modern functional language may be automatically generated from formal specifications We demonstrate how drawbacks of previous approaches are solved, and illustrate the success of the approach by describing errors found in published specifications

6 citations

Journal ArticleDOI
29 Apr 2017
TL;DR: A term rewrite system that formally models the Message Authenticator Algorithm (MAA) was presented in this article, which was one of the first cryptographic functions for computing a Message Authentication Code and was adopted, between 1987 and 2001, in international standards (ISO 8730 and ISO 8731-2) to ensure the authenticity and integrity of banking transactions.
Abstract: We present a term rewrite system that formally models the Message Authenticator Algorithm (MAA), which was one of the first cryptographic functions for computing a Message Authentication Code and was adopted, between 1987 and 2001, in international standards (ISO 8730 and ISO 8731-2) to ensure the authenticity and integrity of banking transactions. Our term rewrite system is large (13 sorts, 18 constructors, 644 non-constructors, and 684 rewrite rules), confluent, and terminating. Implementations in thirteen different languages have been automatically derived from this model and used to validate 200 official test vectors for the MAA.

5 citations

Book ChapterDOI
01 Jan 2011
TL;DR: The Vienna Development Method is an environment for the modeling and development of sequential software systems and the current version of the VDM specification language, VDM-SL, has been standardized by the International Standards Organization (ISO).
Abstract: The Vienna Development Method (VDM) is an environment for the modeling and development of sequential software systems. The specification language of VDM has evolved from Meta-IV, the language used at IBM’s Vienna development laboratory for specifying the semantics of the PL/I programming language in the early seventies. The current version of the VDM specification language, VDM-SL, has been standardized by the International Standards Organization (ISO). It supports the modeling and analysis of software systems at different levels of abstraction. Using VDM-SL constructs, both data and algorithmic abstractions expressed in one level can be refined to a lower level to derive a concrete model that is closer to the final implementation of the system.

4 citations