- mi(+C:cont, +AS:list(assumption), -R:request) is det
- Runs the given continuation until either an answer is generated or
all threads of execution have become suspended on sampling decisions.
Essentially, this interpreter runs one intial thread as far as it can
without making any new assumptions, either reaching its goal or returning
a weighted set of new threads, each predicated on a new assumption.