[GiNaC-devel] infinite loop in simplify_indexed()

PG CLARK P.G.Clark at Bradford.ac.uk
Wed May 18 00:33:17 CEST 2011


Actually I still really encourage you to keep working on this one. Now  
my main program with large expressions gets killed 5 or so minuets in  
for eating up all the ram. I'll have a look at this symm function and  
see if I can devise a better algorithm than bruit force for you guys.  
so it takes a part of an expression and applies every single possible  
permutation and adds the expressions or subtracting in some cases if  
asymmetric is called up then divides by the number of terms. Thus  
enforcing that the new expression with have the desired symmetry by  
virtue of its form yet be equivalent to the old expression if its  
assumed to have that symmetry. Presumably you nest these symm calls  
inside each other some how and construct even more complex sums to  
ensure compliance with more complex symmetry.

But what do you do with it next? add all the bits up and try to cancel  
things out treating the indexes as static labels? That would be a sure  
fire way to get a result. But is that all it's used for? If so there'd  
have been no need for it to be called for the test program where there  
was no symmetry to consider. Or is it also used to account for pseudo  
symmetry that may exist due to the equivalence of dummy indexes? So if  
dummy indexes in a term have the same dimension you treat them as a  
symmetric permutation and sum over all of them too?

There has to be a better way!

regards
peter clark

Quoting PG CLARK <P.G.Clark at Bradford.ac.uk>:

> I can confirm that I was able to successfully compile and run my  
> test code with this patch applied. took about 10 seconds to execute.
>
> Thanks for the help guys
>
> peter

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.




More information about the GiNaC-devel mailing list