I think,
Recursion, in mathematics and computer science, is a method of defining functions in which the function being defined is applied within its own definition; specifically it is defining an infinite statement using finite components.
1.A simple base case (or cases), and
2.A set of rules which reduce all other cases toward the base case.