recursion

algorithmic technique in computer science of solving a problem by reducing it to a smaller instance of the same problem