Recursion Trees Homework Help
A trace is one method of analyzing what a recursive function is doing. An additional would be to draw a recursion tree. In this technique, we show each invocation of the function as a tree node and draw lines between each function invocation and the recursive calls it makes.
The recursion tree can be annotated to show arguments to each function and the values they compute and return. The tree for fact gives us no new information, but drawing such a tree for the choose function is quite useful.