'Returns True if ``other`` is is a subset of ``self``.
Here ``other`` may be an ideal.
>>> from sympy.abc import x
>>> from sympy import QQ
>>> I = QQ.old_poly_ring(x).ideal(x+1)
>>> I.subset([x**2 - 1, x**2 + 2*x + 1])
True
>>> I.subset([x**2 + 1, x + 1])
False
>>> I.subset(QQ.old_poly_ring(x).ideal(x**2 - 1))
True'

def subset(self, other):

    if isinstance(other, Ideal):
        return self._contains_ideal(other)
    return all((self._contains_elem(x) for x in other))
