Skip to Main Content
Production rule schemas are given which hold the basic information necessary for coding recursive loops and branches in LISP. Information from the user concerning the desired program is used to instantiate the schemas to yield production rules, and then these rules generate executable code in a strictly syntactic fashion. Emphasis is placed on decomposing the synthesis problem into a hierarchy of tasks which can each be solved by application of a schema. The method is demonstrated by showing how programs can be synthesized from examples of their input-output behaviors.