Если вы просто проведете линию
Solve[{x + y == 27, x y == 180}, {x, y}]
тогда все работает нормально, и вы найдете {{x -> 12, y -> 15}, {x -> 15, y -> 12}}
.
Вы видите ошибку, потому что где-то у вас есть такое утверждение
In[1]:= x + y = 27
During evaluation of In[1]:= Set::write: Tag Plus in x+y is Protected. >>
Out[1]= 27
Где глава x + y
- Plus
который является защищенным символом и не может быть наивно задан новыми определениями. Возможно, у вас есть какое-то странное определение, скрывающееся где-то, в этом случае проще всего перезапустить ядро и повторить попытку.
Мораль этой истории в том, что =
(Set) - это не то же самое, что ==
(Equal).