def convert_implications(s): if s.is_symbol: return s if s.func == Implies: a, b = s.args s = Or(b, Not(a)) args = [] for arg in s.args: args.append(convert_implications(arg)) return s.func(*args)