Problems with Minimize

I'm attempting to Minimize the following function with Minimize:

V0[Lambda_,m2_,k_,phi_] := Lambda + (1/2) m2 phi^2 + (1/4) k phi^4


and used the following code:

Minimize[V0[Lambda,m2,k,phi], phi]


I received the following output, which makes no sense to me since this function is easily minimized:

{Piecewise[{{Lambda, (m2 == 0 && k > 0) || (m2 > 0 && k >= 0) || (m2 == 0 && k == 0 && Lambda > 0) ||

2
4 k Lambda - m2
>        (m2 == 0 && k == 0 && Lambda < 0)}, {----------------, m2 < 0 && k > 0},
4 k

>      {-Infinity, (m2 == 0 && k < 0) || (m2 > 0 && k < 0) || (m2 < 0 && k <= 0)}}],

2       4
>    {phi -> Piecewise[{{Root[2 m2 #1  + k #1  & , 1], m2 > 0 && k >= 0},

2
m2           2       4
>        {Root[--- + 2 m2 #1  + k #1  & , 1], m2 < 0 && k > 0},
k

>        {0, (m2 == 0 && k > 0) || (m2 == 0 && k == 0 && Lambda == 0) || (m2 == 0 && k == 0 && Lambda > 0) ||

>          (m2 == 0 && k == 0 && Lambda < 0)}}, Indeterminate]}}


That being said, this function is readily minimized using:

Solve[D[V0[Lambda,m2,k,phi],phi] == 0, phi]


, which yields the correct solutions. However, I want to use the Minimize function as the "Solve" method fails for more complicated functions that I'm working with. For example:

f[x_] := (x^2/4) (Log[x] - (3/2));
fv[x_] := (x^2/4) (Log[x] - (5/6));

V1[m2_,e_,phi_,k_,xi_,xitilde_,Q_] := Module[{},
Z = e^2 phi^2;
G = m2 + k phi^2;
H = m2 + 3 k phi^2;
Zp = xitilde Z + 1/2 (G + Sqrt[G (G + 4 (xitilde - xi) Z)]);
Zm = xitilde Z + 1/2 (G - Sqrt[G (G + 4 (xitilde - xi) Z)]);
Zg = xitilde Z;

(1/(16 Pi^2)) (f[H] + 3 fv[Z] + f[Zp] + f[Zm] - f[Zg])
];


Any input is appreciated. Thanks!

• Can the parameters be any real numbers? Or are they restricted to certain domains (e.g., positive reals)? I think that's why you're getting a complicated piecewise answer. Mar 4, 2020 at 1:33
• The parameters are not restricted to certain domains. They are left simply as user defined variables. As I mentioned in the post, I'm completely befuddled because the solutions are easily arrived at through the "Solve" method, but the Minimize function returns an incomprehensible mess for what should be a simple function. Mar 4, 2020 at 1:57

If we can't constrain any of the parameters to a domain like Reals, I'm not sure I would agree that this is easily minimized. What if Lambda is complex? All of a sudden your function is generating complex numbers. Is $$4 + 3i < 3 + 4i$$? If you want to compare these numbers, you'll have to tell Mathematica how you would like the comparison performed.

What if m2 > 0 and k < 0? Then your function opens downward and the solution appears to be indeterminate, which the output of your Solve doesn't show.

Keep in mind that setting the derivative equal to zero only allows you to find local minima AND maxima. Solve is telling you that there are 3 local minima/maxima but not all 3 can actually be a minimum here.

Also Minimize operates on the assumption that all variables are real, so it won't find any complex values. If we constrain the values to be real, the result of Minimize is correct. Though complicated to interpret at first, the conditions contain important information.

Let's break down the first part:

$$\begin{cases} \text{Lambda} & (\text{m2}=0\land k>0)\lor (\text{m2}>0\land k\geq 0)\lor (\text{m2}=0\land k=0\land \text{Lambda}>0)\lor (\text{m2}=0\land k=0\land \text{Lambda}<0) \\ \frac{4 k \text{Lambda}-\text{m2}^2}{4 k} & \text{m2}<0\land k>0 \\ -\infty & (\text{m2}=0\land k<0)\lor (\text{m2}>0\land k<0)\lor (\text{m2}<0\land k\leq 0) \end{cases}$$

Mathematica is giving you a piecewise function that defines what the minimum values of your function will be. For example, if m2 == 0 and k > 0 then the minimum of your function is Lambda. A more important case is the last one, which I'll come back to.

$$phi \to \begin{cases} \text{Root}\left[\text{\#1}^4 k+2 \text{\#1}^2 \text{m2}\&,1\right] & \text{m2}>0\land k\geq 0 \\ \text{Root}\left[\text{\#1}^4 k+2 \text{\#1}^2 \text{m2}+\frac{\text{m2}^2}{k}\&,1\right] & \text{m2}<0\land k>0 \\ 0 & (\text{m2}=0\land k>0)\lor (\text{m2}=0\land k=0\land \text{Lambda}=0)\lor (\text{m2}=0\land k=0\land \text{Lambda}>0)\lor (\text{m2}=0\land k=0\land \text{Lambda}<0) \\ \text{Indeterminate} & \text{True} \end{cases}$$

This part tells you that the minimum occurs when phi takes on one of the values in the piecewise function. Root objects are often a bit of a surprise to new Mathematica users, but there are a lot of good posts on that topic so I won't go into them here.

The last case applies when none of the previous conditions have been met. An example is when k < 0 and m2 > 0. Let's say k = -5, m2 = 5, and Lambda = 2. In this case, we get a downward facing $$x^4$$ curve which goes to $$-\infty$$ as phi goes to either positive or negative $$\infty$$. This means that the minimum is $$-\infty$$, but the value of phi is Indeterminate.