This is now #23395 <https://trac.sagemath.org/ticket/23395>

El lunes, 10 de julio de 2017, 13:43:46 (UTC+2), mmarco escribió:
>
> If you used quo_rem, beware that Sage only uses Singular if the 
> coefficient ring is a field. So if you define your polynomials over QQ 
> instead of ZZ you will get timings similar to those of Singular. In the 
> case of ZZ, it will do so with some generic python implementation of 
> division.
>
> I guess we could rely on Singular also for the case of Integers.
>
> El lunes, 10 de julio de 2017, 12:48:55 (UTC+2), mmarco escribió:
>>
>> It is surprising the difference between singular and Sage, considering 
>> that Sage mostly relies on Singular for multivariate polynomial arithmetic. 
>> In the case of divisions, I suspect that it has to do with the fact that 
>> Sage treats division of polynomials as an operation in the fraction field, 
>> so it would construct the fraction, look for common factors in the 
>> numerator and denominator, and cancel them. That is probably not what other 
>> systems do.
>>
>> Which commands/instructions did you use in your benchmarks?
>>
>> El lunes, 10 de julio de 2017, 12:13:00 (UTC+2), Bill Hart escribió:
>>>
>>> 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