def get_satisfying_states(model):
    """
    >>> from simple_model import *
    >>> m = SimpleModel(0.1, 0.95)
    >>> get_satisfying_states(m)
    set([(1, 0, 0), (1, 1, 0), (1, 1, 1), (1, 0, 1)])
    >>> from thomas_model import *
    >>> m = ThomasModel(0.1, 0.25)
    >>> get_satisfying_states(m)
    set([(1, 1, 0, 1, 0), (1, 1, 1, 0, 0), (1, 1, 1, 1, 0), (1, 0, 1, 0, 0), (1, 0, 1, 1, 0), (1, 1, 0, 1, 1), (1, 0, 1, 1, 1), (1, 0, 1, 0, 1), (1, 1, 1, 1, 1), (1, 0, 0, 1, 1), (1, 0, 0, 0, 0), (1, 1, 1, 0, 1), (1, 1, 0, 0, 0), (1, 0, 0, 1, 0), (1, 1, 0, 0, 1), (1, 0, 0, 0, 1)])
    >>> m = ThomasModel(0.1, 0.25, 2)
    >>> (1, 0, 1, 0, 0, 1, 0, 0, 0) in get_satisfying_states(m)
    True
    """
    satisfying = []
    for x in model.statespace:
        if x[0] == 1:
            satisfying += [x]
    return set(satisfying)