1. A computer-assisted method for program analyzing, comprising: configuring at least one processor for: receiving at least one sequential program including a plurality of elements; determining program analysis information for the plurality of elements by at least extracting a data-dependent relationship and a control-dependent relationship; determining a group of invertibly contractible elements included in the plurality of elements based on the program analysis information; and generating a contracted program dependence graph by contracting the group of invertibly contractible elements; the program analysis information comprises an abstract syntax tree expression and a program dependence graph of the at least one sequential program, the method further comprising: searching vertex sets as the dependent elements in the abstract syntax tree expression, determining contractible vertex sets; and contracting the determined contractible vertex sets on the program dependence graph program dependence graph into one vertex wherein the contracted program dependence graph is generated at least based on the one vertex.