MCPcopy Create free account
hub / github.com/Singular/Singular / prune

Function prune

factory/variable.cc:261–289  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

259}
260
261void prune (Variable& alpha)
262{
263 if (alpha.level()==LEVELBASE) return;
264 int last_var=-alpha.level();
265 if ((last_var <= 0)||(var_names_ext==NULL)) return;
266 int i, n = strlen( var_names_ext );
267 ASSERT (n+1 >= last_var, "wrong variable");
268 if (last_var == 1)
269 {
270 delete [] var_names_ext;
271 delete [] algextensions;
272 var_names_ext= 0;
273 algextensions= 0;
274 alpha= Variable();
275 return;
276 }
277 char * newvarnames = new char [last_var+1];
278 for ( i = 0; i < last_var; i++ )
279 newvarnames[i] = var_names_ext[i];
280 newvarnames[last_var] = 0;
281 delete [] var_names_ext;
282 var_names_ext = newvarnames;
283 ext_entry * newalgext = new ext_entry [last_var];
284 for ( i = 0; i < last_var; i++ )
285 newalgext[i] = algextensions[i];
286 delete [] algextensions;
287 algextensions = newalgext;
288 alpha= Variable();
289}
290
291void prune1 (const Variable& alpha)
292{

Callers 15

modGCDFpFunction · 0.85
sparseGCDFpFunction · 0.85
EZGCD_PFunction · 0.85
resultantFpFunction · 0.85
simpleExtensionFunction · 0.85
TragerFunction · 0.85
facAlgFunc2Function · 0.85
uniFactorizerFunction · 0.85
extBiFactorizeFunction · 0.85
GF2FalphaRepFunction · 0.85
extFactorizeFunction · 0.85
singclap_gcd_rFunction · 0.85

Calls 2

VariableFunction · 0.85
levelMethod · 0.45

Tested by

no test coverage detected