# SetLink

A type of Link used to group its arguments into a set.

For example:

SetLink ConceptNode "x" ConceptNode "y" ConceptNode "z"

simply indicates that there is a set {x,y,z}.

## Contents

## Naming Sets

Sets can be given a name, using the SimilarityLink or the DefineLink:

SimilarityLink ConceptNode "last three letters of the alphabet" SetLink ConceptNode "x" ConceptNode "y" ConceptNode "z"

The SimilarityLink is used to make declarative statements; the DefineLink is used to make imperative statements; see Link comparison for a discussion of the differences.

## Subsets

The SubsetLink can be used to indicate subsets:

SubsetLink SetLink ConceptNode "x" ConceptNode "y" SetLink ConceptNode "x" ConceptNode "y" ConceptNode "z"

which states that {x,y} is a subset of {x,y,z}. If the set is named, then one can write:

SubsetLink SetLink ConceptNode "x" ConceptNode "y" ConceptNode "last three letters of the alphabet"

## Set membership

Sets can also be constructed by specifying individual members:

MemberLink ConceptNode "x" ConceptNode "last three letters of the alphabet" MemberLink ConceptNode "y" ConceptNode "last three letters of the alphabet" MemberLink ConceptNode "z" ConceptNode "last three letters of the alphabet"

Note, however, it is not exactly equivalent: each MemberLink could have a distinct truth value indicating the degree to which the letters x,y,z, are members. Neither the SetLink nor the SimilarityLink allow this to be expressed. A clearer example is provided by the following:

MemberLink <1.0> ConceptNode "z" ConceptNode "last letters of the alphabet" MemberLink <0.9> ConceptNode "w" ConceptNode "last letters of the alphabet" MemberLink <0.8> ConceptNode "s" ConceptNode "last letters of the alphabet" MemberLink <0.2> ConceptNode "m" ConceptNode "last letters of the alphabet"

which suggests that perhaps its a poor idea to group the letter "m" among the set of the last letters of the alphabet. There is no particularly good way to express this fuzzy-membership notion with a simple SetLink, although one could have that

SetLink <0.4> ConceptNode "z" ConceptNode "w" ConceptNode "s" ConceptNode "m"

is a way of weakly grouping together m,s,w and z into a somewhat ephemeral group, with strength 0.4. However, this cannot indicate that perhaps some of the elements are stronger members than others.