Если в Mathematica определить функцию, в которой используются символьные вычисления производной, градиента и подобных операций то при использовании отложенного присваивания такой код выдает ошибку при вычислении первой функции, график второй функции строит правильно
Код:
fun1[x_] := D[Sin[x] + x, x]
fun2[x_] := Cos[x] - x
Plot[{fun1[x], fun2[x]}, {x, 0, 10}]
Если заменить отложенное присваивание на обычное присваивание то все работает
Код:
fun1[x_] = D[Sin[x] + x, x]
fun2[x_] := Cos[x] - x
Plot[{fun1[x], fun2[x]}, {x, 0, 10}]
Почему так происходит, есть ли смысл в использовании отложенного присваивания при определении функций, и если есть, то как быть в таких случаях?