What Are Sets?

Sets are simply groups of related objects. A set might be a list of products, trucks, or employees. Each member in the set may have one or more characteristics associated with it. We call these characteristics attributes. Attribute values can be known in advance or unknowns that LINGO solves for. For example, each product in a set of products might have a price attribute; each truck in a set of trucks might have a hauling capacity attribute; and each employee in a set of employees might have a salary attribute, as well as a birth date attribute.

LINGO recognizes two kinds of sets: primitive and derived.

A primitive set is a set composed only of objects that can’t be further reduced. In the Wireless Widgets example, the set WAREHOUSES, which is composed of six warehouses, is a primitive set. Likewise, the set composed of eight vendors is a primitive set.

A derived set is defined using one or more other sets. In other words, a derived set derives its members from other preexisting sets. Again, using the Wireless Widgets example, the set composed of the links between the six warehouses and eight vendors (LINKS) is a derived set. It derives its members from the unique pairs of members of the WAREHOUSES and VENDORS sets. Although the set LINKS is derived solely from primitive sets, it is also possible to build derived sets from other derived sets as well. See Defining Derived Sets for more information.