'Set-theoretic domain of the value-space of a Valuation.'

@property
def domain(self):

    dom = []
    for val in self.values():
        if isinstance(val, string_types):
            dom.append(val)
        elif (not isinstance(val, bool)):
            dom.extend([elem for tuple_ in val for elem in tuple_ if (elem is not None)])
    return set(dom)
