I don't have a solution for you, but I can explain why you cannot expect the desired output from Simplify[]
. Simplify[]
uses certain transformations to minimize the Simplify`SimplifyCount[]
of the transformed expression. The count for the actual output is 35 and for the desired output is 45. So, if the input is ever transformed to the desired output, the transformation would be rejected in favor of the actual output.
Assuming[
k1 \[Omega]1 + k1^4 +
3 l1^2 + \[Gamma] \[Omega]1^2 + \[Beta] \[Omega]1 l1 == 0 &&
k2 \[Omega]2 + k2^4 +
3 l2^2 + \[Gamma] \[Omega]2^2 + \[Beta] \[Omega]2 l2 == 0,
Simplify[(\[Omega]1 + \[Omega]2) (k1 + k2) + (k1 + k2)^4 +
3 (l1 + l2)^2 + \[Gamma] (\[Omega]1 + \[Omega]2)^2 + \[Beta] (\
\[Omega]1 + \[Omega]2) (l1 + l2)]] // Simplify`SimplifyCount
\[Beta] (\[Omega]1 l2 + \[Omega]2 l1) +
2 \[Gamma] \[Omega]1 \[Omega]2 + k1 (\[Omega]2 + 4 k2^3) +
k2 (\[Omega]1 + 4 k1^3) + 6 k1^2 k2^2 +
6 l1 l2 // Simplify`SimplifyCount
(*
35
45
*)
There are options that might possibly be used (ComplexityFunction
, TransformationFunctions
) to attempt to get the desired output, but I don't have ideas about how to do that successfully.