'sokind(0..*:Kind+) -> SetOfKind'

def sokind(self, *kinds):

    cla = None
    clikinds = []
    if (not kinds):
        raise ValueError, 'At    least    one    argument    must    be    given.'
    for kind in kinds:
        ckc = kind.get_ckc()
        if (cla is None):
            cla = ckc[0]
        elif (ckc[0] is not cla):
            raise ValueError, ('Kind    at    index    %d    has    wrong    classifier.' % len(clikinds))
        if (ckc[(-1)] != '=='):
            raise ValueError, ('Kind    at    index    %d    has    wrong    comparision.' % len(clikinds))
        clikinds.append(ckc[1])
    return QuickSoKind(cla, self.ImpSet.immnodeset(clikinds))
