Skip to main navigation Skip to search Skip to main content

Thread algebra for strategic interleaving

  • J.A. Bergstra
  • , C.A. Middelburg

Research output: Contribution to journalArticleAcademicpeer-review

Abstract

We take a thread as the behavior of a sequential deterministic program under execution and multi-threading as the form of concurrency provided by contemporary programming languages such as Java and C#. We outline an algebraic theory about threads and multi-threading. In the case of multi-threading, some deterministic interleaving strategy determines how threads are interleaved. Interleaving operators for a number of plausible interleaving strategies are specified in a simple and concise way. By that, we show that it is essentially open-ended what counts as an interleaving strategy. We use deadlock freedom as an example to show that there are properties of multi-threaded programs that depend on the interleaving strategy used.
Original languageEnglish
Pages (from-to)445-474
JournalFormal Aspects of Computing
Volume19
Issue number4
DOIs
Publication statusPublished - 2007

Fingerprint

Dive into the research topics of 'Thread algebra for strategic interleaving'. Together they form a unique fingerprint.

Cite this