FDR (software)

From Wikipedia, the free encyclopedia
(Redirected from FDR2)

Developer(s)University of Oxford, Cocotec
Stable release
4.2.4 / 19 February 2019; 3 years ago (2019-02-19)
Operating system
  • Linux
  • MacOS
  • Windows
TypeCSP refinement checker
Licenseproprietary software

FDR (Failures-Divergences Refinement) and subsequently FDR2, FDR3 and FDR4 are refinement checking software tools, designed to check formal models expressed in Communicating sequential processes (CSP). The tools were originally developed by Formal Systems (Europe) Ltd.[1] Bill Roscoe of the Department of Computer Science, University of Oxford devised many of the algorithms used by the tool and Michael Goldsmith[2] was instrumental in the implementation.[3] FDR2 was developed by Department of Computer Science, University of Oxford from where it was freely available for academic and other non-commercial use.[4]

FDR is often described as a model checker, but is technically a refinement checker, in that it converts two CSP process expressions into Labelled Transition Systems (LTSs), and then determines whether one of the processes is a refinement of the other within some specified semantic model (traces, failures, failures/divergence and some other alternatives).[5] FDR2 applies various state-space compression algorithms to the process LTSs in order to reduce the size of the state-space that must be explored during a refinement check.

FDR2 has gone through many releases, having replaced the earlier tool now referred to as FDR1 in 1995. It has been succeeded by FDR3, a completely re-written version incorporating amongst other things parallel execution and an integrated type checker. FDR3 is released by the University of Oxford, which also released FDR2 in the period 2008-12.[6] A ProBE CSP Animator is integrated in FDR3. It now has been succeeded by FDR4. FDR4 is available from Cocotec.[7]


  1. ^ Formal Systems (Europe) Ltd.
  2. ^ Professor Michael Goldsmith (also now of Oxford University).
  3. ^ Philippa Broadfoot and Bill Roscoe. Tutorial on FDR and Its Applications. In Klaus Havelund, John Penix, Willem Visser (editors), SPIN model checking and software verification, Springer-Verlag, Lecture Notes in Computer Science, Volume 1885, page 322, 2000.
  4. ^ Software: FDR2, with commercial licences obtainable from Formal Systems (Europe) Ltd.
  5. ^ A.W. Roscoe (1994). "Model-checking CSP". In A Classical Mind: essays in Honour of C.A.R. Hoare. Prentice Hall. {{cite journal}}: Cite journal requires |journal= (help)
  6. ^ Introduction to FDR3
  7. ^ Software: FDR4, with commercial licences obtainable after download and first start