I evaluate
Solve[{-((2 (4 θ0 + θ1))/σ^2) - (2 (4 θ0 + θ2))/σ^2,
-((4 θ0 + θ1)/(2 σ^2)), -((4 θ0 + θ2)/(2 σ^2)),
-(2/σ) + (4 θ0 + θ1)^2/(2 σ^3)
+ (4 θ0 + θ2)^2/(2 σ^3)} == {0, 0, 0, 0} && σ > 0,
{ θ0, θ1, θ2, σ}]
and Solve
returns {}
. Why? Should it be able to solve the equation?
Answer
Solve
works correctly, when returning {}
it means there are no solutions.
To demonstrate it let's rewrite your system:
system = Thread[{-((2 (4 θ0 + θ1))/σ^2) - (2 (4 θ0 + θ2))/σ^2,
-((4 θ0 + θ1)/(2 σ^2)),
-((4 θ0 + θ2)/(2 σ^2)),
-(2/σ) + (4 θ0 + θ1)^2/(2 σ^3) + (4 θ0 + θ2)^2/(2 σ^3)} ==
{0, 0, 0, 0}]
{-2 (4 θ0 + θ1)/σ^2 - 2 (4 θ0 + θ2)/σ^2 == 0,
-(4 θ0 + θ1)/(2 σ^2) == 0,
-(4 θ0 + θ2)/(2 σ^2) == 0,
-(2/σ) + (4 θ0 + θ1)^2/(2σ^3) + (4 θ0 + θ2)^2/(2 σ^3) == 0}
One can see from the second and third equations that we can define appropriate rules to simplify the system:
rules = { θ1 -> -4 θ0, θ2 -> -4 θ0};
Now we have:
system /. rules
{True, True, True, -2/σ == 0}
Thus the system cannot be satisfied because σ > 0
in your assumptions supplementing the system
.
Comments
Post a Comment