Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article
Open access

A Formal System for Reasoning about Programs Accessing a Relational Database

Published: 01 July 1980 Publication History

Abstract

A formal system for proving properties of programs accessing a database is introduced. Proving that a program preserves consistency of the database is one of the possible applications of the system. The formal system is a variant of dynamic logic and incorporates a data definition language (DDL) for describing relational databases and a data manipulation language (DML) whose programs access data in a database. The DDL is a many-sorted first-order language that accounts for data aggregations. The DML features a many-sorted assignment in place of the usual data manipulation statements, in addition to the normal programming language constructs.

References

[1]
AHO, A.V., AND ULLMAN, J.B. Universality of data retrieval languages. In Proc. 6th Annu. ACM Symp. Principles of Programming Languages, Jan. 1979, pp. 110-120.
[2]
BANCILHON, F. On the completeness of query languages for relational data bases. In Proc. 7th Symp. Math. Foundations of Computer Science, Zakopane, Poland (Lecture Notes in Computer Science, Springer-Verlag, New York, Sept. 1978).
[3]
BERNSTEIN, P.A., ET AL. A formal model of concurrency control mechanisms for database systems. IEEE Trans. Softw. Eng. (May 1979).
[4]
BERNSTEIN, P.A., SHIPMAN, D.W., AND ROTHNIE, J.B., JR. Concurrency control in a system for distributed databases (SDD-1). ACM Trans. Database Syst. 5, 1 (March 1980), 18-51.
[5]
CASANOVA, M.A. The concurrency control problem for database systems. Ph.D. dissertation, Harvard Univ., Cambridge, Mass., Nov. 1979.
[6]
CASANOVA, M.A., AND BERNSTEIN, P.A. The logic of a relational data manipulation language. In Proc. 6th ACM Symp. Principles of Programming Languages, Jan. 1979, pp. 101-109.
[7]
CHAMBERLiN, D.D., ET AL. SEQUEL-2: A unified approach to data definition manipulation and control. Tech. Rep. RJ 1798, IBM, New York, June 1976.
[8]
CHANDRA, A.K., AND HAREL, D. Computable queries for relational databases. In Proc. llth ACM Syrup. Theory of Computing, May 1979.
[9]
CLARKE, E.M., JR. Programming language constructs for which it is impossible to obtain good Hoare axiom systems. J. ACM 26, 1 (Jan. 1979), 129-147.
[10]
CODO, E.F. A database sublanguage founded on the relational calculus. In Proc. 1971 ACM- SiGFIDET Workshop on Data Description, Access and Control.
[11]
CODD, E.F. A relational modelof data for large shared data banks. Commun. ACM 13, 6 (June 1970), 377-387.
[12]
COOK, S.A. Soundness and completeness of an axiom system for program verification. SIAM J. Comput. 7, 1 (Feb. 1978).
[13]
DAYAL, U. Schema mapping problems in database systems. Ph.D. dissertation, Harvard Univ., Cambridge, Mass., Aug. 1979.
[14]
DIJKSTRA, E.W. A Discipline of Programming. Prentice-Hall, Englewood Cliffs, N.J., 1976.
[15]
ENDERTON, H.B. A Mathematical Introduction to Logic. Academic Press, New York, 1972.
[16]
ESWARAN, K.P. Specifications, implementations and interactions of a trigger subsystem in an integrated database system. Tech. Rep. RJ1820, IBM, New York, Aug. 1976.
[17]
ESWARAN, K.P., ~.T AL. The notions of consistency and predicate locks in a database system. Commun. ACM 19, 11 (Nov. 1976), 624-633.
[18]
FLON, L., AND SUZUKI, N. Nondeterminism and the correctness of parallel programs. Presented at the IFIP Conf. Working Group on Formal Specifications of Programming Languages, Aug. 1977.
[19]
GARDARIN, G., AND MELKANOFF, M. Proving consistency of database transactions. In Proc. 1979 Int. Conf. Very Large Data Bases, Oct. 1979, pp. 291-298.
[20]
HAREL, D. First-order dynamic logic. In Lecture notes in Computer Science, vol. 68, Springer- Verlag, New York, 1979.
[21]
HELl), G. D., STONEBRAKER, M.R., AND WONC, E. INGRES--A relational database system. In Proc. 1975 AFIPS NCC, AFIPS Press, Arlington, Va., pp. 409-416.
[22]
HOAaE, C.A.R. An axiomatic basis for computer programming. Commun. A CM 12, 10 (Oct. 1969), 576-580.
[23]
Information management system virtual storage (IMS/VS) general information manual. IBM no. GH20-1260, IBM, New York.
[24]
LAMPORT, L. Towards a theory of correctness for multi-user data base system. Tech. Rep. TR- CA-7610-0712, Massachusetts Computer Associates, Oct. 1976.
[25]
MINKER, J. Search strategy and selection function for an inferential relational system A CM Trans. Database Syst. 3, I (Mar. 1978), 1-31.
[26]
NICOLAS, J.M. First-order logic formalization for functional, multivalued and mutual dependencies, in Proc. 1978 ACM-SIGMOD Int. Conf. Management of Data, May 1978, pp. 40-46.
[27]
PAPADIMITRIOU, C.H., BERNSTEIN, P.A., AND ROTHNIE, J.B. Some computational problems related to database concurrency control. In Proc. Conf. Theoretical Computer Science, Aug. 1977, pp. 275-282.
[28]
PRATT, V.R. Semantical considerations on Floyd-Hoare logic. In Proc. 17th IEEE Symp. Foundations of Computer Science, Oct. 1976, pp. 109-120.
[29]
SCHMIDT, J.W. Some high-level language constructs for data of type relation. A CM Trans. Database Syst. 2, 3 (Sept. 1977), 247-261.
[30]
SHOENFIELD, J.R. Mathematical Logic. Addison-Wesley, Reading, Mass., 1967.
[31]
STEARNS, R.E., ET AL. Concurrency control for database systems. In Proc. 17th IEEE Syrup. Foundations of Computer Science, Oct. 1976, pp. 19-32.
[32]
STONEBRAKER, M. Implementation of integrity constraints and views by query modification. In Proc. ACM-SIGMOD Int. Conf. Management of Data, May 1975.
[33]
STO~EBRAKER, M., Wo~c, E., AND KREPS, P. The design and implementation of INGRES. ACM Trans. Database Syst. I, 3 (Sept. 1976), 189-222.
[34]
THOMAS, R.H. A majority consensus approach to concurrency control for multiple copy databases. ACM Trans. Database Syst. 4, 2 (June 1979), 180-209.
[35]
VAN EMI)EN, M.H. Computation and deductive information retrieval. Presented at the IFIP Conf. Working Group on Formal Specifications of Programming Languages, Aug. 1977.

