首页 | 官方网站   微博 | 高级检索  
     


Specification and verification of database dynamics
Authors:José Fiadeiro  Amílcar Sernadas
Affiliation:(1) Departamento de Matemática, Instituto Superior Técnico, Av. Rovisco Pais, P-1096 Lisboa Codex, Portugal
Abstract:Summary A framework is proposed for the structured specification and verification of database dynamics. In this framework, the conceptual model of a database is a many sorted first order linear tense theory whose proper axioms specify the update and the triggering behaviour of the database. The use of conceptual modelling approaches for structuring such a theory is analysed. Semantic primitives based on the notions of event and process are adopted for modelling the dynamic aspects. Events are used to model both atomic database operations and communication actions (input/output). Nonatomic operations to be performed on the database (transactions) are modelled by processes in terms of trigger/reaction patterns of behaviour. The correctness of the specification is verified by proving that the desired requirements on the evolution of the database are theorems of the conceptual model. Besides the traditional data integrity constraints, requirements of the form ldquoUnder condition W, it is guaranteed that the database operation Z will be successfully performedrdquo are also considered. Such liveness requirements have been ignored in the database literature, although they are essential to a complete definition of the database dynamics.

Notation

Classical Logic Symbols (Appendix 1) forall for all (universal quantifier) - exist exists at least once (existential quantifier) - ¬ no (negation) - rArr implies (implication) - hArr is equivalent to (equivalence) - and and (conjunction) - or or (disjunction) Tense Logic Symbols (Appendix 1) G always in the future - G 0 always in the future and now - F sometime in the future - F 0 sometime in the future or now - H always in the past - H 0 always in the past and now - P sometime in the past - P 0 sometime in the past or now - X in the next moment - Y in the previous moment - L always - M sometime Event Specification Symbols (Sects. 3 and 4.1) darr (darrx) means ldquoimmediately after the occurrence of xrdquo - uarr (uarrx) means ldquoimmediately before the occurrence of xrdquo - epsiv epsiv(x) means ldquox is enabledrdquo, i.e., ldquox may occur nextrdquo - { } ({w 1} x{w 2}) states that if w 1 holds before the occurrence of x, then w 2 will hold after the occurrence of x (change rule) - ] (oa1, ..., oan]x) states that only the object attributes oa1, ..., oa n are modifiable by x (scope rule) - {{ }} ({{w}}x) states that if x may occur next, then w holds (enabling rule) Process Specification Symbols (Sects. 5.3 and 5.4) :: for causal rules - lang rang for behavioural rules Transition-Pattern Composition Symbols (Sects. 5.2 and 5.3) ; sequential composition - ¦ choice composition - par parallel composition - :| guarded alternative composition Location Predicates (Sect. 5.2) darr (darrz) means ldquoimmediately after the occurrence of the last event of zrdquo (after) - uarr (uarrz) means ldquoimmediately before the occurrence of the first event of zrdquo (before) - harr (harrz) means ldquoafter the beginning of z and before the end of zrdquo (during) - 
$${\hbox{\ \hbox{$\mid$}\kern -1em\lower .5em \hbox{$\leftarrow$}}} $$
( 
$${\hbox{\ \hbox{$\mid$}\kern -1em\lower .5em \hbox{$\leftarrow$}}} $$
z) means ldquobefore the occurrence of an event of zrdquo (at)
Keywords:
本文献已被 SpringerLink 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司    京ICP备09084417号-23

京公网安备 11010802026262号