A model is an idealization. It is an abstract representation of a given perceived reality. To construct a model one abstracts from the unimportant features of that reality and replaces it by a formal structure, whose properties, explicitly assumed or logically de- ducible from the stated assumptions, correspond to the interesting relationships of the reality being studied. The purpose of constructing a model is twofold: first, to help better understand a complex reality; second, to help make pre- dictions with regard to still unobserved phenomena. The first purpose will be satisfied if the constructor of the model is able to identify and disregard the unimportant features of the reality being studied and replaces this reality by an easier to understand formal structure. By applying then the techniques of mathematics and logic to this formal structure we might be able to reach conclusions with regard to still unobserved phenomena, which will be of help in making predictions.