Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where C. A. R. Hoare is active.

Publication


Featured researches published by C. A. R. Hoare.


Communications of The ACM | 1969

An axiomatic basis for computer programming

C. A. R. Hoare

In this paper an attempt is made to explore the logical foundations of computer programming by use of techniques which were first applied in the study of geometry and have later been extended to other branches of mathematics. This involves the elucidation of sets of axioms and rules of inference which can be used in proofs of the properties of computer programs. Examples are given of such axioms and rules, and a formal proof of a simple theorem is displayed. Finally, it is argued that important advantages, both theoretical and practical, may follow from a pursuance of these topics.


Journal of the ACM | 1984

A Theory of Communicating Sequential Processes

Stephen D. Brookes; C. A. R. Hoare; A. W. Roscoe

A mathematical model for communicating sequential processes isgiven, and a number of its interesting and useful properties arestated and proved. The possibilities of nondetermimsm are fullytaken into account.


Acta Informatica | 1972

Proof of correctness of data representations

C. A. R. Hoare

SummaryA powerful method of simplifying the proofs of program correctness is suggested; and some new light is shed on the problem of functions with side-effects.


Information Processing Letters | 1991

A calculus of durations

Zhou Chaochen; C. A. R. Hoare; Anders P. Ravn

Abstract The purpose of the calculus of durations is to reason about designs and requirements for time-critical systems, without explicit mention of absolute time. Its distinctive feature is reasoning about integrals of the durations of different states within any given interval. The first section introduces the running example, of leakage in a gas burner. The second section defines and axiomatises the proposed calculus as an extension of interval temporal logic. The third section applies it to the problem described in the introduction. The fourth section briefly surveys alternative calculi.


Acta Informatica | 1973

An axiomatic definition of the programming language PASCAL

C. A. R. Hoare; Niklaus Wirth

SummaryThe axiomatic definition method proposed in reference [5] is extended and applied to define the meaning of the programming language PASCAL [1]. The whole language is covered with the exception of real arithmetic and go to statements.


Communications of The ACM | 1987

Laws of programming

C. A. R. Hoare; Ian J. Hayes; He Jifeng; C. C. Morgan; A. W. Roscoe; Jeff W. Sanders; Ib Holm Sørensen; J. M. Spivey; B. A. Sufrin

A complete set of algebraic laws is given for Dijkstras nondeterministic sequential programming language. Iteration and recursion are explained in terms of Scotts domain theory as fixed points of continuous functionals. A calculus analogous to weakest preconditions is suggested as an aid to deriving programs from their specifications.


The origin of concurrent programming | 2002

Towards a theory of parallel programming

C. A. R. Hoare

The objectives for a theory of parallel programming are discussed. Programming constructs for parallelism, including means for expressing resource constraints and synchorinzation, are discussed and formally defined.


Acta Informatica | 1986

Specification-oriented semantics for communicating processes

Ernst-Rüdiger Olderog; C. A. R. Hoare

SummaryA process P satisfies a specification S if every observation we can make of the behaviour of P is allowed by S. We use this idea of process correctness as a starting point for developing a specific form of denotational semantics for processes, called here specification — oriented semantics. This approach serves as a uniform framework for generating and relating a series of increasingly sophisticated denotational models for Communicating Processes.These models differ in the underlying structure of their observations which influences both the number of representable language operators and the induced notion of process correctness. Safety properties are treated by all models; the more sophisticated models also permit proofs of certain liveness properties. An important feature of the models is a special hiding operator which abstracts from internal process activity. This allows large processes to be composed hierarchically from networks of smaller ones in such a way that proofs of the whole are constructed from proofs of its components. We also show the consistency of our denotational models w.r.t. a simple operational semantics based on transitions which make internal process activity explicit.


Symposium on Semantics of Algorithmic Languages | 1971

Procedures and Parameters: An Axiomatic Approach

C. A. R. Hoare

It has been suggested, Hoare (1969), that an axiomatic approach to formal language definition might simultaneously contribute to the clarity and reliability of programs expressed in the language, and to the efficiency of their translation and execution on an electronic digital computer. This paper gives an exa~Lple of the application of the axiomatic method to the definition of procedure and parameter passing features of a high-level progr~mning language. It reveals that ease of demonstrating program correctness and high efficiency of implementation may be achieved simultaneously, provided that the programmer is willing to observe a certain familiar and natural discipline in his use of parameters.


Communications of The ACM | 1981

The emperor's old clothes

C. A. R. Hoare

The 1980 ACM Turing Award was presented to Charles Antony Richard Hoare, Professor of Computation at the University of Oxford, England, by Walter Carlson, Chairman of the Awards Committee, at the ACM Annual Conference in Nashville, Tennessee, October 27, 1980. Professor Hoare was selected by the General Technical Achievement Award Committee for his fundamental contributions to the definition and design of programming languages. His work is characterized by an unusual combination of insight, originality, elegance, and impact. He is best known for his work on axiomatic definitions of programming languages through the use of techniques popularly referred to as axiomatic semantics. He developed ingenious algorithms such as Quichsort and was responsible for inventing and promulgating advanced data structuring techniques in scientific programming languages. He has also made important contributions to operating systems through the study of monitors. His most recent work is on communicating sequential processes. Prior to his appointment to the University of Oxford in 1977, Professor Hoare was Professor of Computer Science at The Queens University in Belfast, Ireland, from 1968 to 1977 and was a Visiting Professor at Stanford University in 1973. From 1960 to 1968 he held a number of positions with Elliott Brothers, Ltd., England.

Collaboration


Dive into the C. A. R. Hoare's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Jeff W. Sanders

United Nations University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Jonathan P. Bowen

London South Bank University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Ian Wehrman

University of Texas at Austin

View shared research outputs
Researchain Logo
Decentralizing Knowledge