[Date Index] [Thread Index] [Author Index]
Re: Re: FullSimplify Hang?
On 15 Nov 2005, at 18:16, Renan wrote: > On 11/14/05, Igor Touzov <igor at nc.rr.com> wrote: >> I run FullSimplify on expression with LeafCount of 89281. It runs >> for 80 >> hours already , and I have no idea if it ever going to complete. >> >> Is there any way to estimate its progress % ? > > I would like also to see this feature in Mathematica. > Sometimes, it is rather annoying to not have an "estimated time", esp. > considering that many other software give at least a progress bar. > >> It is possible it just in some king of dead loop? > > I don't think so; I believe the Mathematica kernel is smart enough to > detect this. > >> It would be nice for Mathematica to have ability to indicate current >> progress or possibility to interrupt current simplification and >> obtain >> intermediate result. > > s > -- I can't even imagine how this could possibly be done. This kind of estimation is only possible if the process that is being estimated is in some sense uniform. In this case the past can be a rough guide to the present. However, FullSimplify or Simplify apply a number of entirely unrelated transformation in turn; how could the time taken by any of those tried up to a given time be any guide to the time that the other ones will take? Even if just only one transformation is left, it could be the one that is going to take longer than all the ones that have been tried so far put together. Actually, the issue of "hanging" is spurious one, since FullSimplify could easily take longer than your computer will last without ever "hanging". What I would like is something else that should not be impossible. At present we can use TimeConstrained to restrict the time taken by FullSimplify, but if the simplification fails to be accomplished in specified time there is no way, as far as I know, to see the "best result obtained so far". One can do that with functions like Nest etc, but not with FullSimplify. Since, I think, Simplify must at each moment in time store the simplest answer obtained so far, it should not be too much to ask that this answer be returned when the time specified in TimeConstrained is reached. (If this is possible to do now I would love to hear about it!). Andrzej Kozlowski