1. A computer-implemented method for determining connectivity components defined by an input set of relations over an input set of data elements, wherein a connectivity component is a subset of the input set data elements that are pair-wise connected such that no other data element of the input set can be added to the subset that is connected to any of the data elements of the subset, and wherein two data elements are connected whenever the two data elements are related by a relation in the set of relations or a path of relations between data elements exists that connects the two data elements, the method comprising: performing the following actions of selecting and forming iteratively beginning with a set of data elements that is the input set of data elements and a set of relations that is the input set of relations, and at each subsequent iteration using the contracted set of data elements as the set of data elements and the contracted set of relations as the set of relations, until the contracted set of relations is empty: selecting a respective representative for each data element, each representative being a data element in the set of data elements, to form a contracted set of data elements, the selecting comprising: assigning a random number to each data element in the set of data elements; identifying for each data element a respective group of data elements that includes the data element and all other data elements that are related to the data element; selecting as the respective representative a particular data element in the respective group that has an assigned random number with a predetermined random number position among the data elements in the respective group; and replacing each data element with the representative of the data element to form a contracted set of data elements; forming a contracted set of relations over the contracted set of data elements, the forming comprising: defining two representatives in the contracted set of data elements as related in the contracted set of relations if the two representatives represent data elements that were connected in the set of relations; and defining all other pairs of data elements in the contracted set of data elements as not related in the contracted set of relations; whereby, when the contracted set of relations is empty, each data element in the contracted set of data elements is an isolated data element, an isolated data element being a data element that is not related to any other data element in the contracted set of data elements; and outputting each isolated data element as a respective representative of a respective connectivity component of the input set of data elements, each connectivity component of the input set of data elements being representing by a distinct isolated data element.