Functions that can be defined using a set of rules and conditions, and can be computed in a finite number of steps.