{"title":"An Axiomatic Theory for Reversible Computation","authors":"Ivan Lanese, Iain Phillips, Irek Ulidowski","doi":"10.1145/3648474","DOIUrl":null,"url":null,"abstract":"<p>Undoing computations of a concurrent system is beneficial in many situations, e.g., in reversible debugging of multi-threaded programs and in recovery from errors due to optimistic execution in parallel discrete event simulation. A number of approaches have been proposed for how to reverse formal models of concurrent computation including process calculi such as CCS, languages like Erlang, and abstract models such as prime event structures and occurrence nets. However it has not been settled what properties a reversible system should enjoy, nor how the various properties that have been suggested, such as the parabolic lemma and the causal-consistency property, are related. We contribute to a solution to these issues by using a generic labelled transition system equipped with a relation capturing whether transitions are independent to explore the implications between various reversibility properties. In particular, we show how all properties we consider are derivable from a set of axioms. Our intention is that when establishing properties of some formalism it will be easier to verify the axioms rather than proving properties such as the parabolic lemma directly. We also introduce two new properties related to causal consistent reversibility, namely causal liveness and causal safety, stating, respectively, that an action can be undone if (causal liveness) and only if (causal safety) it is independent from all the following actions. These properties come in three flavours: defined in terms of independent transitions, independent events, or via an ordering on events. Both causal liveness and causal safety are derivable from our axioms.</p>","PeriodicalId":50916,"journal":{"name":"ACM Transactions on Computational Logic","volume":"52 1","pages":""},"PeriodicalIF":0.7000,"publicationDate":"2024-02-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"ACM Transactions on Computational Logic","FirstCategoryId":"94","ListUrlMain":"https://doi.org/10.1145/3648474","RegionNum":4,"RegionCategory":"数学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, THEORY & METHODS","Score":null,"Total":0}
引用次数: 0
Abstract
Undoing computations of a concurrent system is beneficial in many situations, e.g., in reversible debugging of multi-threaded programs and in recovery from errors due to optimistic execution in parallel discrete event simulation. A number of approaches have been proposed for how to reverse formal models of concurrent computation including process calculi such as CCS, languages like Erlang, and abstract models such as prime event structures and occurrence nets. However it has not been settled what properties a reversible system should enjoy, nor how the various properties that have been suggested, such as the parabolic lemma and the causal-consistency property, are related. We contribute to a solution to these issues by using a generic labelled transition system equipped with a relation capturing whether transitions are independent to explore the implications between various reversibility properties. In particular, we show how all properties we consider are derivable from a set of axioms. Our intention is that when establishing properties of some formalism it will be easier to verify the axioms rather than proving properties such as the parabolic lemma directly. We also introduce two new properties related to causal consistent reversibility, namely causal liveness and causal safety, stating, respectively, that an action can be undone if (causal liveness) and only if (causal safety) it is independent from all the following actions. These properties come in three flavours: defined in terms of independent transitions, independent events, or via an ordering on events. Both causal liveness and causal safety are derivable from our axioms.
期刊介绍:
TOCL welcomes submissions related to all aspects of logic as it pertains to topics in computer science. This area has a great tradition in computer science. Several researchers who earned the ACM Turing award have also contributed to this field, namely Edgar Codd (relational database systems), Stephen Cook (complexity of logical theories), Edsger W. Dijkstra, Robert W. Floyd, Tony Hoare, Amir Pnueli, Dana Scott, Edmond M. Clarke, Allen E. Emerson, and Joseph Sifakis (program logics, program derivation and verification, programming languages semantics), Robin Milner (interactive theorem proving, concurrency calculi, and functional programming), and John McCarthy (functional programming and logics in AI).
Logic continues to play an important role in computer science and has permeated several of its areas, including artificial intelligence, computational complexity, database systems, and programming languages.
The Editorial Board of this journal seeks and hopes to attract high-quality submissions in all the above-mentioned areas of computational logic so that TOCL becomes the standard reference in the field.
Both theoretical and applied papers are sought. Submissions showing novel use of logic in computer science are especially welcome.