C. A. R. Hoare’s research while affiliated with University of Oxford and other places

What is this page?


This page lists works of an author who doesn't have a ResearchGate profile or hasn't added the works to their profile yet. It is automatically generated from public (personal) data to further our legitimate goal of comprehensive and accurate scientific recordkeeping. If you are this author and want this page removed, please let us know.

Publications (171)


FIGURE E Cognitive framework of the brain (CFB).
FIGURE Theoretical foundations of κC.
FIGURE Layered reference model of the brain (LRMB) (Wang et al., ,,,,).
FIGURE E OAR model of knowledge as dynamic neural clusters.
FIGURE Hierarchical intelligence model (HIM) of intelligence science.

+2

The Odyssey to Next-generation Computers: Cognitive Computers (κC) Inspired by the Brain and Powered by Intelligent Mathematics
  • Article
  • Full-text available

May 2023

·

350 Reads

·

13 Citations

Frontiers in Computer Science

·

Bernard Widrow

·

C.A.R. Hoare

·

[...]

·

Cognitive computers (κC) are intelligent processors advanced from data and information processing to autonomous knowledge learning and intelligence generation. This study presents a retrospective and prospective review of the odyssey toward κC empowered by transdisciplinary basic research and engineering advances. A wide range of fundamental theories and innovative technologies for κC is explored, and a set of underpinning intelligent mathematics (IM) is created. The architectures of κC for cognitive computing and Autonomous Intelligence Generation (AIG) are designed as a brain-inspired cognitive engine. Applications of κC in autonomous AI (AAI) are demonstrated by pilot projects. This study reveals that AIG will no longer be a privilege restricted only to humans via the odyssey to κC toward training-free and self-inferencing computers.

Download

On Locality and the Exchange Law for Concurrent Processes

September 2011

·

162 Reads

·

23 Citations

Lecture Notes in Computer Science

This paper studies algebraic models for concurrency, in light of recent work on Concurrent Kleene Algebra and Separation Logic. It establishes a strong connection between the Concurrency and Frame Rules of Separation Logic and a variant of the exchange law of Category Theory. We investigate two standard models: one uses sets of traces, and the other is state-based, using assertions and weakest preconditions. We relate the latter to standard models of the heap as a partial function. We exploit the power of algebra to unify models and classify their variations.


Differential static analysis: Opportunities, applications, and challenges

November 2010

·

79 Reads

·

56 Citations

It is widely believed that program analysis can be more closely targeted to the needs of programmers if the program is accompanied by further redundant documentation. This may include regression test suites, API protocol usage, and code contracts. To this should be added the largest and most redundant text of all: the previous version of the same program. It is the differences between successive versions of a legacy program already in use which occupy most of a programmer's time. Although differential analysis in the form of equivalence checking has been quite successful for hardware designs, it has not received as much attention in the static program analysis community. This paper briefly summarizes the current state of the art in differential static analysis for software, and suggests a number of promising applications. Although regression test generation has often been thought of as the ultimate goal of differential analysis, we highlight several other applications that can be enabled by differential static analysis. This includes equivalence checking, semantic diffing, differential contract checking, summary validation, invariant discovery and better debugging. We speculate that differential static analysis tools have the potential to be widely deployed on the developer's toolbox despite the fundamental stumbling blocks that limit the adoption of static analysis.


Foundations of Concurrent Kleene Algebra

November 2009

·

77 Reads

·

13 Citations

Lecture Notes in Computer Science

A Concurrent Kleene Algebra offers two composition operators, one that stands for sequential execution and the other for concurrent execution [10]. In this paper we investigate the abstract background of this law in terms of independence relations on which a concrete trace model of the algebra is based. Moreover, we show the interdependence of the basic properties of such relations and two further laws that are essential in the application of the algebra to a Jones style rely/guarantee calculus. Finally we reconstruct the trace model in a more abstract setting based on the notion of atoms from lattice theory.


The Verified Software Initiative: A Manifesto

October 2009

·

427 Reads

·

76 Citations

ACM Computing Surveys

A team of researchers from SRI International Computer Science Laboratory has proposed a long-term research program toward the construction of error-free software systems. The research project, called the Verified Software Initiative, will make an effort to a comprehensive theory of programming that covers the features needed to build practical and reliable programs. It will focus on a coherent toolset that automates the theory and scales up to the analysis of industrial-strength software. It will also develop a collection of realistic verified programs that can replace unverified programs in existing service and continue to evolve in a verified state. Verification involves the rigorous demonstration of the correctness of software with respect to a specification of its intended behavior. It can be applied at all phases of the software lifecycle including design to maintenance.




Graphical models of separation logic

August 2009

·

39 Reads

·

26 Citations

Information Processing Letters

Graphs are used to model control and data flow among events occurring in the execution of a concurrent program. Our treatment of data flow covers both shared storage and external communication. Nevertheless, the laws of Hoare and Jones correctness reasoning remain valid when interpreted in this general model.


Specification-oriented semantics for communicating processes

October 2006

·

19 Reads

·

43 Citations

