len(list) & ceil(log(4,2)) bugs
I was programming functions in Sage for Big numbers and found a few bugs.
I emailed Jason-sage and he suggested this forum.
I hope my contributions can help building a better system.
I run Sage 4.7.2 in a new Firefox offline via the Oracle Virtual Box for Fedora on an old Windows Vista, so that could have something to do with it.
BUG:
Suddenly the Python len(list) function wasn't working anymore on a simple [1,2,3]
array.
SOLUTION:
I repasted the same code on a new Worksheet and the len() function could be called again.
BUG:
I had output that was becoming very slow for mysterious reasons (a 2 to 3 seconds time lag) for some simple small values. I used t = cputime()
before and cputime(t)
after blocks of code and found the responsible...
CODE INSIDE FUNCTION:
def myfunction(num): # stops for up to 3 seconds if num == 4 t = cputime(); sad = ceil(log(num, 2)); print(cputime(t)); for m in range(2,12): myfunction(m);
The problem is the ceil()
around the log()
I believe, but why at 4 and why only when that 4 is a function argument (not a local variable or a hard-coded 4) that is originally part of a range array?
SOLUTION:
happy = ceil(log(num+0, 2));
These bugs seem to an innocent amateur like me that Sage is an unstable system.
However, I love the potential of this software!
Best Regards, GigaGerard
For (1) could you post a link to the entire original worksheet and the error message that it generated? If I had to bet, I'd say that you accidentally overrode the len function. As for (2), I can't reproduce it yet -- what Sage version were you using?
I agree with DSM about the len function; that's almost certainly what is happening.