def posify(eq):
    eq = sympify(eq)
    if iterable(eq):
        f = type(eq)
        eq = list(eq)
        syms = set()
        for e in eq:
            syms = syms.union(e.atoms(Symbol))
        reps = {}
        for s in syms:
            reps.update(dict((v, k) for k, v in posify(s)[1].items()))
        for i, e in enumerate(eq):
            eq[i] = e.subs(reps)
        return f(eq), {r: s for s, r in reps.items()}

    reps = dict([(s, Dummy(s.name, positive=True))
                 for s in eq.free_symbols if s.is_positive is None])
    eq = eq.subs(reps)
    return eq, {r: s for s, r in reps.items()}
Delete attributes from a given item in a domain.
dataset/ETHPy150Open sympy/sympy/sympy/simplify/simplify.py/posify--crossover with--dataset/ETHPy150Open darcyliu/storyboard/boto/sdb/connection.py/SDBConnection.delete_attributes