Hi, folks. I have this problem: $ ginsh ginsh - GiNaC Interactive Shell (GiNaC V1.7.2) __, _______ Copyright (C) 1999-2017 Johannes Gutenberg University Mainz, (__) * | Germany. This is free software with ABSOLUTELY NO WARRANTY. ._) i N a C | You are welcome to redistribute it under certain conditions. <-------------' For details type `warranty;'. Type ?? for a list of help topics. > factor((2*x-l)^2*(-1+6*x-l)*(-1+3*x-l)*(-2+4*x-l)*(1+4*x-l)*(4*x-l)*(2+4*x-l)); At this point ginsh either hangs (80% of cases), or gives the correct result (20% of cases). As you can see the expression is already factored, so a hang is pretty unexpected here. Note that if you'll drop two of the factors from that expression, GiNaC won't hang anymore. Here are the cumulative timings you'll typically see via 'perf top' during this hang: 91.54% libginac.so.6.0.2 [.] GiNaC::(anonymous namespace)::factor_multivariate 81.32% libginac.so.6.0.2 [.] GiNaC::(anonymous namespace)::hensel_multivar 79.67% libginac.so.6.0.2 [.] GiNaC::(anonymous namespace)::multivar_diophant 79.67% libginac.so.6.0.2 [.] GiNaC::(anonymous namespace)::univar_diophant 79.67% libginac.so.6.0.2 [.] GiNaC::(anonymous namespace)::multiterm_eea_lift 72.77% libginac.so.6.0.2 [.] GiNaC::(anonymous namespace)::factor_sqrfree 66.18% libginac.so.6.0.2 [.] GiNaC::(anonymous namespace)::eea_lift 64.28% libginac.so.6.0.2 [.] GiNaC::factor 26.99% libginac.so.6.0.2 [.] GiNaC::(anonymous namespace)::operator* 23.67% ginsh [.] yyparse 23.67% ginsh [.] f_factor 16.91% libginac.so.6.0.2 [.] cln::cl_MI::~cl_MI 15.26% libginac.so.6.0.2 [.] cln::cl_I::~cl_I 13.66% libginac.so.6.0.2 [.] cln::cl_MI::cl_MI 13.55% libginac.so.6.0.2 [.] cln::cl_RA::~cl_RA So, any ideas on the nature of this problem, and how to fix it?