Update I ‘repaired’ this method, but it changed a lot and I have some different questions, so I posted it separately here.
As training for the olympiad, I have to solve a lot of inequalities. Recently, I found a very general method to solve inequalities. I think it’s too good to be true, but if it is true, I think an implementation of the algorithm in a computer program could be used to very quickly prove all kinds of inequalities.
First, I’ll explain the method. Then I’ll ask my questions. At the very bottom, I proved a simple inequality using my method as sort of a demonstration.
The method / algorithm
Say we have to prove a certain inequality that looks like:
f(a,b,c…)≥g(a,b,c…)
for all a,b,c…∈R. Here a,b,c… are simply de independent variables. There might be just one, there might be 21. It doesn’t matter.First, we rearrange:
f(a,b,c…)−g(a,b,c…)≥0
Now, in order to prove our inequality, we have to prove that the LHS has a minimum value and that that minimum value is greater than or equal to 0. Say that the inequality is true. Let a0,b0,c0… be the values of a,b,c… for which the LHS is minimal. Now, we must have:
d(f−g)da(a0,b0,c0…)=0
because otherwise, we could increase or decrease a and get a lower value for the LHS, contradicting our definition of a0. In fact, we have:
d(f−g)da(a0,b0,c0…)=0d(f−g)db(a0,b0,c0…)=0d(f−g)dc(a0,b0,c0…)=0⋮
So we get as many equations as variables. Now we have a nice system of equations to work with. There are three options.
 The system has no solutions. This means a minimum does not exist and the inequality doesn’t hold for all values of a,b,c….
 The system has exactly one solution. If we plug this in and also some other random values for a,b,v…, we can see whether it’s a maximum or a minimum. If it’s a maximum, there are no minima, because the system only had one solution. If it’s a minimum, simply plug in the values to check whether the inequality holds. If it does, it holds for all a,b,c…∈R.
 The system has infinitely many solutions. In this case, we can express these solutions using less variables than we had in the original inequality. Plugging in those solutions gives a new inequality with less variables, so if we repeat the proces, we eventually get a system of the first or second type or an inequality with just one variable and those are generally pretty easy to solve.
Questions
I have two questions.
 Does the method theoretically work? I think so, but there could be something I missed. As I said before, it looks too good to be true.
 If it does work, why don’t people use it that often? I understand that proofs using things like AMGMHM are shorter, but this method is guaranteed to work. It either gives a full proof or a concrete counterexample.
Example
Prove that for all a,b,c∈R, we have:
ab+bc+ca+a−c≤1+13(a+b+c)2
Proof: First, rearrange:
1+13(a+b+c)2−ab−bc−ca−a+c≥0
Now, take the derivatives with respect to a, b and c and set them equal to 0:
23(a+b+c)−b−c−1=023(a+b+c)−a−c=023(a+b+c)−b−c+1=0
Some algebra to give us a nicer system:
b+c+3=2aa+c=2bb+c−3=2c
So c=2b−a. Plugging it into the first equation gives:
b+2b−a+3=2a3b+3=3ab=a−1
plugging that into the third equation gives:
a−1+c−3=2ca−2=c
and that’s the solution to our system; b=a−1, c=a−2. Plugging this into the original inequality gives:
ab+bc+ca+a−c≤1+13(a+b+c)2a(a−1)+(a−1)(a−2)+(a−2)a+a−(a−2)≤1+13(3a−3)2a2−a+a2−3a+2+a2−2a+2≤1+13(9a2−18a+9)3a2−6a+4≤1+3a2−6a+33a2−6a+4≤3a2−6a+4
Which always holds and therefore the original inequality always holds. Q.E.D.
Answer
Actually, this is one approach to doing inequalities, and sometimes it is used. But there are some caveats that need to be paid attention to:

It is not always the case that those multivariable functions are differentiable at all points that you are interested in. (And in some cases, the function is differentiable a.e., but the function is so bizarre that its derivative does not contain too much information about the function’s variation – this is rare though, usually rises theoretically but not in practical use cases.)

Even if 1 is not an issue, sometimes it is not easy to get the differentiation of the function – it could be tricky to calculate differential values for certain points, or the derivative is very involving for the function expressed in nested combinations of elementary operations/functions, or the derivative may not be in closedform if the function is not elementary, etc. (Plus if the differentiation is in a complicated form, it is also difficult to solve the equations of which derivatives equal to zero.)

Even if 2 is not an issue, it is not guaranteed that the point you get by having firstorder partial derivatives equaling to zero is local minimum/maximum, you might just get a saddle point – thus secondorder derivatives need to be checked as well (notice also there is no guarantee that secondorder derivatives exist)

Even if 3 is not an issue, you still cannot be sure that the local maximum/minimum is global maximum/minimum – e.g. it could be possible that points at the boundary are larger than local maximum point you get. So check more before you make the final conclusion – For example, when finding the global maximum:
 Compare all local maximum points (if there is any, and make sure they are
local max);  Compare all points at the boundary (if there is any);
 Check function’s behavior as it approaches infinity (if applicable);
 Check where firstorder derivatives do not exist (if any) – they could
be maximum points;  and so on..
 Compare all local maximum points (if there is any, and make sure they are
Attribution
Source : Link , Question Author : Mastrem , Answer Author : Jay Zha