请输入您要查询的百科知识:

 

词条 Imieliński-Lipski algebra
释义
     Codd-tables Algebra  V-Tables Algebra   Conditional Tables (C-Tables) Algebra  

  1. History

  2. References

  3. Further reading

An Imieliński-Lipski algebras is an extension of relational algebra onto tables with different types of null values. It is used to operate on relations with incomplete information.

Imieliński-Lipski algebras are defined to satisfy precise conditions for semantically meaningful extension of the usual relational operators, such as projection, selection, union, and join, from operators on relations to operators on relations with various kinds of "null values".

These conditions require that the system be safe in the sense that no incorrect conclusion is derivable by using a specified subset F of the relational operators; and that it be complete in the sense that all valid conclusions expressible by relational expressions using operators in F are in fact derivable in this system.

For example, it is well known that the 3-valued logic approach to deal with null values, supported treatment of nulls values by SQL is not complete, see Ullman book.[1]

To show this, let T be:

T=
Rohit Databases B Spring
Igor Networks A {{NULL}}

Take SQL query Q

                Select NAME                         From T                             Where (CLASS = 'Networks' AND SEMESTER = 'Spring') OR (GRADE = 'A' AND SEMESTER <> 'Spring')

SQL query Q will return empty set (no results) under 3-valued semantics currently adopted by all variants of SQL. This is the case because in SQL, NULL is never equal to any constant – in this case, neither to “Spring” nor “Fall” nor “Winter” (if there is Winter semester in this school). NULL='Spring' will evaluate to MAYBE and so will NULL='Fall'. The disjunction MAYBE OR MAYBE evaluates to MAYBE (not TRUE). Thus Igor will not be part of the answer (and of course neither will Rohit). But Igor should be returned as the answer.

Indeed, regardless what semester Igor took the Networks class (no matter what was the unknown value of NULL), the selection condition will be true. This “Igor” will be missed by SQL and the SQL answer won’t be complete according to completeness requirements specified in Tomasz Imieliński, Witold Lipski, 'Incomplete Information in Relational Databases'.[2] It is also argued there that 3-valued logic (TRUE, FALSE, MAYBE) can never provide guarantee of complete answer for tables with incomplete information.

Three algebras which satisfy conditions of safety and completeness are defined as Imielinski-Lipski algebras: the Codd-Tables algebra, the V-tables algebra and the Conditional tables (C-tables) algebra.

Codd-tables Algebra

Codd-tables Algebra is based on the usual Codd's singe NULL values. The table T above is an example of Codd-table. Codd-table algebra supports projection and positive selections only. It is also demonstrated in [IL84 that it is not possible to correctly extend more relational operators over Codd-Tables. For example, such basic operation as join is not extendable over Codd-tables. It is not possible to define selections with Boolean conditions involving negation and preserve completeness. For example, queries like the above query Q cannot be supported.

In order to be able to extend more relational operators, more expressive form of null value representation is needed in tables which are called V-table.

V-Tables Algebra

V-tables algebra is based on many different ("marked") null values or variables allowed to appear in a table. V-tables allow to show that a value may be unknown but the same for different tuples. For example, in the table below Gaurav and Igor order the same (but unknown) beer in two unknown bars (which may, or may not be different – but remain unknown). Gaurav and Jane frequent the same unknown bad (Y1). Thus, instead one NULL value, we use indexed variables, or Skolem constants

.[2]

Zhihan Heineken Cabana
Gaurav X1 Y1
Igor X1 Y2
Jane Bud Y1
John X2 Y3

V-Tables algebra is shown to correctly support projection, positive selection (with no negation occurring in the selection condition), union, and renaming of attributes, which allows for processing arbitrary conjunctive queries.

A very desirable property enjoyed by the V-table algebra is that all relational operators on tables are performed in exactly the same way as in the case of the usual relations.

Conditional Tables (C-Tables) Algebra

Example of conditional table (c-table) is shown below.

Rohit Databases B Spring true}}
Igor Networks A x x = 'Spring'
Igor Networks A x x <> 'Spring'

It has additional column “con” which is a Boolean condition involving variables, null values – same as in V-tables.

                Select *                     From T                          Where (CLASS = 'Networks' AND SEMESTER = 'Spring') OR (GRADE = 'A' AND SEMESTER <> 'Spring')

over the following table c-table

T1=
Rohit Databases B Spring true
Igor Networks A x true

Conditional Tables algebra, mainly of theoretical interest, supports projection, selection, union, join, and renaming. Under closed world assumption, it can also handle the operator of difference, thus it can support all relational operators.

History

Imieliński-Lipski algebras were introduced by Tomasz Imieliński and Witold Lipski Jr. in 'Incomplete Information in Relational Databases' [3]

References

1. ^{{cite book|author1=J.D. Ullman|authorlink=Jeffrey Ullman|title=Principles of Database Systems |year=1982|publisher= Computer Science Press, Potomac, MD.|edition=2nd}}
2. ^{{cite |title= Skolem constants |url=http://www.sds.lcs.mit.edu/spd/larch/LP/glossary/skolem.html }}
3. ^{{cite journal|first1 =T. | last1=Imieliński | authorlink= Tomasz Imieliński | first2 = W. | last2 = Lipski Jr. | title=Incomplete information in relational databases | journal=Journal of the ACM|volume=31|issue=4|date= 1984|pages=761–791|url=https://scholar.google.com/citations?view_op=view_citation&hl=en&user=fEYp6hEAAAAJ&citation_for_view=fEYp6hEAAAAJ:UxriW0iASnsC }}

Further reading

  • {{cite journal | first1=S. | last1=Abiteboul | first2=P.|last2=Kanellakis | first3=G.| last3=Grahne |title= On the representation and querying of sets of possible worlds|journal=Theoretical Computer Science |volume=78 | issue=1 |date= 1991|pages=159–187|url=http://users.encs.concordia.ca/~grahne/papers/sigmod87.pdf }}
  • {{cite journal | first1=S. | last1=Abiteboul | first2=O.M.|last2=Duschka |title= Complexity of Answering Queries Using Materialized Views|journal= Proc. ACM SIGMOD-SIGACT-SIGART, PODS |date= 1998|pages=254–263|url=http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.92.2956&rep=rep1&type=pdf }}
  • {{cite journal | first1=T.J. | last1=Green | first2=G.|last2=Karvounarakis | first3=Val | last3=Tannen |title= Provenance Semiring|journal= Proc. ACM SIGMOD-SIGACT-SIGART, PODS |date= 2007|pages=31–40|url=http://repository.upenn.edu/cgi/viewcontent.cgi?article=1022&context=db_research }}
  • {{cite journal|first1=G.|last1=Karvounarakis|first2=T.J. | last2=Green |title=Semiring-Annotated Data: Queries and Provenance|journal=ACM SIGMOD|volume=41|issue=3|date= 2012|pages=5–14|url=https://users.dcc.uchile.cl/~pbarcelo/KG.pdf }}
  • {{cite book|author1=T.J. Green | title= Models for Incomplete and Probabilistic Information; Chapter 2, in Managing and Mining Uncertain Data|year=2009|publisher=Springer Link}}
  • {{cite journal|first1=G.|last1=Grahne|first2=V. | last2=Kiricenko |title=Towards an algebraic theory of information integration|journal=Information and Computation|volume=194|issue=2|date= Nov 2004|pages=79–100|url=http://users.encs.concordia.ca/~grahne/papers/take5.pdf}}
{{Databases}}

4 : Relational model|Database theory|Databases|Types of databases

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/11/16 15:16:58