Commonsense reasoning is the reasoning of agents interacting with the real world.
Non monotonic reasoning is a well developed research area gathering the logical formalisms that treat commonsense reasoning. One of the best known of such formalisms is Default logic. In this paper we discuss Default logic at both the proof-theoretic and semantics levels and show that Default logic provides a clear and formal framework to understand the logical nature of commonsense reasoning. 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, a theory containing the needed information.