### Abstract

CSP, a simple and elegant process algebra, is used to specify five successive parallel versions of Brzozowski’s sequential algorithm for constructing deterministic finite automata from regular expressions. Early versions were not sufficiently mature to easily map to a programming language. However, each version exposed new possibilities for refinement so that later versions could subsequently be implemented (in Go). The exercise illustrates the value of the lightweight use of process algebras for supporting abstract thinking when attempting to solve computational problems in a parallel fashion. The emphasis here is on algorithm specification and not on the implementation.

Original language | English |
---|---|

Title of host publication | The Role of Theory in Computer Science : Essays Dedicated to Janusz Brzozowski |

Place of Publication | s.l. |

Publisher | World Scientific |

Pages | 217-244 |

Number of pages | 28 |

ISBN (Electronic) | 978-981-3148-21-5 |

ISBN (Print) | 978-981-3148-19-2 |

DOIs | |

Publication status | Published - 2017 |

### Fingerprint

### Cite this

*The Role of Theory in Computer Science : Essays Dedicated to Janusz Brzozowski*(pp. 217-244). s.l.: World Scientific. https://doi.org/10.1142/9789813148208_0010

}

*The Role of Theory in Computer Science : Essays Dedicated to Janusz Brzozowski.*World Scientific, s.l., pp. 217-244. https://doi.org/10.1142/9789813148208_0010

**CSP for parallelising Brzozowski's DFA construction algorithm.** / Strauss, T.; Watson, B.W.; Kourie, D.G.; Cleophas, L.G.W.A.

Research output: Chapter in Book/Report/Conference proceeding › Chapter › Academic › peer-review

TY - CHAP

T1 - CSP for parallelising Brzozowski's DFA construction algorithm

AU - Strauss, T.

AU - Watson, B.W.

AU - Kourie, D.G.

AU - Cleophas, L.G.W.A.

PY - 2017

Y1 - 2017

N2 - CSP, a simple and elegant process algebra, is used to specify five successive parallel versions of Brzozowski’s sequential algorithm for constructing deterministic finite automata from regular expressions. Early versions were not sufficiently mature to easily map to a programming language. However, each version exposed new possibilities for refinement so that later versions could subsequently be implemented (in Go). The exercise illustrates the value of the lightweight use of process algebras for supporting abstract thinking when attempting to solve computational problems in a parallel fashion. The emphasis here is on algorithm specification and not on the implementation.

AB - CSP, a simple and elegant process algebra, is used to specify five successive parallel versions of Brzozowski’s sequential algorithm for constructing deterministic finite automata from regular expressions. Early versions were not sufficiently mature to easily map to a programming language. However, each version exposed new possibilities for refinement so that later versions could subsequently be implemented (in Go). The exercise illustrates the value of the lightweight use of process algebras for supporting abstract thinking when attempting to solve computational problems in a parallel fashion. The emphasis here is on algorithm specification and not on the implementation.

U2 - 10.1142/9789813148208_0010

DO - 10.1142/9789813148208_0010

M3 - Chapter

SN - 978-981-3148-19-2

SP - 217

EP - 244

BT - The Role of Theory in Computer Science : Essays Dedicated to Janusz Brzozowski

PB - World Scientific

CY - s.l.

ER -