Hi,

Le vendredi 1 mai 2015 17:23:55 UTC+2, Nils Bruin a écrit :
>
> On Friday, May 1, 2015 at 2:00:11 AM UTC-7, Eric Gourgoulhon wrote:
>  
>
>> Thanks for your answer. There is no predefined 'H' function in Sage, so 
>> do you mean a nameclash with a predefined function 'H' in Pynac ? Which 
>> function is it ? It seems to be (x,y) |--> - x ln(1-xy), but I don't see 
>> why this function is special and would deserve a predefined name.
>>
>
> Most probably these (from 
> http://www.ginac.de/tutorial/#Built_002din-functions ):
>
> G(a, y)multiple polylogarithm G(a, s, y)multiple polylogarithm with 
> explicit signs for the imaginary parts S(n, p, x)Nielsen’s generalized 
> polylogarithm H(m, x)harmonic polylogarithm 
>

Thanks for your answer and the link! This is clearly the source of the 
problem.
 

> This is clearly a problem in sage: we're not exposing these polylogs under 
> those names at all, and even for "sin" we do seem to support having new, 
> symbolic, user functions with that name (which will collide as soon as you 
> step into libmaxima or anything else that has to communicate function 
> identifiers by names in a flat namespace). The fact that we don't in 
> pickling is clearly a problem.
>


A workaround until something better could be to modify Sage's function(s, 
*args, **kwds) to generate an error (e.g. "this name is reserved") as soon 
as 
- s = 'sin' or any predefined Sage function
- s='G' and len(args)=2 or 3
- s='H' and len(args)=2
- s='S' and len(args)=3
etc.
But this might be tedious, given the large number of functions in Sage...

Eric. 

-- 
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.
For more options, visit https://groups.google.com/d/optout.

Reply via email to