In general, competent algebraists can easily recognize expressions which hold high potential for the successful application of commonly applied algebraic transformations, such as transferring terms to the other side of an equation and factoring out common factors. Novice students, however, have difficulty identifying these expressions and assessing the promise of the application of particular transformations. In order to teach these skills, an Intelligent Tutoring System must be able to reason about algebraic expressions in a way which is accessible to a student. In this paper, we describe a mechanism for the representation and manipulation of algebraic expressions which is able to characterize algebraic transformations commonly performed by algebraists. This mechanism has been implemented in a system called DISSOLVE which generates explainable and intuitively appealing solutions to algebraic equations at the high-school level.