On Thursday, May 30, 2013 10:23:27 AM UTC-7, Burcin Erocal wrote:
>
>
> I am going to respond to the comments below, since they come from a 
> senior member of the symbolic computation community. I would have 
> appreciated them a lot more if they were better informed, at least by 
> reading the original project proposal also posted on this list [1], and 
> intended as constructive criticism instead of just trolling. 
>
Sorry if it seems like trolling, but I was hoping to nudge people in the
direction of doing something useful.  I went back and read the posting
from the link below. 

>
> [1] https://groups.google.com/forum/#!topic/sage-devel/00_Is5q_0IY 
>
> <snip>
>
 

> The point of the benchmark framework is to be able to repeat the 
> measurements when the backends change, on different platforms, etc. 
>
> See explanation of item 2 from [1]. 
>
Yes, but having just read the proposal, I get the feeling that upon 
repeating
the measurements, there would be a need to re hand-code links.  This
would in any case be pretty delicate.  For example some implementations
are fast  or accurate in one part of the domain but slow  or inaccurate in 
others.
People building upon (say) Bessel_J  may be unhappy when you change.
 

>
> > 2. To determine over an arbitrary span of floats which program is 
> > most accurate and fastest requires a fairly 
> > sophisticated set of tests.  For example even a function like sine 
> > can be delicate to evaluate, say at a high integer 
> > multiple of pi.  And how do the functions respond at singularities? 
> > Just generating random arguments is 
> > not sensible.   
>
> Again, see explanation of item 2 from [1]. 
>
 
I repeat. Generating random arguments is not sensible.  (Incidentally,
you will still need to be able to generate the correct answers for these
functions. This seems to have been overlooked.
 What do you do if your benchmark test shows slightly
different answers from the systems?) 
 My point is that this is poorly formulated as a question, and the proposed 
answer is also
poorly thought out.


> > Oh, for some programs you may need to figure out what to do with 
> > unbounded inputs (integers, bigfloats). 
>
> How is this related? We already have interfaces to the packages 
> mentioned above to handle conversion issues. 
>

Some routines in some systems will handle arguments that are unacceptably
large for routines in some other systems.
 

>
> > >    1. 
> > >    2. create symbolic wrappers for all the special functions that 
> > > can be evaluated numerically by a package included in Sage, 
> > >     
> > >   
> > Um, I'm not sure what is required here, but maybe just bookkeeping?? 
>
> Yes, these are simple wrappers in Sage. Somebody needs to write them. 
>
> > >    1. 
> > >    2. create a data structure for generalized hypergeometric 
> > > functions and extend the symbolic wrappers to obtain 
> > > representations in terms of generalized hypergeometric functions 
> > > when possible, 
> > > huh?  Wouldn't it always be possible to express generalized 
> > > hypergeometric 
> > functions as generalized hypergeometric functions? 
>
> For example, we want the software to convert bessel_j(2,x) to 
> 1/8*x^2*hypergeometric_pfq(0, 1, 3, -1/4*x^2). 
>
> > If you mean to simplify them, whose algorithm are you going to use? 
> > Or did you not know about such things? 
>
> The goal is to provide a basis to implement algorithms used in DDMF [2]. 
>
> [2] http://ddmf.msr-inria.inria.fr/ 
>
> I'm not sure that this is sensible either.  If you wanted to implement 
Gfun  (the
other reference to the proposal) that might make more sense.

The winner is to be able to convert 1/8*x^2*H_pfq(...)  to Bessel_J().  
Rewriting everything as hypergeometric functions is not hard and not
interesting.  See however work on Meijer G functions for integration.
This is however something that could probably be done in Maxima/Lisp,
if it is not already there.  And I think that some of it is in specfun 
/hypgeo.


RJF 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to