This document provides an overview of knowledge representation using predicate logic. It begins by defining knowledge and distinguishing it from data, beliefs, and hypotheses. It then discusses knowledge representation and some of its issues. The document introduces predicate logic as a formal method for knowledge representation and provides examples of representing statements in predicate logic. It discusses issues that can arise in translation, such as ambiguity and choosing representations. Finally, it covers resolution, a technique for theorem proving using knowledge represented in predicate logic.