Here tinsert denotes the elementary update operation of transactional insert. The connective ⊗ is called serial conjunction.
The elementary update tdelete represents the transactional delete operation.
Here <> is the modal operator of possibility: If both action1 and action2 are possible, execute action1. Otherwise, if only action2 is possible, then execute it.
Here | is the logical connective of parallel conjunction of Concurrent Transaction Logic.10
A number of implementations of Transaction Logic exist:
All these implementations are open source.
A.J. Bonner and M. Kifer (1993), Transaction Logic Programming, International Conference on Logic Programming (ICLP), 1993. ↩
A.J. Bonner and M. Kifer (1994), An Overview of Transaction Logic, Theoretical Computer Science, 133:2, 1994. ↩
A.J. Bonner and M. Kifer (1998), Logic Programming for Database Transactions in Logics for Databases and Information Systems, J. Chomicki and G. Saake (eds.), Kluwer Academic Publ., 1998. http://www.cs.sunysb.edu/~kifer/TechReports/tr-chomicki.pdf ↩
A.J. Bonner and M. Kifer (1995), Transaction Logic Programming (or A Logic of Declarative and Procedural Knowledge). Technical Report CSRI-323, November 1995, Computer Science Research Institute, University of Toronto. http://www.cs.sunysb.edu/~kifer/TechReports/transaction-logic.pdf ↩
A.J. Bonner and M. Kifer (1996), Concurrency and communication in Transaction Logic, Joint Intl. Conference and Symposium on Logic Programming, Bonn, Germany, September 1996 http://www.cs.sunysb.edu/~kifer/TechReports/concurrent-trans-logic.pdf ↩
P. Fodor and M. Kifer (2011), Transaction Logic with Defaults and Argumentation Theories. In Technical communications of the 27th International Conference on Logic Programming (ICLP), July 2011. http://drops.dagstuhl.de/opus/volltexte/2011/3159/ ↩
M. Rezk and M. Kifer (2012), Transaction Logic with Partially Defined Actions. Journal on Data Semantics, August 2012, vol. 1, no. 2, Springer. https://link.springer.com/article/10.1007%2Fs13740-012-0007-8 ↩
H. Davulcu, M. Kifer and I.V. Ramakrishnan (2004), CTR-S: A Logic for Specifying Contracts in Semantic Web Services. Proceedings of the 13-th World Wide Web Conference (WWW2004), May 2004. http://www.www2004.org/proceedings/docs/2p144.pdf ↩
P. Fodor and M. Kifer (2010), Tabling for Transaction Logic. In Proceedings of the 12th international ACM SIGPLAN symposium on Principles and practice of declarative programming (PPDP), July 2010. http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.184.6968 ↩
Hung, Samuel (1996). "Transaction Logic Prototype". University of Toronto, Department of Computer Science. Retrieved 2021-05-10. http://www.cs.toronto.edu/~bonner/transaction-logic.html ↩
Sleghel, Amalia F. (2000). "Concurrent Transaction Logic Prototype". University of Toronto, Department of Computer Science. Retrieved 2021-05-10. http://www.cs.toronto.edu/~bonner/ctr/index.html ↩
"Knowledge Representation & Reasoning with Flora-2". Sourceforge.net. Retrieved 2021-05-10. http://flora.sourceforge.net ↩