1. A method for minimizing a rule set, the method comprising: building a rule set application graph that describes a set of rules including actions and cases, whereby each rule defines an action for one or more cases; building a rule violation graph for each rule describing the actions and cases not defined for that rule; and determining, by a processor, a subset of rules having a reduced number of rules with a same set of actions and cases as the rule set application graph by exploring candidate subsets of the set of rules that are sufficient for reproducing a behavior of an original rule set.