(redirected from Tuples)
Also found in: Dictionary.


(computer science)
A horizontal row of data items in a relational data structure; corresponds to a record or segment in other types of data structures.




In functional languages, a data object containing two or more components. Also known as a product type or pair, triple, quad, etc. Tuples of different sizes have different types, in contrast to lists where the type is independent of the length. The components of a tuple may be of different types whereas all elements of a list have the same type. Examples of tuples in Haskell notation are (1,2), ("Tuple",True), (w,(x,y),z). The degenerate tuple with zero components, written (), is known as the unit type since it has only one possible value which is also written ().

The implementation of tuples in a language may be either "lifted" or not. If tuples are lifted then (bottom,bottom) /= bottom and the evaluation of a tuple may fail to terminate. E.g. in Haskell:

f (x,y) = 1 --> f bottom = bottom f (bottom,bottom) = 1

With lifted tuples, a tuple pattern is refutable. Thus in Haskell, pattern matching on tuples is the same as pattern matching on types with multiple constructors (algebraic data types) - the expression being matched is evaluated as far as the top level constructor, even though, in the case of tuples, there is only one possible constructor for a given type.

If tuples are unlifted then (bottom, bottom) = bottom and evaluation of a tuple will never fail to terminate though any of the components may. E.g. in Miranda:

f (x,y) = 1 --> f bottom = 1 f (bottom,bottom) = 1

Thus in Miranda, any object whose type is compatible with a tuple pattern is assumed to match at the top level without evaluation - it is an irrefutable pattern. This also applies to user defined data types with only one constructor. In Haskell, patterns can be made irrefutable by adding a "~" as in

f ~(x,y) = 1.

If tuple constructor functions were strict in all their arguments then (bottom,x) = (x,bottom) = bottom for any x so matching a refutable pattern would fail to terminate if any component was bottom.


(1) In a relational database, a tuple is one record (one row). See record and relational database.

(2) A set of values passed from one programming language to another application program or to a system program such as the operating system. Typically separated by commas, the values may be parameters for a function call or a set of data values for a database. See function.
References in periodicals archive ?
For every element in the set an N-tuple is created, and the corresponding root weight is initially assigned as the first element of tuple.
Mapper Function Algorithm 1 Mapper Function () Input: <key, value> key: the record id of traffic flows value: the value of the tuples Output: <ke[y.
Modification will be done to the tuples of sensitive rules in such a way that the alterations are spread to the tuples of the significant non-sensitive rules.
Problem statement: Find a differentiable bijective mapping function m that takes as input the tuples of the input image and outputs a new set of tuples whose statistics match the statistics of the target tuples.
Let F be the set of (d - 2)-flats that have at least one Type 3 tuple assigned to them.
A database is a set of basic axioms corresponding to base relations and tuples plus deductive axioms or inference rules.
And the privacy to the published data is expected to increase as the reordering of tuples occurs.
4, the tuple [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] fulfils the Disk-Cyclicity Criterion for tuples, hence [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] is disk-cyclic on H.
2) Each time a rule is learned, the tuples covered by the rules are removed
The tuples of the first molecule m used in the initialization of the phase of super molecule selection are ascendingly ordered by the upward rank value [27] of their [v.
Cleaning rules can specify the classification conditions, then according to these conditions, the strategy model could classify each influent RFID data tuples and find its cleaning method, thus to achieve the cleaning strategy with the minimum costs.
In essence, the invention creates an express lane for normal tuples ensuring that they are analyzed promptly, while tuples with values known to be problematic or that are very time consuming to analyze are sent down other analysis paths.