1. A method to determine a function to rectify functional differences between netlist G 1 and netlist G 2 having inputs V, the method comprising: determining a signal s of netlist G 1 that can be re-synthesized so as to correct the functional differences between netlist G 1 and netlist G 2 ; assigning respective static values to a first plurality of inputs V; assigning respective initial values to a second plurality of inputs V; determining a first function based on the assigned static values, the assigned initial values, a first error function reflecting the difference between outputs of netlist G 1 and netlist G 2 for each vector of inputs V in a case that s equals 0, and a second error function reflecting the difference between the outputs of netlist G 1 and netlist G 2 for each vector of inputs V in a case that s equals 1; determining whether the first function rectifies the functional differences between netlist G 1 and netlist G 2 ; if it is determined that the first function does not rectify the functional differences, assigning respective next values to the second plurality of inputs; and determining a second function based on the first function, the assigned static values, the assigned next values, the first error function, and the second error function.