Cited By

View all
  • (2011)Maintaining database integrity with refinement typesProceedings of the 25th European conference on Object-oriented programming10.5555/2032497.2032530(484-509)Online publication date: 25-Jul-2011
  • (2011)Maintaining Database Integrity with Refinement TypesECOOP 2011 – Object-Oriented Programming10.1007/978-3-642-22655-7_23(484-509)Online publication date: 2011
  • (2006)Static management of integrity in object-oriented databases: Design and implementationAdvances in Database Technology — EDBT'9810.1007/BFb0100993(309-325)Online publication date: 22-Nov-2006
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Programming Languages and Systems
ACM Transactions on Programming Languages and Systems  Volume 2, Issue 3
July 1980
195 pages
ISSN:0164-0925
EISSN:1558-4593
DOI:10.1145/357103
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 July 1980
Published in TOPLAS Volume 2, Issue 3

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)34
  • Downloads (Last 6 weeks)7
Reflects downloads up to 03 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2011)Maintaining database integrity with refinement typesProceedings of the 25th European conference on Object-oriented programming10.5555/2032497.2032530(484-509)Online publication date: 25-Jul-2011
  • (2011)Maintaining Database Integrity with Refinement TypesECOOP 2011 – Object-Oriented Programming10.1007/978-3-642-22655-7_23(484-509)Online publication date: 2011
  • (2006)Static management of integrity in object-oriented databases: Design and implementationAdvances in Database Technology — EDBT'9810.1007/BFb0100993(309-325)Online publication date: 22-Nov-2006
  • (2006)Static integrity constraint management in object-oriented database programming languages via predicate transformersECOOP'97 — Object-Oriented Programming10.1007/BFb0053374(60-84)Online publication date: 23-May-2006
  • (2002)Simulating the Interaction of Database AgentsDatabase and Expert Systems Applications10.1007/3-540-48309-8_46(499-510)Online publication date: 18-Jun-2002
  • (2002)Operational Characterization of Genre in Literary and Real-Life DomainsConceptual Modeling — ER ’9910.1007/3-540-47866-3_31(460-474)Online publication date: 4-Jun-2002
  • (2002)Understanding and Simulating Narratives in the Context of Information SystemsConceptual Modeling — ER 200210.1007/3-540-45816-6_30(291-306)Online publication date: 26-Sep-2002
  • (1993)The deductive synthesis of database transactionsACM Transactions on Database Systems10.1145/169725.16971618:4(626-677)Online publication date: 1-Dec-1993
  • (1992)Integrity Maintenance in Object-Oriented DatabasesProceedings of the 18th International Conference on Very Large Data Bases10.5555/645918.672482(469-480)Online publication date: 23-Aug-1992
  • (1991)The Development of a Knowledge-Based Database Transaction Design AssistantDatabase and Expert Systems Applications10.1007/978-3-7091-7555-2_60(356-361)Online publication date: 1991
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Full Access

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media