The document discusses knowledge representation using propositional logic and predicate logic. It begins by explaining the syntax and semantics of propositional logic for representing problems as logical theorems to prove. Predicate logic is then introduced as being more versatile than propositional logic for representing knowledge, as it allows quantifiers and relations between objects. Examples are provided to demonstrate how predicate logic can formally represent statements involving universal and existential quantification.