-- -- This file has been auto-generated by egison-translator. -- declare symbol α, β, γ, c1, c2, p def C : Matrix MathExpr := [|[|α, 0, 0|], [|0, β, 0|], [|0, 0, γ|]|] def I (C: Matrix MathExpr) : MathExpr := trace C def II (C: Matrix MathExpr) : MathExpr := (trace C ^ 2 - trace (M.* C C)) / 2 def III (C: Matrix MathExpr) : MathExpr := M.det C def I' (C: Matrix MathExpr) : MathExpr := I C / III C ^ (1 / 3) def II' (C: Matrix MathExpr) : MathExpr := II C / III C ^ (2 / 3) def W : MathExpr := c1 * (I' C - 3) + c2 * (II' C - 3) def S_i_j : Matrix MathExpr := 2 * ∂/∂ W C~i~j - p * (M.inverse C)_i_j substitute [(α, 1), (β, 1), (γ, 1)] S_#_#