8
$\begingroup$

Are there symbolic calculation problems that humans have no trouble with that Mathematica can't solve or can't solve as well as humans?

I'm keeping the question focused on symbolic calculations because that's a type of problem that Mathematica solves. I'm not, for example, asking about word problems that are generally difficult for computers to solve. Also, I'm specifically not asking about problems that are also difficult for humans to solve or I would ask a question like this one:

How to solve complicated algebraic problem that Wolfram *Mathematica* can't solve?

Or this one:

Solving what Mathematica could not

Or this one:

How to approach a symbolic integral that Mathematica cannot solve?

$\endgroup$
3
  • 2
    $\begingroup$ Two-variable limits? Many of them are pretty easy ("figure out two paths leading to different limits" or "easily bound a term." Yet Mathematica routinely fails, because it's not really meant to do that..) See e.g. this. $\endgroup$ – Clement C. Sep 3 '17 at 12:20
  • $\begingroup$ You can probably program most things humans can do, but one thing that is not easily handled is symbolic manipulation of integrals and sums (linearity, additivity, by parts); example: FullSimplify[Integrate[f[x] + x, x] - Integrate[f[x], x]]. I'm not sure if it can do anything with the Dirichlet function Piecewise[{{1, x \[Element] Rationals}}]. $\endgroup$ – Michael E2 Sep 3 '17 at 14:45
  • 1
    $\begingroup$ I don't insist in "easily", and I don't own Mathematica. ;-) If you look around at this site, you'll notice that quite a few questions and answers(no names, obviously) were severely damaged by the urge to feed something into some not fully understood software, and... wondering, afterwards. $\endgroup$ – user436658 Sep 3 '17 at 15:20
3
$\begingroup$

CAS seems to be still not too advanced in solving some basic PDE problems that we can solve easily by hand. These below are some HW's problems, from textbooks, which can be solved by hand but not by Mathematica at this time. Using 11.1.1.

Mathematica graphics

ClearAll[u,t,k,x,L,a];
pde=D[u[x,t],t]==k D[u[x,t],{x,2}]-a u[x,t];
bc={u[0,t]==0,u[L,t]==0}
ic=u[x,0]==f[x];
NumericQ[L]=True;
sol=DSolve[{pde,bc,ic},u[x,t],{x,t}]

Mathematica graphics

Mathematica graphics

part (c)

ClearAll[u,t,k,x,L,H,g];
pde=D[u[x,y],{x,2}]+D[u[x,y],{y,2}]==0;
bc={Derivative[1,0][u][0,y]==0,u[L,y]==g[y],u[x,0]==0,u[x,H]==0};
sol=DSolve[{pde,bc},u[x,y],{x,y},Assumptions->{0<=x<=L&&0<=y<=H}]

Mathematica graphics

part (d)

ClearAll[u,t,k,x,L,H,g,f];
pde=D[u[x,y],{x,2}]+D[u[x,y],{y,2}]==0;
bc={u[0,y]==0,u[L,y]==0,Derivative[0,1][u][x,0]==0,u[x,H]==0};
sol=DSolve[{pde,bc},u[x,y],{x,y},Assumptions->{0<=x<=L&&0<=y<=H}]

Mathematica graphics

part (e)

ClearAll[u,t,k,x,L,H,g,f];
pde=D[u[x,y],{x,2}]+D[u[x,y],{y,2}]==0;
bc={u[0,y]==0,u[L,y]==0,u[x,0]-Derivative[0,1][u][x,0]==0,u[x,H]==f[x]};
sol=DSolve[{pde,bc},u[x,y],{x,y},Assumptions->{0<=x<=L&&0<=y<=H}]

Mathematica graphics

Mathematica graphics

part (c)

ClearAll[u,theta,r];
pde=D[u[r,theta],{r,2}]+1/r  D[u[r,theta],r]1/r^2 D[u[r,theta],{theta,2}]==0;
bc={ Derivative[1, 0][u][1, theta] == f[theta],u[r,Pi/2] == 0,u[r,0]==0};
sol=DSolve[{pde,bc},u[r,theta],{r,theta},Assumptions->{0<=r<=1&& 0<=theta<=Pi/2}]

Mathematica graphics

Mathematica graphics

part (b)

ClearAll[u,theta,r];
pde=D[u[r,theta],{r,2}]+1/r D[u[r,theta],r]1/r^2 D[u[r,theta],{theta,2}]==0;
bc={Derivative[1,0][u][a,theta]==0,u[b,theta]==g[theta]};
sol=DSolve[{pde,bc},u[r,theta],{r,theta},Assumptions->a<r<=b]

Mathematica graphics

Mathematica graphics

ClearAll[u,t,x,L,c];
pde=D[u[x,t],{t,2}]==c^2 D[u[x,t],{x,2}]
bc={u[0,t]==0,u[L,t]==0};
sol=DSolve[{pde,bc},u[x,t],{x,t},Assumptions->{L>0}]

Mathematica graphics

Mathematica graphics

ClearAll[u,t,x,L,c,f];
pde=D[u[x,t],{t,2}]==c^2 D[u[x,t],{x,2}]
bc={u[0,t]==0,Derivative[1,0][u][L,t]==0};
ic={Derivative[0,1][u][x,0]==0,u[x,0]==f[x]};
sol=DSolve[{pde,bc,ic},u[x,t],{x,t},Assumptions->{0<=x<=L}]

Mathematica graphics

Mathematica graphics

ClearAll[u,t,x,L,c,f,k];
pde=D[u[x,t],t]==k D[u[x,t],{x,2}]
bc={u[0,t]==u[2 L,t],Derivative[1,0][u][0,t]==Derivative[1,0][u][2 L,t]};
ic={u[x,0]==f[x]};
sol=DSolve[{pde,bc,ic},u[x,t],{x,t},Assumptions->{0<=x<=2 L}]

Mathematica graphics

Mathematica graphics

ClearAll[u,t,x,c];
pde=D[u[x,t],{t,2}]==c^2 D[u[x,t],{x,2}]
bc={u[0,t]==0,u[Pi,t]==0};
ic={u[x,0]==0,Derivative[0,1][u][x,0]==0};
sol=DSolve[{pde,bc,ic},u[x,t],{x,t}]

Mathematica graphics

Mathematica graphics

ClearAll[u,t,x,c,A,L];
pde=D[u[x,t],{t,2}]==c^2 D[u[x,t],{x,2}]+A x
bc={u[0,t]==0,u[L,t]==0};
ic={u[x,0]==0,Derivative[0,1][u][x,0]==0};

NumericQ[L]=True;(*this had no effect*)
sol=DSolve[{pde,bc,ic},u[x,t],{x,t}]

Mathematica graphics

Mathematica graphics

ClearAll[u,t,x,k,L,f];
pde=D[u[x,t],t]==k D[u[x,t],{x,2}];
bc={Derivative[1,0][u][0,t]+u[0,t]==0,Derivative[1,0][u][L,t]+u[L,t]==0};
ic=u[x,0]==f[x];
NumericQ[L]=True;(*adding this had no effect*)
sol=DSolve[{pde,bc,ic},u[x,t],{x,t},Assumptions->{t>=0,k>0,x>=0,x<=L}]

Mathematica graphics

Mathematica graphics

ClearAll[u,t,x,f];
pde=D[u[x,t],{t,1}]==D[u[x,t],{x,2}]
ic=u[x,0]==f[x]
bc={u[-1,t]==0,u[1,t]==0};
sol=DSolve[{pde,bc,ic},u[x,t],{x,t}]

Mathematica graphics

reference: pde_in_cas

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.