Welcome to Cadabra Q&A, where you can ask questions and receive answers from other members of the community.
0 votes

Hello,

First of all thank you for this wonderful software! I have been using it for a few months now to compute analytically some expressions in nuclear physics, and I recently upgraded to the Dec10 version as collect_factors could finally act on objects with symbol indices.

However, the same code I have been using with an older version (Nov17) does not work any more. I narrowed it down to the grouping of a number of substitution rules together. As an example,

rules:={a->b, a->b, ..., a->b};

for a large enough number of rules (between 128 and 256) makes the kernel unresponsive.

For the actual code I have been using, the number is smaller as the rules are more complicated. Also, if started from the terminal, it shows the output:

recursive end recursive end recursive end recursive end recursive end recursive end recursive end recursive end recursive end recursive end recursive end recursive end recursive end * cadabra-server: /home/virgil/cadabra2/core/DisplayTeX.cc:502: void cadabra::DisplayTeX::print_sumlike(std::ostream&, tree::iterator): Assertion `it->multiplier==1' failed.kquote

If it helps, I am using Cadabra on Ubuntu 18.04. Also, please let me know if you need my actual code for further clarification.

Thank you very much!

in Bug reports by

1 Answer

+1 vote

Those output lines suggest that you used a version which wasn't really meant for production. I am assuming you compiled from source? Can you try pulling the latest version from github, building that and then trying again?

If that does not solve the problem, please email your notebook to info@cadabra.science and I'll have a look. If it worked before it is probably something small.

by (82.6k points)

Thanks for the quick answer! Yes, I did compile from source. The latest version (Dec13) solved the issue!

Thank you!

...