The discriminated union of two sets A and B is A + B = U 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. |