another way of implementing cycle avoidance during tracing, this time
blocked inferences are saved and then re-applied if one of their
premises is derived in an alternative way.