Post a reply
Username:
Note:If not registered, provide any username. For more comfort, register here.
Subject:
Message body:
Enter your message here, it may contain no more than 60000 characters. 

Smilies
:D :) :( :o :shock: :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:
Font size:
Font colour
#000000 #000040 #000080 #0000BF #0000FF
#004000 #004040 #004080 #0040BF #0040FF
#008000 #008040 #008080 #0080BF #0080FF
#00BF00 #00BF40 #00BF80 #00BFBF #00BFFF
#00FF00 #00FF40 #00FF80 #00FFBF #00FFFF
#400000 #400040 #400080 #4000BF #4000FF
#404000 #404040 #404080 #4040BF #4040FF
#408000 #408040 #408080 #4080BF #4080FF
#40BF00 #40BF40 #40BF80 #40BFBF #40BFFF
#40FF00 #40FF40 #40FF80 #40FFBF #40FFFF
#800000 #800040 #800080 #8000BF #8000FF
#804000 #804040 #804080 #8040BF #8040FF
#808000 #808040 #808080 #8080BF #8080FF
#80BF00 #80BF40 #80BF80 #80BFBF #80BFFF
#80FF00 #80FF40 #80FF80 #80FFBF #80FFFF
#BF0000 #BF0040 #BF0080 #BF00BF #BF00FF
#BF4000 #BF4040 #BF4080 #BF40BF #BF40FF
#BF8000 #BF8040 #BF8080 #BF80BF #BF80FF
#BFBF00 #BFBF40 #BFBF80 #BFBFBF #BFBFFF
#BFFF00 #BFFF40 #BFFF80 #BFFFBF #BFFFFF
#FF0000 #FF0040 #FF0080 #FF00BF #FF00FF
#FF4000 #FF4040 #FF4080 #FF40BF #FF40FF
#FF8000 #FF8040 #FF8080 #FF80BF #FF80FF
#FFBF00 #FFBF40 #FFBF80 #FFBFBF #FFBFFF
#FFFF00 #FFFF40 #FFFF80 #FFFFBF #FFFFFF
Options:
BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON
Disable BBCode
Disable smilies
Do not automatically parse URLs
Confirmation of post
To prevent automated posts the board requires you to enter a confirmation code. The code is displayed in the image you should see below. If you are visually impaired or cannot otherwise read this code please contact the %sBoard Administrator%s.
Confirmation code:
Enter the code exactly as it appears. All letters are case insensitive, there is no zero.
   

Topic review - Testing divisibility of multivariate polynomials
Author Message
  Post subject:  Re: Testing divisibility of multivariate polynomials  Reply with quote
Thank you very much. I implemented a method `divides` for multivariate polynomials in Sage based on kNF. See ticket #20588.
Post Posted: Wed May 11, 2016 2:59 pm
  Post subject:  Re: Testing divisibility of multivariate polynomials  Reply with quote
for version 3-1-7:
reduce is internally
Code:
poly kNF (ideal F, ideal Q, poly p,int syzComp=0, int lazyReduce=0);

from kernel/kstd1.cc, i.e. one have to use (the additional argument 1 maps to lazyReduce)
Code:
result=kNF(<f converted to ideal>,NULL,p,0,1)

Analog for version 4-0-3: kNF is now in kernel/GBEngine/kstd1.cc
Post Posted: Tue May 10, 2016 10:19 am
  Post subject:  Re: Testing divisibility of multivariate polynomials  Reply with quote
Thanks for the pointer. I have trouble to find the source code corresponding to this function, do you have any hint?
Post Posted: Mon May 09, 2016 4:13 pm
  Post subject:  Re: Testing divisibility of multivariate polynomials  Reply with quote
see
http://www.singular.uni-kl.de/Manual/4-0-3/sing_383.htm.
For such tests use
Code:
reduce(p,f,1)

which computes only the leading term of p%f completely,
usually much faster if only the divisibility test is needed.
Post Posted: Fri May 06, 2016 12:38 pm
  Post subject:  Testing divisibility of multivariate polynomials  Reply with quote
Is there a function to test whether a (multivariate) polynomial f divides another polynomial p? Of course, one can compute the reduction of p modulo f. As it happens, for many variables and fairly sparse p (and quite simple f, say of total degree 1 for instance), computing the reduction is pretty fast when f does divide p, but may take a very long time if f does not divide p. (I have the impression that this is due to the fact that p%f can be very dense in such case.) Actually, in case f does not divide p, one can often give the answer very early (as soon as one begins to "fill" the remainder). So my question: Is there a function in Singular which implements this (fairly trivial and naive) optimization?

P.S.: I use Singular through Sage. In Sage, the method f.divides(p) simply calls p%f and tests it for zero. If a function as I ask for exists in Singular, I'll do my best to use it in the method "divides" of Sage.
Post Posted: Wed May 04, 2016 3:55 pm


It is currently Fri May 13, 2022 10:56 am
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group