How to find a conditional solution of inequalities?

Im trying to find the conditions of:

a>0,b>0,c>1,d>0
(a + (2 a - b/c) d + (a + b - b/c) d^2 + (-b + (2 b)/c) d^3 + (b d^4)/
c - (b d^5)/c) > 0


I use this code:

Reduce[{(a + (2 a - b/c) d + (a + b - b/c) d^2 + (-b + (2 b)/
c) d^3 + (b d^4)/c - (b d^5)/c) > 0, b > 0, c > 1, a > 0,
d > 0}, {a,b}, Reals]


Is there better way to find the conditions

Thanks

• Maybe try Simplify[Reduce[{(a+(2a-b/c)d+(a+b-b/c)d^2+(-b+(2b)/c)d^3+(b d^4)/c-(b d^5)/c)>0,b>0,c>1,a>0,d>0},{a,b}],b>0&&c>1&&a>0&&d>0] Because you told it each var>0 it knows those must be Real without needing to tell it Real and that often seems to make Reduce faster. Then Simplify will remove the constraints you already know, making the ones that remain easier to see and understand. Be careful using that.
– Bill
Mar 9, 2023 at 16:05

Clear["Global*"]

cons[1] =
Reduce[{(a + (2 a - b/c) d + (a + b -
b/c) d^2 + (-b + (2 b)/c) d^3 + (b d^4)/c - (b d^5)/c) > 0, b > 0,
c > 1, a > 0, d > 0}, {a, b}, Reals];


To reduce the LeafCount use simplification

cons[2] = cons[1] // Simplify;

cons[3] = cons[1] // FullSimplify;


To eliminate the Root expressions while reducing the LeafCount (but with increased LeafCount compared with just simplification) use both ToRadicals and Simplify

cons[4] = cons[1] // ToRadicals // Simplify;

FreeQ[cons[4], _Root]

(* True *)


However, if FullSimplify is used, the Root expressions are reintroduced.

cons[5] = cons[1] // ToRadicals // FullSimplify;

FreeQ[cons[5], _Root]

(* False *)


Comparing LeafCount

LeafCount /@ (cons /@ Range[5])

(* {314, 231, 228, 277, 230} *)


The different constraints describe the same region

Clear[rgn];
Evaluate[rgn /@ Range[5]] = ImplicitRegion[#, {a, b, c, d}] & /@
(cons /@ Range[5]);

RegionEqual @@ (rgn /@ Range[5])

(* True *)
`