The use of predicate logic for modeling information systems is widespread and growing. Knowledge representation, for example, has long been important in artificial intelligence applications, and is now emerging as a critical component of semantic web applications. Similarly, predicate logic is the basis for ontologies and inferential knowledge bases. This course teaches the fundamentals of propositional and predicate logic, with an emphasis on semantics. Modal logic is introduced as a tool to manage non-truth-functional systems, and dynamic logic is introduced to manage potentially inconsistent systems, such as may arise in merging disparate databases or in combining diagnostic models of related systems.
This course may be counted toward a three-course track in Database Systems and Knowledge Management.