Re: Re: Useful Dumb User Questions
- To: mathgroup at smc.vnet.net
- Subject: [mg9114] Re: [mg9080] Re: [mg8988] Useful Dumb User Questions
- From: Mark Evans <evans at gte.net>
- Date: Mon, 13 Oct 1997 23:33:26 -0400
- Organization: None
- Sender: owner-wri-mathgroup at wolfram.com
I think the Q idea of yours is fabulous. It might be a good way to debug code. I wonder if, as well, Mathematica should have an option on some of these functions that causes it to double-check its own answer. In school, you solve a differential equation, then the assignment may ask you to verify that your solution satisfies the equation. That verification is what I am talking about. It would be like you telling your computer to write a file to disk, then do a read-verify when it's finished, so that you are sure the computer wrote what it was told. It may be possible to use Trace[] to obtain a partial fulfillment of your Q idea, but I never use Trace[], because it is awkward and there are faster ways to debug code. Mark Olivier Gerard wrote: [snip] > First: formal or peer-reviewed certification of Mathematica algorithms > would certainly be a very strong point for WRI both as a public mark of > excellence and as a token of openness towards users and the research community. > Just quoting (but without bibliography) bunches of algorithm names as > it is done in the Book is not enough. There is certainly a middle > point to find between protecting industrial secrets and giving a fair > chance to researcher and users to give a valuable input to WRI in return. > This would also certainly help researchers recognize WRI achievements > and the help Mathematica has provided to so many people. [snip] > Third: It leads naturally to an interesting problem in Mathematica: > accessing the mathematical knowledge it contains. Large Black Boxes > like Integrate or Sum or DSolve are organized in a competitive spirit: > "Do everything you can to get a definitive answer but if you do not > succeed just leave it alone". > A computer algebra system or a human being cannot solve every mathematical > problem one can dream of. But a human learns a lot asking questions > and partial answers are informative. If we want to make Mathematica > a more pleasant system to use in many situations we must learn from > its (sometimes unsuccessful) tentatives to solve our question and > make it a way to share the scientific knowledge it contains which was > accumulated by generations of people for several thousands of years. > This is why I propose a new series of commands, something we could > call QSolve, QDSolve, QIntegrate, etc... (to mimic the current N > prefix of numerical versions) which would analyze the > input and give as many conclusions on its nature and qualitative > aspects as possible (Q is for Query or Question). > > A trivial example: > > QDSolve[ y''[x] + y'[x] + y[x] == f[x], y[x], x] > > would give something like: > > "This looks like a second-order linear differential equation. > The unknown function is y and the variable is x. > There is a 2-dimensional set of solutions. You can specify > a precise solution by giving 2 initial conditions. > I will not be able to integrate it completely for y[x] until I have > more information on f[x]. f[x] should be continuous." > > And much more... > I am very interested by your opinion on this proposal. [snip]