4. The process of claim 1 , wherein there are a plurality of input-output example, and wherein the process action of generating a synthesis procedure, comprises the actions of: (a) selecting a previously unselected input-output example; (b) employing a learning procedure to compute a set of expressions in the relational table lookup expression language that produce the prescribed output of the currently selected input-output example from the one or more input string variables of the currently selected input-output example using said one or more relational tables; (c) representing the computed set of expressions using a prescribed relational table lookup data structure; (d) repeating actions (a) through (c) to produce another computed set of expressions represented using the prescribed relational table lookup data structure; (e) employing an intersect procedure to intersect the computed sets of expressions, as represented by the prescribed relational table lookup data structure, wherein the resulting intersected sets of expressions are also represented by the prescribed relational table lookup data structure; (f) determining if there is at least one previously unselected input-output example remaining; (g) wherever it is determined that there is at least one previously unselected input-output example remaining, repeating actions (a) through (c) to produce another computed set of expressions represented using the prescribed relational table lookup data structure, employing said intersect procedure to intersect the last computed set of expressions, as represented by the prescribed relational table lookup data structure, with the last produced intersected sets of expressions, wherein the resulting intersected sets of expressions are also represented by the prescribed relational table lookup data structure; and (h) repeating actions (f) and (g) until there are no more previously unselected input-output example remaining.
1. A computer-implemented process for performing string transformations involving lookup operations in one or more relational tables, comprising: using a computer to perform the following process actions: establishing a relational table lookup expression language comprising a set of grammar rules defining expressions; generating a synthesis procedure which learns a set of expressions in the relational table lookup expression language that produces a prescribed output from one or more input string variables using said one or more relational tables based on a set of one or more input-output examples each comprising one or more input string variables and said prescribed output; and receiving one or more input string variables of a same type found in the set of one or more input-output examples, and producing the prescribed output using the synthesis procedure.