Different types of applications and numerous programming languages have been developed to make easy the task of writing programs. The assortment of programming languages shows, different interpretations that can be given to information. However, from the perspective of their power to express computations, there is very minute difference among them. Accordingly different programming languages can be used in the study of programs. The study of programs can benefit, however, from fixing the programming language in use. This enables a unified discussion about programs. So the program can be defined as a finite sequence of instructions over some domain D. The domain D, called the domain of the variables, is assumed to be a set of elements with a distinguished element, called the initial value of the variables. Each of the elements in D is assumed to be a possible assignment of a value to the variables of the program. The sequence of instructions is assumed to consist of instructions of the following form.