리듀스,Reduce


computer_algebra_system, Portable_Standard_Lisp,PSL로 씌어짐.
상용이었으나 2008년 무료화 및 오픈소스 공개. BSD_license.
By https://en.wikipedia.org/wiki/Anthony_C._Hearn

행렬,matrix : mat()
리스트,list : {...} empty_list : {}
via manual ch4 lists

tmp from https://cafe.naver.com/kpope/1354
{
편미분하기
df(x^2 + y^2 + z^2, x);
2*x

df is the REDUCE operator to compute the derivative. In df(f,x), the operator df is to compute
the partial derivative of f with respect to b. Note that the x dependence of f should be declared in adavance.
If it is not the case, then REDUCE assumes that f is independent of x and gives 0.


The application of nested df operators realizes the computation of multiple derivatives.
df(df(f,x),y) computes
the second-order derivative $\displaystyle \frac{\partial^2 f}{\partial y\partial x}.$


depend x,v,t;
states that x is a function of v and t. This is to declare the implicit dependence of variables.
Because of this declaration,
df(x^2,t) is not 0 but $\displaystyle 2x\frac{dx}{dt}.$ Here, df(x,t) is not explicitly computed but the evaluation is delayed.


If you understand what the following is, then I hope you to explain what it is below!
Note that df(x,t,2)= $\displaystyle \frac{d^2x}{dt^2}$ is the second-order time derivative of x.
}