Is it possible to measure how much work does LogicT do ?
Is it as simple as adding a mutable reference in the underlying monad state and updating it whenever the failure continuation (see runLogicT @ Control.Monad.Logic) returns? Is there a more principled approach? I’m not yet clear on how do state and backtracking play together.