Embedded Dependency
   HOME
*





Embedded Dependency
In relational database theory, an embedded dependency (ED) is a certain kind of constraint on a relational database. It is the most general type of constraint used in practice, including both tuple-generating dependencies and equality-generating dependencies. Embedded dependencies can express functional dependencies, join dependencies, multivalued dependencies, inclusion dependencies, foreign key dependencies, and many more besides. An algorithm known as the chase takes as input an instance that may or may not satisfy a set of EDs, and, if it terminates (which is a priori undecidable), output an instance that does satisfy the EDs. Definition An embedded dependency (ED) is a sentence in first-order logic of the form: :\forall x_1,\ldots,x_n . \phi(x_1,\ldots,x_n) \rightarrow \exists z_1, \ldots, z_k . \psi(y_1,\ldots,y_m) Where \ = \ \setminus \ and \phi and \psi are conjunctions of relational and equality atoms. A relational atom has the form R(w_1,\ldots,w_h) and an equalit ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Database Theory
Database theory encapsulates a broad range of topics related to the study and research of the theoretical realm of databases and database management systems. Theoretical aspects of data management include, among other areas, the foundations of query languages, computational complexity and expressive power of queries, finite model theory, database design theory, dependency theory, foundations of concurrency control and database recovery, deductive databases, temporal and spatial databases, real-time databases, managing uncertain data and probabilistic databases, and Web data. Most research work has traditionally been based on the relational model, since this model is usually considered the simplest and most foundational model of interest. Corresponding results for other data models, such as object-oriented or semi-structured models, or, more recently, graph data models and XML, are often derivable from those for the relational model. A central focus of database theory is ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Relational Database
A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relational database systems are equipped with the option of using the SQL (Structured Query Language) for querying and maintaining the database. History The term "relational database" was first defined by E. F. Codd at IBM in 1970. Codd introduced the term in his research paper "A Relational Model of Data for Large Shared Data Banks". In this paper and later papers, he defined what he meant by "relational". One well-known definition of what constitutes a relational database system is composed of Codd's 12 rules. However, no commercial implementations of the relational model conform to all of Codd's rules, so the term has gradually come to describe a broader class of database systems, which at a minimum: # Present the data to the user as relati ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Tuple-generating Dependency
In relational database theory, a tuple-generating dependency (TGD) is a certain kind of constraint on a relational database. It is a subclass of the class of embedded dependencies (EDs). An algorithm known as the chase takes as input an instance that may or may not satisfy a set of TGDs (or more generally EDs) and, if it terminates (which is a priori undecidable), outputs an instance that does satisfy the TGDs. Definition A tuple-generating dependency is a sentence in first-order logic of the form: :\forall x_1,\ldots, x_n . \phi(x_1, \ldots, x_n) \rightarrow \exists y_1, \ldots, y_m, \psi(x_1, \ldots, x_n, y_1, \ldots, y_m) where \phi is a possibly empty and \psi is a non-empty conjunction of relational atoms. A relational atom has the form R(w_1, \ldots, w_h), where each of the terms w, \ldots, w_h are variables or constants. Fragments Several fragments of TGDs have been defined. For instance, ''full TGDs'' are TGDs which do not use the existential quantifier. Full TG ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Equality-generating Dependency
In relational database theory, an equality-generating dependency (EGD) is a certain kind of constraint on data. It is a subclass of the class of embedded dependencies (ED). An algorithm known as the chase takes as input an instance that may or may not satisfy a set of EGDs (or, more generally, a set of EDs), and, if it terminates (which is a priori undecidable), output an instance that does satisfy the EGDs. An important subclass of equality-generating dependencies are functional dependencies. Definition An equality-generating dependency is a sentence in first-order logic of the form: :\forall x_1,\ldots,x_n . \phi(x_1,\ldots,x_n) \rightarrow \psi(y_1,\ldots,y_m) where \ \subseteq \, \phi is a conjunction of relational and equality atoms and \psi is a non-empty conjunction of equality atoms. A relational atom has the form R(w_1,\ldots,w_h) and an equality atom has the form w_i = w_j, where each of the terms w, ..., w_h, w_i, w_j are variables or constants. An equivalent de ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Chase (algorithm)
The chase is a simple fixed-point algorithm testing and enforcing implication of data dependencies in database systems. It plays important roles in database theory as well as in practice. It is used, directly or indirectly, on an everyday basis by people who design databases, and it is used in commercial systems to reason about the consistency and correctness of a data design. New applications of the chase in meta-data management and data exchange are still being discovered. The chase has its origins in two seminal papers of 1979, one by Alfred V. Aho, Catriel Beeri, and Jeffrey D. Ullman and the other by David Maier, Alberto O. Mendelzon, and Yehoshua Sagiv. In its simplest application the chase is used for testing whether the projection of a relation schema constrained by some functional dependencies onto a given decomposition can be recovered by rejoining the projections. Let ''t'' be a tuple in \pi_(R) \bowtie \pi_(R) \bowtie ... \bowtie \pi_(R) where ''R'' is a relation a ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Sentence (logic)
:''This article is a technical mathematical article in the area of predicate logic. For the ordinary English language meaning see Sentence (linguistics), for a less technical introductory article see Statement (logic).'' In mathematical logic, a sentence (or closed formula)Edgar Morscher, "Logical Truth and Logical Form", ''Grazer Philosophische Studien'' 82(1), pp. 77–90. of a predicate logic is a Boolean-valued well-formed formula with no free variables. A sentence can be viewed as expressing a proposition, something that ''must'' be true or false. The restriction of having no free variables is needed to make sure that sentences can have concrete, fixed truth values: As the free variables of a (general) formula can range over several values, the truth value of such a formula may vary. Sentences without any logical connectives or quantifiers in them are known as atomic sentences; by analogy to atomic formula. Sentences are then built up out of atomic formulas by applying con ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

