# How can I simplify the output of the Reduce to a more compact form?

Below is the code.

Reduce[(a + b - c) (a - b + c) (-a + b + c) (a + b + c) >= 0 && 0 < a <= 1 && 0 < b <= 1 && 0 < c <= 1, {a, b, c}]


This does generate the constraints on $$a,b$$ and $$c$$ but can it be simplified further to a readable form?

Any help would be highly appreciated.

• How do you imagine a simplification of (0 < a < 1/ 2 && ((a + b >= c && ((a == b && a < b + c) || (0 < b < a && a <= b + c) || (a + c >= b && a < b && a + b <= 1))) || (a + c >= b && b <= 1 && a + b > 1 && c <= 1))) || (1/2 <= a < 1 && ((c <= 1 && ((a == b && 0 < c) || (a + c >= b && a < b && b <= 1) || (a > b && a + b >= 1 && a <= b + c))) || (a + b < 1 && a + b >= c && a <= b + c && b > 0))) || (a == 1 && c <= 1 && ((b == 1 && 0 < c) || (b + c >= 1 && 0 < b && b < 1)))? May 21, 2021 at 16:19
• The original argument to Reduce is a more compact form. Asking to solve for {a, b, c} is what causes the expanded form. If you want to visualize the expression use RegionPlot3D[(a + b - c) (a - b + c) (-a + b + c) (a + b + c) >= 0 && 0 < a <= 1 && 0 < b <= 1 && 0 < c <= 1, {a, 0, 1}, {b, 0, 1}, {c, 0, 1}, PlotPoints -> 100, MaxRecursion -> 5] May 21, 2021 at 16:34
• @BobHanlon Thanks for the help. May 21, 2021 at 17:02
• BTW, Maple 2021 produces the same result. May 21, 2021 at 17:37

Let us make

 Reduce[(a + b - c) (a - b + c) (-a + b + c) (a + b + c) >= 0 && {a, b, c} > 0, {a, b, c}]


a > 0 && ((0 < b < a && a - b <= c <= a + b) || (b == a && a - b < c <= a + b) || (b > a && -a + b <= c <= a + b))

and then add {a,b,c} <= 1:

a > 0 && ((0 < b < a && a - b <= c <= a + b) || (b == a &&
a - b < c <= a + b) || (b > a && -a + b <= c <= a + b)) && {a,b,c} <= 1


This is a simpler expression than the result of your code, but equivalent to it as

Resolve[ForAll[{a, b, c}, Equivalent[  a > 0 && ((0 < b < a && a - b <= c <= a + b) || (b == a &&
a - b < c <= a + b) || (b > a && -a + b <= c <= a + b)) && {a,
b, c} <= 1, (a + b - c) (a - b + c) (-a + b + c) (a + b + c) >=
0 && {a, b, c} > 0 && {a, b, c} <= 1]], Reals]


True

shows.