Weil group: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
en>Rjwilmsi
m References: Journal cites, added 1 DOI using AWB (9888)
en>TakuyaMurata
 
Line 1: Line 1:
{{refimprove|date=October 2012}}
Emilia Shryock is my title but you can call me something you like. For years he's been working as a receptionist. Years in the past we moved to North Dakota and I adore each working day living here. What I adore performing is performing ceramics but I haven't produced a dime with it.<br><br>My page: home std test - [http://www.1a-pornotube.com/blog/84958 Click At this website] -
 
In [[database theory]], '''multivalued [[dependency theory (database theory)|dependency]]''' ''is a full constraint'' between two sets of attributes in a [[Relation (database)|relation]].
 
In contrast to the [[functional dependency]], the '''multivalued dependency''' requires that certain [[tuple]]s be present in a relation. Therefore, a multivalued dependency is a special case of ''tuple-generating dependency''.  The multivalued dependency plays a role in the [[4NF|4NF database normalization]].
 
A multivalued dependency is a special case of a [[join dependency]], with only two sets of values involved, i.e. it is a 2-ary join dependency.
 
== Formal definition ==
The formal definition is given as follows.
<ref>{{Cite book
  | last = Silberschatz
  | first = Abraham
  | coauthors = Korth, Sudarshan
  | authorlink = Abraham Silberschatz
  | title = Database System Concepts
  | publisher = [[McGraw-Hill]]
  | edition = 5th
  | year = 2006
  | page = 295
  | isbn = 0-07-124476-X}}</ref>
<blockquote>
Let <math>R</math> be a relation schema and let <math>\alpha \subseteq R</math> and <math>\beta \subseteq R</math> (subsets). The multivalued dependency<br/>
<math>\alpha \twoheadrightarrow \beta</math><br/>
(which can be read as <math> \alpha </math> multidetermines <math> \beta </math>) holds on <math>R</math> if, in any legal relation <math>r(R)</math>, for all pairs of tuples <math>t _1</math> and <math>t _2</math> in <math>r</math> such that <math>t _1[\alpha]=t _2[\alpha]</math>, there exist tuples <math>t _3</math> and <math>t _4</math> in <math>r</math> such that <br/>
<math>t _1[\alpha] = t _2 [\alpha] = t _3 [\alpha] = t _4 [\alpha]</math><br>
<math>t _3[\beta] = t _1 [\beta]</math><br>
<math>t _3[R - \beta] = t _2 [R - \beta]</math><br>
<math>t _4[\beta] = t _2 [\beta]</math><br>
<math>t _4[R - \beta] = t _1 [R - \beta]</math><br>
</blockquote>
In more simple words the above condition can be expressed as follows: if we denote by <math>(x,y,z)</math> the tuple having values for <math>\alpha,</math> <math>\beta,</math> <math>R - \alpha - \beta</math> collectively equal to <math>x,</math> <math>y,</math> <math>z,</math> correspondingly, then whenever the tuples <math>(a,b,c)</math> and <math>(a,d,e)</math> exist in <math>r</math>, the tuples <math>(a,b,e)</math> and <math>(a,d,c)</math> should also exist in <math>r</math>.
 
== Example ==
 
Consider this example of a database of teaching courses, the books recommended for the course, and the lecturers who will be teaching the course:
 
{|+''Teaching database''
|-
!Course !! Book !! Lecturer
|-
| AHA || Silberschatz || John D
|-
| AHA || Nederpelt || William M
|-
| AHA || Silberschatz || William M
|-
| AHA || Nederpelt || John D
|-
| AHA || Silberschatz || Christian G
|-
| AHA || Nederpelt || Christian G
|-
| OSO || Silberschatz || John D
|-
| OSO || Silberschatz || William M
|}
 
Because the lecturers attached to the course and the books attached to the course are independent of each other, this database design has a multivalued dependency; if we were to add a new book to the AHA course, we would have to add one record for each of the lecturers on that course, and vice versa.
<br>Put formally, there are two multivalued dependencies in this relation: {course}&nbsp;<math>\twoheadrightarrow</math>&nbsp;{book} and equivalently {course}&nbsp;<math>\twoheadrightarrow</math>&nbsp;{lecturer}.
<br>Databases with multivalued dependencies thus exhibit redundancy. In [[database normalization]], [[fourth normal form]] requires that either every multivalued dependency ''X''&nbsp;<math>\twoheadrightarrow</math>&nbsp;''Y'' is trivial or for every nontrivial multivalued dependency ''X''&nbsp;<math>\twoheadrightarrow</math>&nbsp;''Y'', ''X'' is a [[superkey]].
<!--
Example showing how to model the above in a Fourth Normal Form compliant way goes here-->
 
== Interesting properties ==
* If <math>\alpha \twoheadrightarrow \beta</math>, Then <math>\alpha \twoheadrightarrow R - \beta</math>
* If <math>\alpha \twoheadrightarrow \beta</math> and <math>\gamma \subseteq \delta</math>, Then <math>\alpha \delta \twoheadrightarrow \beta \gamma</math>
* If <math>\alpha \twoheadrightarrow \beta</math> and <math>\beta \twoheadrightarrow \gamma</math>, then <math>\alpha \twoheadrightarrow \gamma - \beta</math>
The following also involve [[functional dependency|functional dependencies]]:
* If <math>\alpha \rightarrow \beta</math>, then <math>\alpha \twoheadrightarrow \beta</math>
* If <math>\alpha \twoheadrightarrow \beta</math> and <math>\beta \rightarrow \gamma</math>, then <math>\alpha \twoheadrightarrow \gamma - \beta</math>
 
The above rules are sound and complete.
 
* A decomposition of ''R'' into (''X'',&nbsp;''Y'') and (''X'',&nbsp;''R''&nbsp;&minus;&nbsp;''Y'') is a [[lossless-join decomposition]] if and only if ''X''&nbsp;<math>\twoheadrightarrow</math>&nbsp;''Y'' holds in&nbsp;''R''.
 
== Definitions ==
; full constraint: A constraint which expresses something about ''all'' attributes in a database. (In contrast to an '''embedded constraint'''.) That a multivalued dependency is a ''full constraint'' follows from its definition,as where it says something about the attributes <math>R - \beta</math>.
; tuple-generating dependency: A dependency which explicitly requires certain tuples to be present in the relation.
; trivial multivalued dependency 1: A multivalued dependency which involves all the attributes of a relation i.e.<math>R = \alpha \cup \beta</math>. A trivial multivalued dependency implies, for tuples <math>t _1</math> and <math>t _2</math>, tuples <math>t _3</math> and <math>t _4</math> which are equal to <math>t _1</math> and <math>t _2</math>.
; trivial multivalued dependency 2: A multivalued dependency for which <math>\beta \subseteq \alpha</math>.
 
== References ==
<references/>
 
== External links ==
*[http://www.almaden.ibm.com/cs/people/fagin/tods77.pdf Multivalued dependencies and a new Normal form for Relational Databases] (PDF) - Ronald Fagin, IBM Research Lab
 
[[Category:Data modeling]]
[[Category:Database constraints]]

Latest revision as of 04:06, 9 November 2014

Emilia Shryock is my title but you can call me something you like. For years he's been working as a receptionist. Years in the past we moved to North Dakota and I adore each working day living here. What I adore performing is performing ceramics but I haven't produced a dime with it.

My page: home std test - Click At this website -