The goal of this note is to provide a background and references for the invited lecture presented at Computer Science Logic 2006. We briefly discuss motivations that led to the emergence of nonmonotonic logics and introduce two major nonmonotonic formalisms, default and autoepistemic logics. We then point lgebraic principles behind the two logics and present an abstract algebraic theory that unifies them and provides an effective framework to study properties of nonmonotonic reasoning. We conclude with comments on other major research directions in nonmonotonic logics. 1 Why nonmonotonic logics In the late 1970s, research on languages for knowledge representation, and considerations of basic patterns of commonsense reasoning brought attention to rules of inference that admit exceptions and are used only under the assumption of normality of the world in which one functions or to put it differently, when things are as expected. For instance, a knowledge base concerning a university shoul...