def __getattr__(self, name): """ EXAMPLE:: sage: groebner = sage.libs.singular.ff.groebner sage: groebner groebner (singular function) sage: primdecSY = sage.libs.singular.ff.primdec__lib.primdecSY sage: primdecSY primdecSY (singular function) """ if name.startswith("_"): raise AttributeError( "Singular Function Factory has no attribute '%s'" % name) try: return singular_function(name) except NameError: if name.endswith("__lib"): name = name[:-5] lib(name + ".lib") return SingularFunctionFactory() else: raise NameError("function or package '%s' unknown." % (name))
def __getattr__(self, name): """ EXAMPLE:: sage: import sage.libs.singular.function_factory sage: groebner = sage.libs.singular.function_factory.ff.groebner sage: groebner groebner (singular function) sage: import sage.libs.singular.function_factory sage: primdecSY = sage.libs.singular.function_factory.ff.primdec__lib.primdecSY sage: primdecSY primdecSY (singular function) """ if name.startswith("_"): raise AttributeError("Singular Function Factory has no attribute '%s'" % name) try: return singular_function(name) except NameError: if name.endswith("__lib"): name = name[:-5] lib(name + ".lib") return SingularFunctionFactory() else: raise NameError("function or package '%s' unknown." % (name))
def radical_singular(I): r""" Return the radical of this ideal. INPUT: - ``I`` -- an ideal of a polynomial ring over `\mathbb{Z}` OUTPUT: the radical of `I` """ singular_lib('primdecint.lib') return singular_function('radicalZ')(I)
def minimal_ass_primes_singular(I): r""" Return the list of minimal associated primes of an ideal. INPUT: - ``I`` -- an ideal of a polynomial ring over `\mathbb{Z}` OUTPUT: the list of all minimal associated prime ideals of `I` """ singular_lib('primdecint.lib') R = I.ring() return [R.ideal(G) for G in singular_function('minAssZ')(I)]
def horizontal_minimal_ass_primes(I): r""" Return the list of horizontal minimal associated primes of I. INPUT: - ``I`` -- an ideal of a polynomial ring over `\mathbb{Z}` OUTPUT: the list of all horizontal minimal associated prime ideals of `I`. Here a prime ideal `P` of a polynomial ring `R = \mathbb{Z}[x_1,\ldots,x_n]` is called *horizontal* if `P\cap\mathbb{Z}=(0)`. """ singular_lib('primdecint.lib') R = I.ring() P_list = [R.ideal(G) for G in singular_function('minAssZ')(I)] return [P for P in P_list if P.elimination_ideal(R.gens()).is_zero()]
gcd( self.brackets_dict[(f, g)], self.brackets_dict[(f, h)], )).degree() == 0) for a in l: return a return None def weight_of_basis(self): f, g, _ = self.relatively_prime_3forms_maybe() c = self.brackets_dict[(f, g)] c_deg = degree(c) return (f[1] - c_deg, g[1] - c_deg) smodule = singular_function("module") sideal = singular_function("ideal") squotient = singular_function("quotient") smres = singular_function("mres") slist = singular_function("list") sintersect = singular_function("intersect") ssyz = singular_function("syz") @cached_function def load_min_resol_prim(i, parity): fname = join(DATA_DIR, "str%s_%s_cand.sobj" % (i, parity)) return load(fname) @cached_function
M.add_multiple_of_row(u, i, -b) #print "\nafter: \n", M Mt = M[:, -MI.nrows():] Mres = M[:, :M0.ncols()] assert (Mt * (apply_swap(M0, swapped)) == Mres) return Mres, Mt, tuple(swapped) from sage.libs.singular.function import singular_function from sage.libs.singular.function import lib as singular_lib singular_lib('primdecint.lib') primdecZ = singular_function('primdecZ') radicalZ = singular_function('radicalZ') def primdec_ZZ(I): R = I.ring() P = primdecZ(I) V = [R.ideal(X[0]) for X in P] return V def radical_ZZ(I): R = I.ring() r = radicalZ(I) return R.ideal(r)
M.set_row_to_multiple_of_row(u, u, a) M.add_multiple_of_row(u,i,-b) #print "\nafter: \n", M Mt = M[:,- MI.nrows():] Mres = M[:,:M0.ncols()] assert(Mt*(apply_swap(M0,swapped)) == Mres) return Mres,Mt,tuple(swapped) from sage.libs.singular.function import singular_function from sage.libs.singular.function import lib as singular_lib singular_lib('primdecint.lib') primdecZ = singular_function('primdecZ') radicalZ = singular_function('radicalZ') def primdec_ZZ(I): R = I.ring() P = primdecZ(I) V = [ R.ideal(X[0]) for X in P] return V def radical_ZZ(I): R = I.ring() r = radicalZ(I) return R.ideal(r) class FoundAttack(Exception): def __init__(self, value):