By the way, one typical (and potentially expensive) way of handling
the equivalence
problem is actually very simple to program.
Run through all the variables setting them to true/false, and evaluate
the constant logical expression.
That is, for a 3-variable expression you need to test 8 cases..
A true, B true, C true
A true, B true, C false
etc.
if they are all true, you are done.
Look up boolean logic circuit simplification for more info.