There will be a *base case*. The base case tells the recursive function when it no longer needs to call itself. It is a simple case where the return value is already known. There will also be a *recursive* call which executes the original function with different arguments. If the function is written correctly, eventually the base case will be reached.