This book develops the theory of typed feature structures, a data structure that generalizes both first-order terms and feature structures of unification-based grammars to include inheritance, typing, inequality, cycles and intensionality. The resulting synthesis serves as a logical foundation for grammars, logic programming and constraint-based reasoning systems. A logical perspective is adopted which employs an attribute-value description language along with complete equational axiomatizations of the various systems of feature structures. At the same time, efficiency concerns are kept in mind and complexity and representability results are provided. The application of feature structures to phrase structure grammars is described and completeness results are shown for standard evaluation strategies. Definite clause logic programs are treated as a special case of phrase structure grammars. Constraint systems are introduced and an enumeration technique is developed for solving arbitrary