Acta Informatica

We are aiming at a classification of semantical models for Communicating Processes that will enable us to recommend certain models which are just detailed enough for particular applications. But before such an aim can be fully realised, more sophisticated models of processes should be studied. For example, we have not considered the notion of state so far. This would allow to add assignment and explicit value passing between processes, thus combining sequential programs with Communicating Processes. It is also important to ensure that the operators satisfy the usual algebraic laws, for example parallel composition should be associative. And the relationship between specification-oriented denotational semantics used here and the operational semantics used in [12,13,16] should be studied. This requires an explicit concept of divergence. In particular, it is interesting to investigate how the criterion P sat S can be derived systematically from the operational semantics. A significant step in this direction has already been made in [14]. Finally, an explicit syntax for specifications and proof systems for the relation P sat S should be developed. First proposals for such proof systems can be found in [5,9].



Citations (78)


... Such initiatives in cognitive human-machine teaming underscore the increasing demand for innovative computing paradigms, often termed cognitive computers [113]. In response, quantum and NC systems are establishing the groundwork for the next generation of AI and ML models, enabling more adaptive, efficient and human-like decision-making in complex environments [60,87]. ...

Reference:

Transforming Traditional Neural Networks into Neuromorphic Quantum-Cognitive Models: A Tutorial with Applications
The Odyssey to Next-generation Computers: Cognitive Computers (κC) Inspired by the Brain and Powered by Intelligent Mathematics

Frontiers in Computer Science

... Before the ProCoS project, Jifeng collaborated with Tony Hoare on research concerning the "weakest prespecification", generalizing the concept of Edsger Dikstra's weakest precondition. This was first published as a PRG Technical Monograph in 1985 [44], then as two related journal papers in 1986 [45,46], and also as a shorter summary journal paper in 1987 [52]. Later they collaborated with Jeff Sanders on data refinement [27] and prespecification for such refinement [48]. ...

The Weakest Prespecification, Part I
  • Citing Article
  • January 1986

Fundamenta Informaticae

... Before the ProCoS project, Jifeng collaborated with Tony Hoare on research concerning the "weakest prespecification", generalizing the concept of Edsger Dikstra's weakest precondition. This was first published as a PRG Technical Monograph in 1985 [44], then as two related journal papers in 1986 [45,46], and also as a shorter summary journal paper in 1987 [52]. Later they collaborated with Jeff Sanders on data refinement [27] and prespecification for such refinement [48]. ...

The Weakest Prespecification, Part II
  • Citing Article
  • April 1986

Fundamenta Informaticae

... Meanwhile a series of joint workshops has been organized (e.g. Bjorner et al., 1990). A common introduction to VDM and Z is given by Sheppard (1995), a comparison of both languages is provided by Hayes 15. ...

VDM '90 VDM and Z — Formal Methods in Software Development: Third International Symposium of VDM Europe Kiel, FRG, April 17–21, 1990 Proceedings
  • Citing Book
  • January 1990

Lecture Notes in Computer Science

... The other book was on high-integrity system specification and design (High-Integrity System Specification and Design) [237], with classic papers, including some related to formal methods [239,240,277]. This included additional introductory commentary in a number of parts, for example covering formal methods [342] and real-time and safetycritical systems [394]. ...

Formal Methods
  • Citing Chapter
  • January 1999

... Modern distributed systems typically consist of a large number of interdependent hardware and software components. Some dependencies may not even be explicit, and Leslie Lamport's famous quote "a distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable" [14] greatly captures the essence of the problem. In the following, we will use the term network entity, or simply entity, to refer to any component of a distributed system at any level of abstraction (e.g., subnet, host, application, service). ...

Concurrent and Distributed Systems
  • Citing Chapter
  • January 1999

... Below we give a set of general conditions under which different underlying data representations in a class give the same observable behaviour to some client of that class, under the usual assumption that the interfaces (the domain of the set of methods) are the same and that fields are protected from direct access. This is therefore a type of data refinement [HHS86,Jon90,dRE01]. An advantage of structuring the abstract syntax according to relevant conceptual processes (classes, objects, and methods) is that many of the conditions are immediately established by term homomorphisms. ...

Data refinement refined, in 'ESOP 86', Vol. 213 of Lecture Notes in Computer Science
  • Citing Article
  • January 1986

... Due to the fact, that for all teams, participated in a race, number of the stage j at every relay point may to increment only, for external viewer sequence of switches during relays in the system as a whole has the nature of evolution [10][11][12][13], which develops from functional state, being defined with vector [14] ...

Strategic directions in concurrency research

ACM Computing Surveys

... This logic focuses on the sequence and timing of events, and can describe a wide range of properties, such as safety, reachability, aliveness, fairness, and real-time. For formal specifications written using temporal logic, the behavior model needs to be described with the corresponding formal language, like CSP [14], Promela [15], BDD [16], TA [17], etc. If the model and specifications are formalized correctly, the model checker will automatically determine whether the property is satisfied. ...

Communicating Sequential Systems
  • Citing Article
  • January 1985