First-order Logic
First-order logic—also known as predicate logic, quantificational logic, and first-order predicate calculus—is a collection of formal systems used in mathematics, philosophy, linguistics, and computer science. First-order logic uses quantified variables over non-logical objects, and allows the use of sentences that contain variables, so that rather than propositions such as "Socrates is a man", one can have expressions in the form "there exists x such that x is Socrates and x is a man", where "there exists''"'' is a quantifier, while ''x'' is a variable. This distinguishes it from propositional logic, which does not use quantifiers or relations; in this sense, propositional logic is the foundation of first-order logic. A theory about a topic is usually a first-order logic together with a specified domain of discourse (over which the quantified variables range), finitely many functions from that domain to itself, finitely many predicates defined on that domain, and a set of ax ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Logical Conjunction
In logic, mathematics and linguistics, And (\wedge) is the truth-functional operator of logical conjunction; the ''and'' of a set of operands is true if and only if ''all'' of its operands are true. The logical connective that represents this operator is typically written as \wedge or . A \land B is true if and only if A is true and B is true, otherwise it is false. An operand of a conjunction is a conjunct. Beyond logic, the term "conjunction" also refers to similar concepts in other fields: * In natural language, the denotation of expressions such as English "and". * In programming languages, the short-circuit and control structure. * In set theory, intersection. * In lattice theory, logical conjunction ( greatest lower bound). * In predicate logic, universal quantification. Notation And is usually denoted by an infix operator: in mathematics and logic, it is denoted by \wedge, or ; in electronics, ; and in programming languages, &, &&, or and. In Jan ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Term (logic)
In mathematical logic, a term denotes a mathematical object while a formula denotes a mathematical fact. In particular, terms appear as components of a formula. This is analogous to natural language, where a noun phrase refers to an object and a whole sentence refers to a fact. A first-order term is recursively constructed from constant symbols, variables and function symbols. An expression formed by applying a predicate symbol to an appropriate number of terms is called an atomic formula, which evaluates to true or false in bivalent logics, given an interpretation. For example, is a term built from the constant 1, the variable , and the binary function symbols and ; it is part of the atomic formula which evaluates to true for each real-numbered value of . Besides in logic, terms play important roles in universal algebra, and rewriting systems. Formal definition Given a set ''V'' of variable symbols, a set ''C'' of constant symbols and sets ''F''''n'' of ''n''-ary fu ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Variable (mathematics)
In mathematics, a variable (from Latin '' variabilis'', "changeable") is a symbol that represents a mathematical object. A variable may represent a number, a vector, a matrix, a function, the argument of a function, a set, or an element of a set. Algebraic computations with variables as if they were explicit numbers solve a range of problems in a single computation. For example, the quadratic formula solves any quadratic equation by substituting the numeric values of the coefficients of that equation for the variables that represent them in the quadratic formula. In mathematical logic, a ''variable'' is either a symbol representing an unspecified term of the theory (a meta-variable), or a basic object of the theory that is manipulated without referring to its possible intuitive interpretation. History In ancient works such as Euclid's ''Elements'', single letters refer to geometric points and shapes. In the 7th century, Brahmagupta used different colours to represent the u ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Existential Quantification
In predicate logic, an existential quantification is a type of quantifier, a logical constant which is interpreted as "there exists", "there is at least one", or "for some". It is usually denoted by the logical operator symbol ∃, which, when used together with a predicate variable, is called an existential quantifier ("" or "" or "). Existential quantification is distinct from universal quantification ("for all"), which asserts that the property or relation holds for ''all'' members of the domain. Some sources use the term existentialization to refer to existential quantification. Basics Consider a formula that states that some natural number multiplied by itself is 25. : 0·0 = 25, or 1·1 = 25, or 2·2 = 25, or 3·3 = 25, ... This would seem to be a logical disjunction because of the repeated use of "or". However, the ellipses make this impossible to integrate and to interpret it as a disjunction in formal logic. Instead, the statement could be rephrased more formally as ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Tuple-generating Dependency
In relational database theory, a tuple-generating dependency (TGD) is a certain kind of constraint on a relational database. It is a subclass of the class of embedded dependencies (EDs). An algorithm known as the chase takes as input an instance that may or may not satisfy a set of TGDs (or more generally EDs) and, if it terminates (which is a priori undecidable), outputs an instance that does satisfy the TGDs. Definition A tuple-generating dependency is a sentence in first-order logic of the form: :\forall x_1,\ldots, x_n . \phi(x_1, \ldots, x_n) \rightarrow \exists y_1, \ldots, y_m, \psi(x_1, \ldots, x_n, y_1, \ldots, y_m) where \phi is a possibly empty and \psi is a non-empty conjunction of relational atoms. A relational atom has the form R(w_1, \ldots, w_h), where each of the terms w, \ldots, w_h are variables or constants. Fragments Several fragments of TGDs have been defined. For instance, ''full TGDs'' are TGDs which do not use the existential quantifier. Full TG ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]