1. A method for analyzing a set of policies, the method comprising: receiving, at a processor unit, a goal comprising a particular outcome to be achieved within the set of policies; defining an analysis object comprising a data structure maintaining information necessary to perform an analysis of the goal with respect to the set of policies, wherein the analysis object is configured to limit a number of calculations needed to achieve the goal; finding a set of expressions in the set of policies, wherein each member of the set of expressions has an output once solved, and wherein the output for the each member of the set of expressions is the same; solving for the output for one member of the set of expressions, wherein a solved output is created; caching the solved output in a cache of the analysis object such that the solved output is associated with the each member of the set of expressions; and processing the analysis object to create a set of values that achieves the goal, wherein processing includes referencing the cache to retrieve the solved output each time a member of the set of expressions is to be solved during processing of the analysis object.