# Discriminant of the equation have three integer solutions m

I have equation
(x+9)(x^2+(m+1) x-7 m+8)=0. and

Solve[Discriminant[(x + 9) (x^2 + (m + 1) x - 7 m + 8), x] == 0, m]


{{m -> -31}, {m -> 1}, {m -> 5}, {m -> 5}}

How to find the integer numbers a, b, c, d, k, t so that the equation x^3 + (a*m + b)*x^2 + (c*m + d)*x + k*m+t =0 satifies

Solve[Discriminant[x^3 + (a*m + b)*x^2 + (c*m + d)*x + k*m + t, x] == 0, m] has three integer numbers m?

I do not know how to start.

Given that you have multiple parameters, this presents a somewhat complicated problem. However, I think we can do the following.

First, we calculate the discriminant and use Collect to leave it as a polynomial in the parameter $$m$$:

 p = x^3 + (a*m + b)*x^2 + (c*m + d)*x + k*m + t;
dis = Collect[Discriminant[p, x], m];


We proceed to eliminate the term independent of $$m$$ by solving for one of the remaining parameters. After making some appropriate choices, we find that if we take

$$k=\displaystyle\frac{c^2}{4a},\; d=\displaystyle\frac{b^2}{3},\; t=\displaystyle\frac{b^3}{27},$$

the resulting discriminant is

pr = {k -> c^2/(4 a), d -> b^2/3, t -> b^3/27};
dd = Collect[dis /. pr, m, Simplify]


From the previous point, you can use Reduce or FindInstance. However, to simplify things a bit and showcase some solutions, we'll fix two of the remaining four parameters, ensuring that this leads us to parameters $$k$$, $$d$$, and $$t$$ being integers.

pr0 = {a -> 1, b -> 6};
dd0 = dd /. pr0;


Finally, we use FindInstance to find some solutions:

pcm = FindInstance[dd0 == 0, {c, m}, Integers, 3];

Column[Table[Sort@Catenate@{pcm[[i]], Catenate@{pr /. pr0 /. pcm[[i]], pr0}}, {i,1, 3}]]