Synthesis of list algorithms by mechanical proving. (July 2015)