Inductive synthesis of functional programs : universal planning, folding of finite programs, and schema abstraction by analogical reasoning - Schmid, U. (Springer, 2003)