Many developers of natural language (NL) processing systems believe that a single internal representation (of sentences) should support all levels of reasoning (linguistic, semantic, and pragmatic). Such a representation is necessarily quite expressive, containing a large variety of syntactic constructs necessary to model the nuances of natural language. Others (including ourselves) take the view that reasoning can be more efficient if two different representations are used--a richer representation is used for linguistic reasoning, while an ontologically much sparser representation is used for reasoning about semantics and pragmatics. We argue for a representation that eliminates as many syntactic constructs as possible while preserving full expressivity. We are currently implementing a reasoning system that performs efficient logical deductions using a fully expressive (but syntactically sparse) graph-based representation.