FDR (Failures-Divergences Refinement) and subsequently FDR2 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. Bill Roscoe of the Department of Computer Science, University of Oxford devised many of the algorithms used by the tool and Michael Goldsmith was instrumental in the implementation. FDR2 is developed by Oxford University Department of Computer Science from where is it is freely available for academic and other non-commercial use: 
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). 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. A ProBE CSP Animator is integrated in FDR3.
- Formal Systems (Europe) Ltd.
- Professor Michael Goldsmith (also now of Oxford University).
- 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.
- Software: FDR2, with commercial licences obtainable from Formal Systems (Europe) Ltd.
- A.W. Roscoe (1994). "Model-checking CSP". In A Classical Mind: essays in Honour of C.A.R. Hoare. Prentice Hall.
- Introduction to FDR3
|This programming-tool-related article is a stub. You can help Wikipedia by expanding it.|