Title: An Overview of Datalog and Extensions Abstract: Datalog is a query and rule language that is syntactically a subset of Prolog. Prolog was created in order to provide a clean, simple way of using logic for both specifying as well as writing programs. However, there still remain even to this day many ambiguous concepts in Prolog and to adress this, researchers came up with Datalog to better understand logic programming. The development of logic programming traces its origins to Alonzo Church, some deep Philosophical questions, debates between declarative versus procedural style of programing and the like. Later, research in Datalog provided a precise foundation for understanding a restricted class of computation and also provided a framework for "efficient" evaluation. However, in this talk we will not discuss many of the deep issues mentioned in the previous paragraph. Instead, we will focus on understanding pure Datalog and its connections to database theory alongwith some concrete examples for enforcing security policies. In the end, we will indicate some of the ways in which pure Datalog has been extended to increase its expressive power without sacrificing "efficiency".