Abstract
We propose an extension of classical predicate calculus, called Transaction Logic, which provides a logical foundation for the phenomenon of state changes in logic programs and databases. Transaction Logic comes with a natural model theory and a sound and complete proof theory. The proof theory not only verifies programs, but also executes them, which makes this logic an ideal tool for declarative programming of database transactions and state-modifying logic programs. The semantics of Transaction Logic leads naturally to features whose amalgamation in a single logic has proved elusive in the past. These features include hypothetical and committed updates, dynamic constraints on transaction execution, non-determinism, and bulk updates. Finally, Transaction Logic holds promise as a logical model of hitherto non-logical phenomena, including so-called procedural knowledge in AI, and the behavior of object-oriented databases, especially methods with side effects. This paper presents the semantics of Transaction Logic and a sound and complete SLD-style proof theory for a Horn-like subset of the logic.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
S. Abiteboul. Updates, a New Frontier. In Intl. Conference on Database Theory, pp. 1–18, 1988.
K. Apt, H. Blair, and A. Walker. Towards a Theory of Declarative Knowledge. In J. Minker, editor, Foundations of Deductive Databases and Logic Programming, pp. 89–148. Morgan Kaufmann, Los Altos, CA, 1988.
S. Abiteboul, R. Hull, and V. Vianu. Foundations of Databases. Addison-Wesley, 1995.
J. Allen. Towards a General Theory of Action and Time. Artificial Intelligence, 23:123–154, July 1984.
A. Aho and J. Ullman. Universality of Data Retrieval Languages. In ACM Symposium on Principles of Programming Languages, pp. 110–120, 1979.
S. Abiteboul and V. Vianu. Procedural Languages for Database Queries and Updates. Journal of Computer and System Sciences, 41:181–229, 1990.
S. Abiteboul and V. Vianu. Datalog Extensions for Database Queries and Updates. Journal of Computer and System Sciences, 43:62–124, 1991.
F. Bancilhon. A Logic-Programming/Object-Oriented Cocktail. SIGMOD Record, 15(3):11–21, September 1986.
C. Beeri. New Data Models and Languages—The Challenge. In ACM Symposium on Principles of Database Systems, pp. 1–15, New York, June 1992. ACM.
A. Bonner and M. Kifer. Reasoning about Action in Transaction Logic. In preparation. Presented at the Dagstuhl Seminar on Logic Databases and the Meaning of Change, September 23-27 1996, International Conference and Research Center for Computer Science, Schloss Dagstuhl, Wadern, Germany.
A. Bonner and M. Kifer. An Overview of Transaction Logic. Theoretical Computer Science, 133:205–265, October 1994.
A. Bonner and M. Kifer. Transaction Logic Programming (or A Logic of Declarative and Procedural Knowledge). Technical Report CSRI-323, University of Toronto, November 1995. http://www.cs.toronto.edu/~bonner/transaction-logic.html.
A. Bonner and M. Kifer. Concurrency and Communication in Transaction Logic. In Joint Intl. Conference and Symposium on Logic Programming, pp. 142–156, Bonn, Germany, September 1996. MIT Press.
A. Bonner, M. Kifer, and M. Consens. Database Programming in Transaction Logic. In A.O.C. Beeri and D. Shasha, editors, Proceedings of the International Workshop on Database Programming Languages, Workshops in Computing, pp. 309–337. Springer-Verlag, February 1994. Workshop held on Aug 30-Sept 1, 1993, New York City, NY.
A. Bonner. The Power of Cooperating Transactions. Submitted for publication.
A. Bonner. Intuitionistic Deductive Databases and the Polynomial Time Hierarchy. Journal of Logic Programming, 33(1):1–47, October 1997.
A. Bonner. A Logical Semantics for Hypothetical Rulebases with Deletion. Journal of Logic Programming, 32(2):119–170, August 1997.
A. Bonner. Transaction Datalog: a Compositional Language for Transaction Programming. In Proceedings of the International Workshop on Database Programming Languages, Estes Park, Colorado, August 1997. Springer Verlag. Long version available at http://www.cs.toronto.edu/~bonner/papers.html#transaction-logic.
A. Bonner, A. Shrufi, and S. Rozen. LabFlow-1: a Database Benchmark for High-Throughput Workflow Management. In Intl. Conference on Extending Database Technology, number 1057 in Lecture Notes in Computer Science, pp. 463–478, Avignon, France, March 25-29 1996. Springer-Verlag.
A. Chandra and D. Harel. Computable Queries for Relational Databases. Journal of Computer and System Sciences, 21(2):156–178, 1980.
W. Chen. Declarative Specification and Evaluation of Database Updates. In Intl. Conference on Deductive and Object-Oriented Databases, volume 566 of Lecture Notes in Computer Science, pp. 147–166. Springer-Verlag, December 1991.
H. Davulcu, M. Kifer, C. Ramakrishnan, and I. Ramakrishnan. Logic Based Modelling and Analysis of Workflows. in preparation, October 1997.
H. Enderton. A Mathematical Introduction to Logic. Academic Press, 1972.
J. Finger. Exploiting Constraints in Design Synthesis. PhD thesis, Stanford University, 1986.
M. Gelfond and V. Lifschitz. The Stable Model Semantics for Logic Programming. In Logic Programming: Proceedings of the Fifth Conference and Symposium, pp. 1070–1080, 1988.
G. Grahne and A. Mendelzon. Updates and Subjunctive Queries. Information and Computation, 116(2):241–252, February 1995.
N. Goodman, S. Rozen, and L. Stein. Requirements for a Deductive Query Language in the MapBase Genome-Mapping Database. In R. Ramakrishnan, editor, Applications of Logic Databases, pp. 259–278. Kluwer, 1994. ftp://genome.wi.mit.edu/pub/papers/Y1994/requirements.ps.
D. Harel. First-Order Dynamic Logic, volume 68 of Lecture Notes in Computer Science. Springer-Verlag, 1979.
D. Harel, D. Kozen, and R. Parikh. Process Logic: Expressiveness, Decidability, Completeness. Journal of Computer and System Sciences, 25(2):144–170, October 1982.
M. Kifer. Deductive and Object-Oriented Data Languages: A Quest for Integration. In Intl. Conference on Deductive and Object-Oriented Databases, Lecture Notes in Computer Science, pp. 187–212, Singapore, December 1995. Springer-Verlag. Keynote address at the 3d Intl. Conference on Deductive and Object-Oriented databases.
M. Kifer and E. Lozinskii. A Logic for Reasoning with Inconsistency. Journal of Automated Reasoning, 9(2):179–215, November 1992.
M. Kifer, G. Lausen, and J. Wu. Logical Foundations of Object-Oriented and Frame-Based Languages. Journal of ACM, pp. 741–843, July 1995.
H. Katsuno and A. Mendelzon. On the Difference between Updating a Knowledge Base and Revising It. In P. Gardenfors, editor, Belief Revision, volume 29 of Cambridge Tracts in Theoretical Computer Science, pp. 183–203. Cambridge University Press, 1992.
R. Kowalski. Database Updates in Event Calculus. Journal of Logic Programming, 12(1&2):121–146, January 1992.
B. Ludäscher, U. Hamann, and G. Lausen. A Logical Framework for Active Rules. In Proceedings of the 7th Intl. Conference on Management of Data, Pune, India, December 1995. Tata McGrow-Hill.
Y. Lespérance, H. Levesque, F. Lin, D. Marcu, and R. Reiter. A Logical Approach to High-Level Robot Programming-A Progress Report. In Control of the Physical World by Intelligent Systems, Working Notes of the 1994 AAAI Fall Symposium. AAAI Press, New Orleans, LA, November 1994.
J. Lloyd. Foundations of Logic Programming (Second Edition). Springer-Verlag, 1987.
F. Lin and R. Reiter. How to Progress a Database (and Why) I. Logical Foundations. In J. Doyle, E. Sandewall, and P. Torasso, editors, Proceedings of the International Conference on Knowledge Representation and Reasoning, pp. 425–436, 1994.
H. Levesque, R. Reiter, Y. Lesperance, F. Lin, and R. Scherl. GOLOG: A Logic Programming Language for Dynamic Domains. Journal of Logic Programming, 1997. To appear.
J. Maksym, A. Bonner, C. Dent, and G. Hemphill. Machine Analysis of Acoustical Signals. Pattern Recognition, 16(6):615–625, 1983. Also appears in Proceedings of the Workshop on Issues in Acoustic Signal/Image Processing and Recognition, San Miniato, Italy, August 5-9 1982.
J. McCarthy. Situations, Actions, and Clausal Laws, Memo 2. Stanford Artificial Intelligence Project, 1963.
L. McCarty. Permissions and Obligations. In Intl. Joint Conference on Artificial Intelligence, pp. 287–294, San Francisco, CA, 1983. Morgan Kaufmann.
J. McCarthy and P. Hayes. Some Philosophical Problems from the Standpoint of Artificial Intelligence. In B. Meltzer and D. Michie, editors, Machine Intelligence, volume 4, pp. 463–502. Edinburgh University Press, 1969. Reprinted in Readings in Artificial Intelligence, 1981, Tioga Publ. Co.
L. McCarty and R. van der Meyden. Reasoning About Indefinite Actions. In Proceedings of the International Conference on Knowledge
S. Manchanda and D. Warren. A Logic-Based Language for Database Updates. In J. Minker, editor, Foundations of Deductive Databases and Logic Programming, pp. 363–394. Morgan-Kaufmann, Los Altos, CA, 1988.
S. Naqvi and R. Krishnamurthy. Database Updates in Logic Programming. In ACM Symposium on Principles of Database Systems, pp. 251–262, New York, March 1988. ACM.
S. Naqvi and S. Tsur. A Logical Language for Data and Knowledge Bases. Computer Science Press, Rockville, MD, 1989.
G. Phipps, M. Derr, and K. Ross. Glue-Nail: A Deductive Database System. In ACM SIGMOD Conference on Management of Data, pp. 308–317, New York, 1991. ACM.
V. Pratt. Process Logic. In ACM Symposium on Principles of Programming Languages, pp. 93–100, January 1979.
T. Przymusinski. On The Declarative Semantics of Deductive Databases and Logic Programs. In J. Minker, editor, Foundations of Deductive Databases and Logic Programming, pp. 193–216. Morgan Kaufmann, Los Altos, CA, 1988.
R. Reiter. Towards a Logical Reconstruction of Relational Database Theory. In M. Brodie, J. Mylopoulos, and J. Schmidt, editors, On Conceptual Modelling: Perspectives from Artificial Intelligence, Databases and Programming Languages, pp. 191–233. Springer-Verlag, 1984.
R. Reiter. The Frame Problem in the Situation Calculus: A Simple Solution (Sometimes) and a Completeness Result for Goal Regression. In V. Lifschitz, editor, Aritifial Intelligence and Mathematical Theory of Computation: Papers in Honor of John McCarty, pp. 359–380. Academic Press, 1991.
R. Reiter. Proving Properties of States in the Situation Calculus. Artificial Intelligence, 64:337–351, December 1993.
R. Reiter. On Specifying Database Updates. Journal of Logic Programming, 25(1):53–91, October 1995.
J. Ullman. Principles of Database and Knowledge-Base Systems, Volume 1. Computer Science Press, Rockville, MD, 1988.
A. Van Gelder, K. Ross, and J. Schlipf. The Well-Founded Semantics for General Logic Programs. Journal of ACM, 38(3):620–650, 1991.
M. Winslett. A Model Based Approach to Updating Databases with Incomplete Information. ACM Transactions on Database Systems, 13(2):167–196, 1988.
C. Zaniolo. A Unified Semantics for Active and Deductive Databases. In Proceedings of the Workshop on Rules in Database Systems, Workshops in Computing. Springer-Verlag, Edinburgh, U.K., 1993.
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1998 Springer Science+Business Media New York
About this chapter
Cite this chapter
Bonner, A.J., Kifer, M. (1998). A Logic for Programming Database Transactions. In: Chomicki, J., Saake, G. (eds) Logics for Databases and Information Systems. The Springer International Series in Engineering and Computer Science, vol 436. Springer, Boston, MA. https://doi.org/10.1007/978-1-4615-5643-5_5
Download citation
DOI: https://doi.org/10.1007/978-1-4615-5643-5_5
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4613-7582-1
Online ISBN: 978-1-4615-5643-5
eBook Packages: Springer Book Archive