12. The data processing system of claim 8 , wherein performing the partial solve comprises producing an initial solve condition that includes Boolean clauses that correspond to more than one of the option families, splitting the initial solve condition into multiple subconditions, each subcondition including a plurality of Boolean clauses that corresponds to only one of the option families, and combining the subconditions to produce the solve condition so that the solve condition includes a plurality of Boolean clauses that each corresponds to only one of the option families.
8. The data processing system of claim 7 , wherein the input expression is a configuration definition for a product that includes a plurality of option families, each option family including a plurality of variants for a respective option.