判断可行域A和B是否相等
1.如果不是特别复杂的话,分开Reduce[A]和Reduce[B]对结果检测是不是一致的;
示例:
Clear["Global`*"]
Reduce[0 < a && 0 < b && Max[a - 1, b - 2, 2*a - 3] == a - 1];
Reduce[0 < a && 0 < b && Max[a - 1, b - 2, 2*a - 3] == b - 2];
Reduce[0 < a && 0 < b && Max[a - 1, b - 2, 2*a - 3] == 2*a - 3];
Reduce[0 < a &&
0 < b && (a - 1 < x <= b - 2 || b - 2 < x <= 2*a - 3), {a, b, x}]
Reduce[0 < a && 0 < b &&
Min[a - 1, b - 2] < x <= Max[b - 2, 2*a - 3], {a, b, x}]
结果:
2.如果比较复杂的话,Reduce[A&!B]和Reduce[!A&B],如果都是False,那么说明A=B。
示例:
Clear["Global`*"]
Reduce[0 < a && 0 < b && Max[a - 1, b - 2, 2*a - 3] == a - 1];
Reduce[0 < a && 0 < b && Max[a - 1, b - 2, 2*a - 3] == b - 2];
Reduce[0 < a && 0 < b && Max[a - 1, b - 2, 2*a - 3] == 2*a - 3];
Reduce[0 < a &&
0 < b && (a - 1 < x <= b - 2 ||
b - 2 < x <= 2*a - 3) && ! (Min[a - 1, b - 2] < x <=
Max[b - 2, 2*a - 3]), {a, b, x}]
Reduce[0 < a &&
0 < b && ! (a - 1 < x <= b - 2 || b - 2 < x <= 2*a - 3) &&
Min[a - 1, b - 2] < x <= Max[b - 2, 2*a - 3], {a, b, x}]
结果: