A specific set of instructions for carrying out a procedure or solving a problem, usually with the requirement that the procedure terminate at some point. "Algorithm" in common usage is often commonly associated with automated processing of large data sets, but algorithms need need be neither automated nor complicated: a recipe for a grilled cheese sandwich, for example, is an algorithm.