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

Function onestep

Singular/dyn_modules/Order/nforder.cpp:608–628  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

606
607#ifdef HAVE_RINGS
608nforder *onestep(nforder *o, number p, coeffs c) {
609 // Berechne F_p-Basis von I_p/pI_p
610 bigintmat *basis;
611 basis = radicalmodpbase(o, p, c);
612
613
614 // Bestimme Basis vom Ring der Multiplikatoren (speicher diese in basis), und Nenner davon (in divisor)
615 number divisor = multring(basis, o, p);
616 // Erzeuge neue Ordnung, der o zu Grunde liegt, mit Basis basis und Nenner divisor
617 if (basis->isOne() && n_IsOne(divisor, c)) {
618 delete basis;
619 n_Delete(&divisor, c);
620 return o;
621 }
622
623 nforder *no = new nforder(o, basis, divisor, c);
624
625 delete basis;
626 n_Delete(&divisor, c);
627 return no;
628}
629#endif
630
631#ifdef HAVE_RINGS

Callers 2

oneStepFunction · 0.85
pmaximalFunction · 0.85

Calls 5

radicalmodpbaseFunction · 0.85
multringFunction · 0.85
n_IsOneFunction · 0.85
n_DeleteFunction · 0.85
isOneMethod · 0.45

Tested by

no test coverage detected