discriminated union
The discriminated union of two sets A and B is
A + B = {(inA, a) | a in A} U {(inB, b)| b in B}
where inA and inB are arbitrary tags which specify which
summand an element originates from.
A {type} (especially an {algebraic data type}) might be
described as a discriminated union if it is a {sum type} whose
objects consist of a tag to say which part of the union they
belong to and a value of the corresponding type.
(1995-04-25)