801{
802 ideal r;
808
811 else
816 {
818 {
821 }
822 else
824 }
826 {
828 {
835 }
838 }
845 {
847 }
848
850 {
852 PrintS(
"====================================\n");
855 else
857#ifdef KDEBUG
860#endif
862
863
864
865
866
867
868
869
870
871
872
874 {
875 ideal_list LL=(ideal_list)
omAlloc(
sizeof(*LL));
876 LL->d=r;
877#ifndef SING_NDEBUG
879#endif
880 LL->next=L;
881 L=LL;
882 }
884 }
885
887 {
888 ideal_list Lj=L->next;
889 ideal_list Lj_prev=L;
891 {
892 ideal_list Li=L;
893 while(Li!=Lj)
894 {
897 {
898#ifdef KDEBUG
900 {
901 Print(
"empty set L[%p] because:L[%p]\n",(
void*)Lj,(
void*)Li);
902 }
903#endif
904
905 Li=L;
907 {
908 Lj=Lj_prev;
909 if (Lj==L) Lj_prev=
NULL;
910 else
911 {
912 Lj_prev=L;
913 while(Lj_prev->next!=Lj) Lj_prev=Lj_prev->next;
914 }
915 }
917 }
918 else
919 {
920 Li=Li->next;
921 }
923 }
924 if (Lj!=
NULL) Lj=Lj->next;
925 }
926 }
927
928 if (toReset)
929 {
932 }
934 delete(strat);
935 strat=orgstrat;
937 {
938 orgstrat=strat->
next;
939 delete(strat);
940 strat=orgstrat;
941 }
943 return L;
944}
#define idDelete(H)
delete an ideal
BOOLEAN idIs0(ideal h)
returns true if h is the zero ideal
static BOOLEAN idHomModule(ideal m, ideal Q, intvec **w)
static BOOLEAN idHomIdeal(ideal id, ideal Q=NULL)
long kModDeg(poly p, const ring r)
void initBba(kStrategy strat)
poly kNF(ideal F, ideal Q, poly p, int syzComp, int lazyReduce)
ideal bbafac(ideal, ideal Q, intvec *, kStrategy strat, ideal_list FL)
void initBuchMora(ideal F, ideal Q, kStrategy strat)
void initBuchMoraPos(kStrategy strat)
void initBuchMoraCrit(kStrategy strat)
void pRestoreDegProcs(ring r, pFDegProc old_FDeg, pLDegProc old_lDeg)
void pSetDegProcs(ring r, pFDegProc new_FDeg, pLDegProc new_lDeg)
VAR ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
void PrintS(const char *s)
static BOOLEAN rField_has_simple_inverse(const ring r)
long id_RankFreeModule(ideal s, ring lmRing, ring tailRing)
return the maximal component number found in any polynomial in s
void idSkipZeroes(ideal ide)
gives an ideal/module the minimal possible size