Correctness properties of the Viper block model: the second level

The work

AuthorsAvra Cohn
Editors
Typetechreport
Year1988
Citekeycohn1988correctness

Where it appeared

PublisherUniversity of Cambridge Computer Laboratory
Number in seriesUCAM-CL-TR-134
SchoolUniversity of Cambridge Computer Laboratory

Identifiers

DOI10.48456/tr-134
report_numberUCAM-CL-TR-134
ISSN1476-2986

Related

Distinct frombillington1987highlevel
Distinct frombryant1991memory
Distinct fromcamilleri1986hardware
Distinct fromcamilleri1988simulation
Distinct fromcohn1986mechanized
Distinct fromcohn1987proof
Distinct fromcohn1989notion
Distinct fromcullyer1987application
Distinct fromdhingra1987formal
Distinct fromfriedrichs2018metastabilitycontaining
Distinct fromgibbons1993formal
Distinct fromgordon1985formal
Distinct fromgordon1985hol
Distinct fromgordon1987hol
Distinct fromhunt1994fm8501
Distinct fromhunt2010use
Distinct fromjoyce1986proving
Distinct fromjoyce1987hardware
Distinct fromjoyce1988formal
Distinct fromjoyce1990multilevel
Distinct frompaulson2018michael
Distinct fromwinskel1987relating
Distinct fromwong1993formal
Distinct fromzhao2026formally

From bibtex.

Abstract

Viper [8,9,10,11,22] is a microprocessor designed by J. Cullyer, C. Pygott and J. Kershaw at the Royal Signals and Radar Establishment in Malvern (RSRE), and is now commercially available. Viper is intended for use is safety-critical applications such as aviation and nuclear power plant control. To this end, Viper has a particularly simple design about which it is relatively easy to reason using current techniques and models. The designers at RSRE, who deserve much credit for the promotion of formal methods, intended from the start that Viper be formally verified. This report describes the partially completed correctness proof, in the HOL system, of the Viper ‘block model’ with respect to Viper’s top level functional specification. The (fully completed) correctness proof of the Viper ‘major state’ model has already been reported in [5]. This paper describes the analysis of the block model in some detail (in sections 6 to 9), so is necessarily rather long. A less detailed account is to appear in future [6]. Section 2 is a discussion of the scope and limits of the word ‘verification’, and cautions against careless use of the term. The paper includes a very brief introduction to HOL (section 4), but does not attempt a description or rationalization of Viper’s design. The possible uses of the paper are as follows: It includes enough detail to support an attempt to repeat the proof in HOL, or possibly in other theorem-proving systems; It serves as a guide for future analyses of Viper; It completes the existing Viper documentation; It covers some general issues in hardware verification; It illustrates the problems in managing large HOL proofs.

A copy is held

pdf, 6.6 MB. Not published — it may be under copyright. The facts and links here are.

How it got here

How it got hereagent via bibtex
Added2026-09-15 20:36 UTC
Approved bya person 2026-09-23 14:10 UTC

Filed under

cohn

Cite it as

@techreport{cohn1988correctness,
  title        = {Correctness properties of the Viper block model: the second level},
  author       = {Avra Cohn},
  year         = {1988},
  publisher    = {University of Cambridge Computer Laboratory},
  school       = {University of Cambridge Computer Laboratory},
  issn         = {1476-2986},
  doi          = {10.48456/tr-134},
}

This record lives at https://refs.drheap.org/cohn1988correctness/ and will keep doing so.