Dynamic Algebras: Examples, Constructions, Applications
Dynamic Algebras: Examples, Constructions, Applications Vaughan Pratt∗ Dept. of Computer Science, Stanford, CA 94305 Abstract Dynamic algebras combine the classes of Boolean (B ∨ 0 0) and regu- lar (R ∪ ; ∗) algebras into a single finitely axiomatized variety (BR 3) resembling an R-module with “scalar” multiplication 3. The basic result is that ∗ is reflexive transitive closure, contrary to the intuition that this concept should require quantifiers for its definition. Using this result we give several examples of dynamic algebras arising naturally in connection with additive functions, binary relations, state trajectories, languages, and flowcharts. The main result is that free dynamic algebras are residu- ally finite (i.e. factor as a subdirect product of finite dynamic algebras), important because finite separable dynamic algebras are isomorphic to Kripke structures. Applications include a new completeness proof for the Segerberg axiomatization of propositional dynamic logic, and yet another notion of regular algebra. Key words: Dynamic algebra, logic, program verification, regular algebra. This paper originally appeared as Technical Memo #138, Laboratory for Computer Science, MIT, July 1979, and was subsequently revised, shortened, retitled, and published as [Pra80b]. After more than a decade of armtwisting I. N´emeti and H. Andr´eka finally persuaded the author to publish TM#138 itself on the ground that it contained a substantial body of interesting material that for the sake of brevity had been deleted from the STOC-80 version. The principal changes here to TM#138 are the addition of footnotes and the sections at the end on retrospective citations and reflections. ∗This research was supported by the National Science Foundation under NSF grant no.
[Show full text]