(how) is recursion detected?