This document discusses various techniques for understanding natural language including:
1) Symbolic and statistical approaches to analyzing syntax and semantics including parsers using context free grammars, transition networks, and augmented transition networks.
2) The role of knowledge in mapping syntax to meaning using type hierarchies and case frames.
3) Techniques for querying databases and extracting information from natural language texts.