I'm have some expressions that I need to confirm the equality of. SameQ[Reduce[...], Reduce[...]]
works like a charm for the more simple expressions, however when they get much more complicated than the ones below Mathematica takes an inordinately large period of time, memory and CPU power to return an answer.
SameQ[
Reduce[(a > b && a > c && a > d && a > e && a > f && a > g && a <= h) || (a <= b && b > c && b > d && b > e && b > f && b > g && b <= h) || (a <= c && c >= b && c > d && c > e && c > f && c > g && c <= h) || (a <= d && d >= b && d >= c && d > e && d > f && d > g && d <= h) || (a <= e && e >= b && e >= c && e >= d && e > f && e > g && e <= h) || (a <= f && f >= b && f >= c && f >= d && f >= e && f > g && f <= h) || (a <= g && g >= b && g >= c && g >= d && g >= e && g >= f && g <= h), {a,b,c,d,e,f,g,h}, Reals],
Reduce[(a <= h && b <= h && c <= h && d <= h && e <= h && f <= h && g <= h), {a,b,c,d,e,f,g,h}, Reals]
]
Can I rephrase this query to Mathematica that would enable it to run any quicker?
TautologyQ[Equivalent[p1, p2], {a, b, c, d, e, f, g, h}]
but it's not working and don't know why. $\endgroup$ – b.gates.you.know.what May 22 '13 at 7:47True
:Resolve[ ForAll[{a, b, c, d, e, f, g, h}, BooleanMinimize /@ (p1 \[Equivalent] p2)], Reals]
$\endgroup$ – Rojo May 22 '13 at 20:49