On Sat, Apr 28, 2012 at 12:42 AM, Tom Bachmann <e_mc...@web.de> wrote:
> On 28.04.2012 02:42, Aaron Meurer wrote:
>>
>> On Fri, Apr 27, 2012 at 2:46 PM, Tom Bachmann<e_mc...@web.de>  wrote:
>>>
>>> A quick update:
>>>
>>> I implemented a much better selection strategy for the groebner basis
>>> algorithm ("sugar cube"), implemented the "extended version" (with
>>> trasformation matrix) and improved the algorithm to compute module
>>> quotients
>>> to use only one groebner basis computation. This sped up the
>>> implementation
>>> of the "rational simplification algorithm 1" quite significantly.
>>>
>>> All of this is in my agca8 branch which has no pull request, yet. Testing
>>> is
>>> a bit difficult since trigsimp_groebner is not in master, yet.
>>
>>
>> So let's get it merged.  The issue I see is that we need to come up
>> with a good default/heuristics for the parameters (esp. polynomial and
>> hints).  Any thoughts on that?
>>
>
> Yes, that's definitely a usability issue. I'm not quite sure how to go about
> it.
>
>
>> And I guess it should be integrated with trigsimp() better.  How do
>> you think the existing algorithm should fit into things?  We'll also
>> want to integrate it with the recursive version, so that it can
>> simplify trig expressions that are nested in other trig expressions,
>> and also make it so it can simplify things like sin(x)**2 + cos(x)**2
>> + sqrt(sin(x)) (take out the non-rational function parts).
>>
>
> Yes, absolutely. I'll see what I can do.
>
>
>> Do you know of any other issues that should prevent it from being merged?
>>
>
> Nothing I can think of.
>
>
>> Regarding cancel() being slow, this might be the dense representation
>> again, though I think also the PRS algorithm used to compute the gcd
>> of multivariate polynomials occasionally hits a worse-case complexity.
>>
>
> Hm. Note that the denominator is 1, so really there should not be anything
> fancy happening wrt multivariate polynomial algorithms. What it *does* do is
> take out denominators, for which factorizations over the integers are
> necessary. Not sure how fast that should be (integer gcd is very fast, but
> naively I would expect the required number of gcd computations to blow up
> quickly).

So all it's doing is computing the lcm of the coefficients?  I don't
see how that would take so much time.  If this is true, then I suppose
an option could be added to cancel to disable this, as it's not really
necessary.

Aaron Meurer

>
>
>> Aaron Meurer
>>
>>>
>>>
>>> On 23.04.2012 22:02, Tom Bachmann wrote:
>>>>>
>>>>>
>>>>> The first algorithm in the paper where ratsimpmodprime was taken from
>>>>> should
>>>>> probably do quite well - as far as I can tell it shoud be about as fast
>>>>> as polynomial=True (maybe two or three times slower, or something of
>>>>> that order - not 100 times), and work quite well (it minimizes the
>>>>> maximum of the degrees of numerator and denominator). Will take a bit
>>>>> of
>>>>> work to implement, though (although it will nicely show of my
>>>>> commutative algebra module :D).
>>>>
>>>>
>>>>
>>>> I implemented this in agca8 (no pull request, yet). It works, but I
>>>> think its probably not very fast since my algorithms are not
>>>> particularly optimized. When we push the trigsimp PR I will see how it
>>>> goes with the other algorithm.
>>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups
>>> "sympy" group.
>>> To post to this group, send email to sympy@googlegroups.com.
>>> To unsubscribe from this group, send email to
>>> sympy+unsubscr...@googlegroups.com.
>>> For more options, visit this group at
>>> http://groups.google.com/group/sympy?hl=en.
>>>
>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" group.
> To post to this group, send email to sympy@googlegroups.com.
> To unsubscribe from this group, send email to
> sympy+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/sympy?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to sympy@googlegroups.com.
To unsubscribe from this group, send email to 
sympy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to