1. A method of propagating values in a data-flow graph corresponding to a circuit design, comprising: marking, by computer, an initial set of nodes of the data-flow graph with symbolic values, wherein the symbolic values are indicative of whether data content carried by a node is equal to data content carried by another node; determining whether a first and a second transformation function (TF) are equivalent, wherein the first and second TF correspond to a first and second node, respectively, in the initial set of nodes; determining a first Boolean expression under which a first output of the first TF is equal to a second output of the second TF; and determining a first symbolic value at the first output of the first TF and a second symbolic value at the second output of the second TF, wherein the first symbolic value is equal to the second symbolic value when the first Boolean expression is satisfied.