The reason that I required the quotient as well in the divisibility 
benchmark was that Magma does the n = 20 dense case in 0.15s otherwise, and 
I don't believe it is possible to do it that fast if you aren't doing it 
heuristically, as I explained in the blog post. Therefore, all the systems 
timed must return the quotient if the division is exact (which it is in the 
benchmark examples, since that is the hard case), so that Magma can't 
possibly "cheat".

As mentioned, if the various systems don't provide such a function, I 
substituted divrem, since it is possible to look at the remainder to see if 
it was divisible, and then take the quotient as required by the benchmark.

It is really hard to benchmark a bunch of systems against one another. When 
I first timed Giac, I wasn't aware of a bunch of special parameters you can 
pass to the Giac functions which make them run much faster. And basically, 
there aren't many functions that all the systems happen to implement with 
the same semantics, so I have to simulate what a user would do if that is 
the semantics they want. I didn't do it to make Sage look bad, honest!

On Monday, 10 July 2017 12:05:28 UTC+2, Bill Hart wrote:
>
> 7.6
>
> On Monday, 10 July 2017 11:56:32 UTC+2, vdelecroix wrote:
>>
>> On 10/07/2017 09:34, Ralf Stephan wrote: 
>> > On Monday, July 10, 2017 at 8:55:23 AM UTC+2, vdelecroix wrote: 
>> >> 
>> >> He was certainly not using the awfully slow symbolic ring 
>> >> 
>> > 
>> > Then his slow timings for e.g. "Divisibility test with quotient 
>> (sparse)" 
>> > needs a different explanation. 
>>
>> Sage version? 
>>
>>

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

Reply via email to