Regular expressions describe languages accepted by finite state automata with angelic nondeterminism. Regular expressions obey the axioms of Kleene algebra. We consider automata with demonic nondeterminism, using a different criterion for acceptance. The demonic nondeterminism corresponds to that of predicate transformers; it allows nondeterministic sequential and concurrent programs to be modelled. The corresponding regular expressions obey the axioms of the left (lazy) Kleene algebra. The algebra is extended with operators for parallel composition, intersection (to express that a program must satisfy multiple properties), complement (to express that a program must not have a certain property), and difference (to express that certain properties must be excluded). The “naive” algorithm for the equivalence of two automata is adapted to automata with demonic nondeterminism. The theory is implemented in an interactive notebook.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

On Concurrent Program Algebra and Demonic Automata

  • Emil Sekerinski

摘要

Regular expressions describe languages accepted by finite state automata with angelic nondeterminism. Regular expressions obey the axioms of Kleene algebra. We consider automata with demonic nondeterminism, using a different criterion for acceptance. The demonic nondeterminism corresponds to that of predicate transformers; it allows nondeterministic sequential and concurrent programs to be modelled. The corresponding regular expressions obey the axioms of the left (lazy) Kleene algebra. The algebra is extended with operators for parallel composition, intersection (to express that a program must satisfy multiple properties), complement (to express that a program must not have a certain property), and difference (to express that certain properties must be excluded). The “naive” algorithm for the equivalence of two automata is adapted to automata with demonic nondeterminism. The theory is implemented in an interactive notebook.