CitedEvidence
User Settings
Open AccessArticle10.29007/c7v2

Extending Non-Termination Proof Techniques to Asynchronously Communicating Concurrent Programs

M. Küntz,Stefan Leue,Christoph Scheben-2018-01-23-EPiC series in computing

TL;DRAbstract

Currently, there are no approaches known that allow for non-termination proofs of concurrent programs which account for asynchronous communication via FIFO message queues. Those programs may be written in high-level languages such as Java or Promela. We present a first approach to prove non-termination for such programs. In addition to integers, the programs that we consider may contain queues as data structures. We present a representation of queues and the operations on them in the domain of integers, and generate invariants that help us prove non-termination of selected control flow loops using a theorem proving approach. We illustrate this approach by applying a prototype tool implementation to a number of case studies.

Chat with Paper

AI Agents for this Paper

Currently, there are no approaches known that allow for non-termination proofs of concurrent programs which account for asynchronous communication via FIFO message queues. Those programs may be written in high-level languages such as Java or Promela. We present a first approach to prove non-termination for such programs. In addition to integers, the programs that we consider may contain queues as data structures. We present a representation of queues and the operations on them in the domain of integers, and generate invariants that help us prove non-termination of selected control flow loops using a theorem proving approach. We illustrate this approach by applying a prototype tool implementation to a number of case studies.

Keywords

Computer scienceMathematical proofAsynchronous communicationProgramming languageFIFO (computing and electronics)JavaTheoretical computer scienceDomain (mathematical analysis)

Chat

Click to start Chat