A method for acquiring an input value such that an output value differs before and after refactoring is not known and an information processing apparatus searching for such an input value that inequivalent output values can be brought about for the equivalent input values among multiple target programs. The apparatus including: an acquisition section acquiring, for each of the multiple target programs, an input/output constraint showing a condition to be satisfied by an input value and an output value; a constraint condition generating section generating a constraint condition which becomes true when the multiple input/output constraints for the multiple target programs are satisfied, input values for the multiple target programs are equivalent, and output values for the multiple target programs are not equivalent; and a constraint releasing section giving the constraint condition to a constraint solver to obtain an input value satisfying the constraint condition.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. An information processing apparatus searching for such an input value that inequivalent output values can be brought about for the equivalent input values among multiple target program products, the apparatus comprising: an acquisition section acquiring, for each of the multiple target program products, an input/output constraint showing a condition to be satisfied by an input value and an output value; a constraint condition generating section generating a constraint condition which becomes true when the multiple input/output constraints for the multiple target program products are satisfied, input values for the multiple target program products are equivalent, and output values for the multiple target program products are not equivalent; and a constraint releasing section giving the constraint condition to a constraint solver to obtain an input value satisfying the constraint condition. 2. The information processing apparatus according to claim 1, further comprising: an execution section inputting the input value obtained by the constraint releasing section to the multiple target program products and executing the multiple target program products; a judgment section judging whether or not inequivalent output values have been obtained from the multiple target program products as a result of the execution by the execution section; and a notification section notifying a user of the input value obtained by the constraint releasing section on condition that it is judged that inequivalent output values have been obtained from the multiple target program products. 3. The information processing apparatus according to claim 2, wherein the constraint releasing section re-executes the constraint solver to obtain a different input value satisfying the constraint condition, on condition that it is judged that equivalent output values have been obtained from the multiple target program products. 4. The information processing apparatus according to claim 3, wherein: the constraint condition generating section updates the constraint condition by adding a condition of excluding the input value obtained by the constraint releasing section to the constraint condition, on condition that it is judged that equivalent output values have been obtained from the multiple target program products; and the constraint releasing section gives the updated constraint condition to the constraint solver to obtain an input value satisfying the constraint condition. 5. The information processing apparatus according to claim 1, further comprising an input/output constraint generating section generating an input/output constraint for each of the multiple target program products. 6. The information processing apparatus according to claim 5, wherein the input/output constraint generating section adds an assignment expression condition which becomes true when an expression to be assigned to an assignment statement in the target program product agrees with an assignment-destination variable, to the input/output constraint, and, when the expression to be assigned includes operation which cannot be handled by the constraint solver, converts the expression to be assigned to an expression which can be handled by the constraint solver. 7. The information processing apparatus according to claim 6, wherein, when the expression to be assigned includes the operation which cannot be handled by the constraint solver, the input/output constraint generating section converts the assignment expression condition to a broader condition which can be handled by the constraint solver. 8. The information processing apparatus according to claim 5, wherein: the input/output constraint generating section generates multiple input/output constraints causing execution paths different from one another, which are a part of multiple execution paths, to be always true, in one target program product among the multiple target program products; the constraint condition generating section generates the multiple constraint conditions according to the multiple input/output constraints; and the constraint releasing section gives each of the multiple constraint conditions to the constraint solver to obtain an input value satisfying each of the multiple constraint conditions. 9. The information processing apparatus according to claim 1, wherein the constraint condition generating section generates a condition which becomes true when values of the same input variables in the multiple target program products are equal to one another, as a condition that input values for the multiple target program products are equivalent. 10. The information processing apparatus according to claim 1, wherein the constraint condition generating section acquires correspondence among input values of the multiple target program products, and generates a condition which becomes true when input values for the multiple respective target program products are corresponding values, as a condition that input values for the multiple target program products are equivalent. 11. The information processing apparatus according to claim 1, wherein the constraint condition generating section generates a condition which becomes true when values of the same output variables of the multiple target program products do not agree with one another, as a condition that output values of the multiple target program products are inequivalent. 12. The information processing apparatus according to any one of claim 1, wherein the constraint condition generating section acquires correspondence among output values of the multiple target program products, and generates a condition which becomes true when output values for the multiple respective target program products are not corresponding values, as a condition that output values for the multiple target program products are inequivalent. 13. An information processing method executed by an information processing apparatus searching for such an input value that inequivalent output values can be brought about for the equivalent input values among multiple target program products, the method comprising: an acquisition step of acquiring, for each of the multiple target program products, an input/output constraint showing a condition to be satisfied by an input value and an output value; a constraint condition generating step of generating a constraint condition which becomes true when the multiple input/output constraints for the multiple target program products are satisfied, input values for the multiple target program products are equivalent, and output values for the multiple target program products are not equivalent; and a constraint releasing step of giving the constraint condition to a constraint solver to obtain an input value satisfying the constraint condition. 14. A non-transitory program product causing a computer to function as an information processing apparatus searching for such an input value that inequivalent output values can be brought about for the equivalent input values among multiple target program products, the program product causing the computer to function as: an acquisition section acquiring, for each of the multiple target program products, an input/output constraint showing a condition to be satisfied by an input value and an output value; a constraint condition generating section generating a constraint condition which becomes true when the multiple input/output constraints for the multiple target program products are satisfied, input values for the multiple target program products are equivalent, and output values for the multiple target program products are not equivalent; and a constraint releasing section giving the constraint condition to a constraint solver to obtain an input value satisfying the constraint condition.