The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Concurrency: state models & Java programs
Concurrency: state models & Java programs
Communication and Concurrency
Concurrent and Real Time Systems: The CSP Approach
Concurrent and Real Time Systems: The CSP Approach
JBTools: an experimental platform for the formal B method
PPPJ '02/IRE '02 Proceedings of the inaugural conference on the Principles and Practice of programming, 2002 and Proceedings of the second workshop on Intermediate representation engineering for virtual machines, 2002
csp2B: A Practical Approach to Combining CSP and B
FM '99 Proceedings of the Wold Congress on Formal Methods in the Development of Computing Systems-Volume I - Volume I
Using a Process Algebra to Control B Operations
IFM '99 Proceedings of the 1st International Conference on Integrated Formal Methods
ASE '00 Proceedings of the 15th IEEE international conference on Automated software engineering
A CSP Model for Java Multithreading
PDSE '00 Proceedings of the International Symposium on Software Engineering for Parallel and Distributed Systems
Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Combining CSP and b for specification and property verification
FM'05 Proceedings of the 2005 international conference on Formal Methods
Practical application of CSP and FDR to software design
CSP'04 Proceedings of the 2004 international conference on Communicating Sequential Processes: the First 25 Years
Verifying security protocols: an application of CSP
CSP'04 Proceedings of the 2004 international conference on Communicating Sequential Processes: the First 25 Years
Applied formal methods – from CSP to executable hybrid specifications
CSP'04 Proceedings of the 2004 international conference on Communicating Sequential Processes: the First 25 Years
Linking Event-B and Concurrent Object-Oriented Programs
Electronic Notes in Theoretical Computer Science (ENTCS)
Translation of Z specifications to executable code: Application to the database domain
Information and Software Technology
Hi-index | 0.00 |
A recent contribution to the formal specification and verification of concurrent systems is the integration of the state- and event-based approaches B and CSP, specifically in the ProB model checking tool. At the implementation end of the development, concurrent programming in Java remains a demanding and error-prone activity, because of the need to verify critical properties of safety and liveness as well as functional correctness. This work contributes to the automated development of concurrent Java programs from such integrated specifications. The JCSP package was originally designed as a proven clean Java concurrency vehicle for the implementation of certain CSP specifications. In the context of best current Java concurrent programming practice, we extend the original JCSP package to support the integrated B and CSP specification by implementing new channel classes. We propose rules for the automated translation of the integrated specification to multi-threaded Java using the extended JCSP channel classes. We briefly present a prototype translation tool which extends ProB, with a worked example, and conclude with a strategy for formally verifying the translation.