It has been recognized that AI programs suffer from a lack of generality, the first gross symptom being that a small variation to the problem being solved usually causes a major revision of the theory describing it. The lack of generality seems an unavoidable consequence of the process of approximating the world while building theories about it. In this paper we propose an approach where generality is achieved by formulating, for each problem at hand, an appropriate local theory, i.e. a theory containing the needed information. The process of theory formulation and reformulation is formalized using contexts. 1 Introduction to the Problem Since the birth of Artificial Intelligence, many formalisms and programs have been devised to model human common sense. The range of applicability of such formalisms has been investigated and some industrial applications based on such formalisms have been made. However, these formalisms (in different modes and to a different extent) lack generality i...