Patent ID: 6772410
Filing Date: 2004-08-03
Classification: G06F

Abstract:
A program verifying system for virtually verifying a program code described as a program instruction set having instructions with data type restrictions so as to determine whether or not the restrictions are correctly satisfied before executing step, comprising:data type inferring means for designating a lower limit type permissible as type information for various data types as virtually verified results and an upper limit type corresponding to the use of the data so as to infer the range of the type of each data; merging means for merging data at a merged point of a plurality of paths due to a branch instruction in the program code and setting a common portion of the data as new data; forward reflecting means for reflecting the change of the data to the other data that is influenced by the change of the data when the data is changed by said merging means; forward correlating means for correlating original data and the data changed by said merging means so as to allow said forward reflecting means to select data to be reflected; and determining means in which include in said data type inferring means for prohibiting the program code from being really executed when said data type inferring means detects a portion that violates the type restriction in the verified program code.