Transaction Logic
Transaction logic provides a logical foundation for state changes and side
effects in a logic programming language. A significant portion of this
theory is implemented in FLORA-2.
Applications of Transaction Logic include modeling and reasoning about
workflows, planning, robotics, view maintenance in databases, and
more. Some works describing these applications can be found here.
Some Papers on Transaction Logic
-
Transaction
Logic. This is the most comprehensive report that describes this logic.
-
Logic
Programming for Database Transactions
in Logics for Databases and Information Systems, J. Chomicki and G. Saake
(eds.), Kluwer Academic Publ., 1998.
This is an introduction to Transaction Logic, much shorter than the above
report with a focus on database applications.
-
Results
on Reasoning about Updates in Transaction Logic
in Transactions and Change in
Logic Databases, Lecture Notes in Computer Science, vol. 1472,
Springer Verlag, 1998.
-
Reasoning with actions in Transaction Logic,
RR'11: Proceedings of the 5th international conference on Web reasoning and
rule systems, 2011.
-
Tabling for Transaction Logic,
PPDP'10: Proceedings of the 12th international ACM SIGPLAN symposium on
Principles and practice of declarative programming, 2010.
-
Concurrent Transaction Logic
. Joint Intl. Conference and Symposium on
Logic Programming, Bonn, Germany, September 1996.
This is an extension of Transaction Logic, which allows parallelism in the
execution of complex actions. This extension is not implemented in
FLORA-2, but an independent implementation can be found
here.
One important use of Concurrent Transaction Logic is in
modeling and verification of workflows (Intl. ACM Conference on
Principles of Database Systems, 1998).
-
CTR-S: A Logic for Specifying Contracts in Semantic Web Services
Proceddings of the 13-th World Wide Web Conference (WWW2004), May 2004.
-
Older papers:
An optimized interpreter for Transaction Logic along with a performance
evaluation suite can be
downloaded here.
$Date: 2008/07/28 20:11:29 $