scispace - formally typeset
Search or ask a question

Showing papers on "Tuple published in 1980"


Posted Content
TL;DR: This paper examines an extension of the functional dependency interpretation to handle null values, that is, entries in tuples that represent incomplete information in a relational database, and shows that there are several practical advantages in using nulls and a weaker notion of constraint satisfiability.
Abstract: Functional dependencies play an important role inrelational database design They are defined in the contextof a single relation which at all times must containtuples with non-null entries In this paper we examinean extension of the functional dependency interpretationto handle null values, that is, entries in tuples thatrepresent incomplete information in a relational databaseA complete axiomatization of inference rules forextended functional dependencies is also presentedOnly after having such results is it possible to talk aboutdecompositions and normalization theory in a context ofincomplete information Finally, we show that there areseveral practical advantages in using nulls and a weakernotion of constraint satisfiability

93 citations


Proceedings Article
01 Oct 1980
TL;DR: A statistic model which allows us to estimate the cardinality of queries and sub-queries expressed in Predicate Calculus language and is extended to general expressions including the operators NOT and OR.
Abstract: We present a statistic model which allows us to estimate the cardinality of queries and sub-queries expressed in Predicate Calculus language. In a first step, we deal with expressions formed only with an AND operator with n operands. We show how we can estimate recursively the cardinality of an expression with n operands in function of an expression of n-1 operands. The formulae giving the cardinalities are calculated under several hypotheses concerning the independence of criteria which determine sub-expressions, and those which define the relations. The parameters which must be known are : the cardinalities of the relations and of their projections on each argument; the probability for an element in the intersection of several projections of relations to be in a given projection of a relation (these parameters are called inter-relation quantified dependencies); the probability that several components of a tuple of a relation are equal; and the probability that the constants which appear in a query belong to the corresponding projections of the relations. In a second step, we extend the method to general expressions including the operators NOT and OR. Finally, we discuss the feasibility of the method.

51 citations


Proceedings Article
01 Oct 1980
TL;DR: In this paper, an extension of the functional dependency interpretation to handle null values, that is, entries in tuples that represent incomplete information in a relational database, is presented, and a complete axiomatization of inference rules for extended functional dependencies is also presented.
Abstract: Functional dependencies play an important role in relational database design. They are defined in the context of a single relation which at all times must contain tuples with non-null entries. In this paper we examine an extension of the functional dependency interpretation to handle null values, that is, entries in tuples that represent incomplete information in a relational database. A complete axiomatization of inference rules for extended functional dependencies is also presented. Only after having such results is it possible to talk about decompositions and normalization theory in a context of incomplete information. Finally, we show that there are several practical advantages in using nulls and a weaker notion of constraint satisfiability.

51 citations



Proceedings ArticleDOI
14 May 1980
TL;DR: It is shown that an automaton-like device is sufficient to perform projections and restrictions of relations and insertions, deletions and updates of tuples and to structure the n-ary relations into hierarchical free format files.
Abstract: Most data base machines use some type of "filter" to perform unary operations on files. This filter processes information "on the fly" during its transfer from mass storage (Disk) to main storage (main memory or buffer). This paper is devoted to the design study of such a filter for relational-type data bases. It is therefore assumed that data are structured as a set of n-ary relations.Using a top-down approach we classify the requirements under two catagories:1) Functional specification of the filter: the filter should perform the unary relational operations i.e. projection and restriction; it should also permit insertion deletion and updates of tuples.2) Performance requirements: in a filtering system access time is a linear function of the space used to the store relations, it becomes therefore of the utmost importance to minimize this space.In order to meet the second requirement, we suggest to structure the n-ary relations into hierarchical free format files. Clearly, such a data structure minimizes space: the remaining problems being the ability to read and update such files. It is then shown that an automaton-like device is sufficient to perform projections and restrictions of relations and insertions, deletions and updates of tuples. That device is described and an algorithm that automatically generates the microprogram realizing that device from the description of the relation and that of the operations to be performed is given.

23 citations


01 Jan 1980
TL;DR: This thesis describes Theseus, a programming language for manipulating relational databases, and a design for a system for implementing programs in Theseus on a computer, and includes a compiler/program transformer which carries out an extended dialog with a database retrieval planner.
Abstract: This thesis describes Theseus, a programming language for manipulating relational databases, and a design for a system('1) for implementing programs in Theseus on a computer. It extends an area of computer science--automatic programming--which has seen both active research and many practical advances for almost as long as there have been computers. The thesis applies automatic programming to a newer area--database systems--which is of great practical importance now and will become even more important in the future as knowledge based systems come into wide use. Theseus is a very high level language which has relations and a-sets, a generalization of records, as primitive types. It has a number of operators which can be applied to its objects, most important of which is an unordered for statement that gives tuple by tuple access to relations. Unlike many other relational languages, Theseus is powerful enough to express any reasonable function on relations. The design for a compilation system for Theseus includes a compiler/program transformer which carries out an extended dialog with a database retrieval planner. The compiler carries out a variety of program transformations while the retrieval planner finds efficient access paths to the given database to satisfy the requirements of each transformation. It also estimates the expected cost and size of each retrieval. The compiler uses this information to evaluate the overall cost of each transformation of the input program and outputs the least expensive of them. The compiler has no access to the physical structure of the database and the retrieval planner has no access to the source program, thus insuring modularity. ('1)The computer system described in this thesis has not been implemented. Frequently we refer to it as if it were fully operational. This is strictly for grammatical convenience and is not intended to imply that any implementation work has been done.

3 citations


Proceedings ArticleDOI
23 Jun 1980
TL;DR: The discussion below is based on research on the RIGEL database programming language, a block-structured language with constructs for accessing relational databases, a module construct for data abstraction, and an exception-handling mechanism.
Abstract: This paper discusses two issues in the design of database constructs for programming languages. The first issue is whether records in a database correspond to records in a programming language or to a distinct type such as tuple. The second issue is what facilities are provided to define the interface between an application program and a database.The discussion below is based on our research on the RIGEL database programming language [Rowe 79, 80a]. RIGEL is a block-structured language with constructs for accessing relational databases, a module construct for data abstraction, and an exception-handling mechanism. The first implementation of the language has recently been completed and is being distributed.

3 citations


Journal ArticleDOI
TL;DR: A set of primitive operations on tuples is derived and it is shown that these operations are necessary and sufficient for the implementation of any language equivalent in power to the relational algebra.
Abstract: A set of primitive operations on tuples is derived; it is shown that these operations are necessary and sufficient for the implementation tion of any language equivalent in power to the relational algebra. The translation of queries from a variety of relational languages into these tuple operations is discussed and illustrated with several examples. A method is given for the conversion of such a translated query into a network of processes and files. An optimization algorithm which operates on this network is described and demonstrated. Using this method, many different relational languages can be implemented using the same data management software; furthermore, the underlying software can be changed without requiring any changes at the user interface. This approach should yield great benefits in reduced cost and increased flexibility of implementation.

2 citations