9. A program-product comprising a non-transitory processor-readable medium on which program instructions are embodied, wherein the program instructions are configured, when executed by the at least one programmable processor, to cause the at least one programmable processor to verify that a comparison model having folded expressions matches a reference model; wherein the reference model adheres to a first set of syntax and semantics and first rules of operator precedence defining a first order in which operations are performed in expressions, the reference model includes a plurality of first expressions, each first expression including at least one operator and at least one operand, a first expression of the plurality of first expressions including a first operator having a first operator precedence level and a first set of operands associated with the first operator, wherein commutativity and associativity allow various equivalent ordering and grouping of operators of the first operator precedence level within the first expression based on the first rules of operator precedence; wherein the comparison model adheres to a second set of syntax and semantics and second rules of operator precedence defining a second order in which operations are performed in expressions, the comparison model includes a second folded expression including a second operator having a second operator precedence level and a second set of operands associated with the second operator, wherein commutativity and associativity allow various equivalent ordering and grouping of operators of the second operator precedence level within the second expression based on the second rules of operator precedence; and wherein the program instructions are further configured to cause the at least one programmable processor to verify that a comparison model having folded expressions matches a reference model by matching the second folded expression with the plurality of first expressions in part by matching the first operator of the first expression with the second operator of the second expression and verifying that the first set of operands is equivalent with the second set of operands even when the first set of operands is in a different order than the second set of operands associated with the second operator based on commutativity or grouped in a different way based on associativity; and wherein the processing unit is further configured to determine whether the second folded expression is semantically equivalent to the plurality of first expressions based on the matching of the second folded expression with the plurality of first expressions, wherein the second folded expression need not be syntactically identical to the plurality of first expressions to be semantically equivalent.
9. A program-product comprising a non-transitory processor-readable medium on which program instructions are embodied, wherein the program instructions are configured, when executed by the at least one programmable processor, to cause the at least one programmable processor to verify that a comparison model having folded expressions matches a reference model; wherein the reference model adheres to a first set of syntax and semantics and first rules of operator precedence defining a first order in which operations are performed in expressions, the reference model includes a plurality of first expressions, each first expression including at least one operator and at least one operand, a first expression of the plurality of first expressions including a first operator having a first operator precedence level and a first set of operands associated with the first operator, wherein commutativity and associativity allow various equivalent ordering and grouping of operators of the first operator precedence level within the first expression based on the first rules of operator precedence; wherein the comparison model adheres to a second set of syntax and semantics and second rules of operator precedence defining a second order in which operations are performed in expressions, the comparison model includes a second folded expression including a second operator having a second operator precedence level and a second set of operands associated with the second operator, wherein commutativity and associativity allow various equivalent ordering and grouping of operators of the second operator precedence level within the second expression based on the second rules of operator precedence; and wherein the program instructions are further configured to cause the at least one programmable processor to verify that a comparison model having folded expressions matches a reference model by matching the second folded expression with the plurality of first expressions in part by matching the first operator of the first expression with the second operator of the second expression and verifying that the first set of operands is equivalent with the second set of operands even when the first set of operands is in a different order than the second set of operands associated with the second operator based on commutativity or grouped in a different way based on associativity; and wherein the processing unit is further configured to determine whether the second folded expression is semantically equivalent to the plurality of first expressions based on the matching of the second folded expression with the plurality of first expressions, wherein the second folded expression need not be syntactically identical to the plurality of first expressions to be semantically equivalent. 12. The program-product of claim 9 , wherein the comparison model is source code; and wherein the second operand is a variable.