(self, a, b)
process a -> b rule
process a -> b rule
process a - > b rule
def process_rule(self, a, b):
        """process a -> b rule"""   # TODO write more?
        if (not a) or isinstance(b, bool):
            return
        if isinstance(a, bool):
            return
        if (a, b) in self._rules_seen:
            return
        else:
            self._rules_seen.add((a, b))

        # this is the core of processing
        try:
            self._process_rule(a, b)
        except TautologyDetected:
            pass
def process_rule ( self , a , b ) : # TODO write more? if ( not a ) or isinstance ( b , bool ) : return if isinstance ( a , bool ) : return if ( a , b ) in self . _rules_seen : return else : self . _rules_seen . add ( ( a , b ) ) # this is the core of processing try : self . _process_rule ( a , b ) except TautologyDetected : pass