Title :
Bridging CSP and C++ with selective formalism and executable specifications
Author_Institution :
Dept. of Comput. & Inf. Sci., Guelph Univ., Ont., Canada
Abstract :
CSP (communicating sequential processes) is a useful algebraic notation for creating a hierarchical behavioral specification for concurrent systems, due to its formal interprocess synchronization and communication semantics. CSP specifications are amenable to simulation and formal verification by model-checking tools. To overcome the drawback that CSP is neither a full-featured nor popular programming language, an approach called "selective formalism" allows the use of CSP to be limited to specifying the control portion of a system, while the rest of its functionality is supplied in the form of C++ modules. These are activated through association with abstract events in the CSP specification. The target system is constructed using a framework called CSP++, which automatically translates CSP specifications into C++, thereby making CSP directly executable. Thus a bridge is built that allows a formal method to be combined with a popular programming language. It is believed that this methodology can be extended to hardware/software codesign.
Keywords :
C++ language; algebraic specification; communicating sequential processes; C++ language; C++ module; CSP specification; CSP++; abstract event; algebraic notation; automatic translation; communicating sequential processes; communication semantics; concurrent system; executable specification; formal interprocess synchronization; formal method; formal verification; hardware-software codesign; hierarchical behavioral specification; model-checking tool; programming language; selective formalism; simulation; system control specification; Automatic control; Communication system control; Computational modeling; Computer languages; Concurrent computing; Control systems; Formal verification; Hardware; Information science; Spine;
Conference_Titel :
Formal Methods and Models for Co-Design, 2003. MEMOCODE '03. Proceedings. First ACM and IEEE International Conference on
Conference_Location :
Mont Saint Michel, France
Print_ISBN :
0-7695-1923-7
DOI :
10.1109/MEMCOD.2003.1210108