A Formal System for Reasoning about Programs Accessing a Relational Database

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...

Full description

Bibliographic Details
Published in:ACM Transactions on Programming Languages and Systems
Main Authors: Casanova, Marco R., Bernstein, Phillip A.
Format: Article in Journal/Newspaper
Language:English
Published: Association for Computing Machinery (ACM) 1980
Subjects:
DML
Online Access:http://dx.doi.org/10.1145/357103.357111
https://dl.acm.org/doi/pdf/10.1145/357103.357111
id cracm:10.1145/357103.357111
record_format openpolar
spelling cracm:10.1145/357103.357111 2024-05-19T07:39:27+00:00 A Formal System for Reasoning about Programs Accessing a Relational Database Casanova, Marco R. Bernstein, Phillip A. 1980 http://dx.doi.org/10.1145/357103.357111 https://dl.acm.org/doi/pdf/10.1145/357103.357111 en eng Association for Computing Machinery (ACM) ACM Transactions on Programming Languages and Systems volume 2, issue 3, page 386-414 ISSN 0164-0925 1558-4593 journal-article 1980 cracm https://doi.org/10.1145/357103.357111 2024-05-01T06:44:27Z 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. Article in Journal/Newspaper DML ACM Publications (Association for Computing Machinery) ACM Transactions on Programming Languages and Systems 2 3 386 414
institution Open Polar
collection ACM Publications (Association for Computing Machinery)
op_collection_id cracm
language English
description 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.
format Article in Journal/Newspaper
author Casanova, Marco R.
Bernstein, Phillip A.
spellingShingle Casanova, Marco R.
Bernstein, Phillip A.
A Formal System for Reasoning about Programs Accessing a Relational Database
author_facet Casanova, Marco R.
Bernstein, Phillip A.
author_sort Casanova, Marco R.
title A Formal System for Reasoning about Programs Accessing a Relational Database
title_short A Formal System for Reasoning about Programs Accessing a Relational Database
title_full A Formal System for Reasoning about Programs Accessing a Relational Database
title_fullStr A Formal System for Reasoning about Programs Accessing a Relational Database
title_full_unstemmed A Formal System for Reasoning about Programs Accessing a Relational Database
title_sort formal system for reasoning about programs accessing a relational database
publisher Association for Computing Machinery (ACM)
publishDate 1980
url http://dx.doi.org/10.1145/357103.357111
https://dl.acm.org/doi/pdf/10.1145/357103.357111
genre DML
genre_facet DML
op_source ACM Transactions on Programming Languages and Systems
volume 2, issue 3, page 386-414
ISSN 0164-0925 1558-4593
op_doi https://doi.org/10.1145/357103.357111
container_title ACM Transactions on Programming Languages and Systems
container_volume 2
container_issue 3
container_start_page 386
op_container_end_page 414
_version_ 1799479038291476480