Test of irreducibility of a binary polynomial

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
1
down vote

favorite
1












What criteria do we have to efficiently test if a binary polynomial $P(x)$ is irreducible?



Assume $P$ is given as a vector of $n+1$ bits $c_i$, with $c_0=c_n=1$, as $P(x)=displaystylesum_j=0^nc_j,x^j$ .




If $P(x)$ is irreducible, then $x^2^n-1bmod P=1$ (proof: the order of $x$ in the multiplicative group modulo $x$ divides the group order). This can give a quick and certain indication that a polynomial is not irreducible (the test runs in $O(n^3)$ binary operations using $O(n)$ bits of memory with classical algorithms).



Unfortunately, much like the Fermat pseudo-prime test to base 2 has pseudoprimes (OEIS A001567), there are pseudo-primitives to this test. The list to degree 9 inclusive is (not yet at OEIS but soon to become A316970):
$$beginarrayl
1+x+x^4+x^6\
1+x^2+x^5+x^6\
1+x+x^2+x^3+x^4+x^5+x^6\
1+x+x^2+x^4+x^8\
1+x+x^3+x^4+x^5+x^7+x^8\
1+x^4+x^6+x^7+x^8\
dotsendarray$$



How can we make a more selective test? Is there an analog to the strong pseudoprime test?



Update: found the related Rabin's test for polynomial irreducibility over $Bbb F_2$







share|cite|improve this question

















  • 1




    Isn't testing for non-trivial common divisors, $gcd(P(x),x^2^m-x)$, $m<deg P(x)$, a viable option? The first step in the Euclidean algorithm calls for the remainder of $x^2^m-x$ modulo $P(x)$. This can be done efficiently with square-and-multiply (and the result can be reused when you increment $m$). From that point on you only have "low" degree polynomials, so Euclid runs fast.
    – Jyrki Lahtonen
    Jul 19 at 7:43






  • 1




    Maybe this article has something helpful? On the number of irreducible polynomials with 0,1 coefficients
    – Sil
    Jul 22 at 15:54














up vote
1
down vote

favorite
1












What criteria do we have to efficiently test if a binary polynomial $P(x)$ is irreducible?



Assume $P$ is given as a vector of $n+1$ bits $c_i$, with $c_0=c_n=1$, as $P(x)=displaystylesum_j=0^nc_j,x^j$ .




If $P(x)$ is irreducible, then $x^2^n-1bmod P=1$ (proof: the order of $x$ in the multiplicative group modulo $x$ divides the group order). This can give a quick and certain indication that a polynomial is not irreducible (the test runs in $O(n^3)$ binary operations using $O(n)$ bits of memory with classical algorithms).



Unfortunately, much like the Fermat pseudo-prime test to base 2 has pseudoprimes (OEIS A001567), there are pseudo-primitives to this test. The list to degree 9 inclusive is (not yet at OEIS but soon to become A316970):
$$beginarrayl
1+x+x^4+x^6\
1+x^2+x^5+x^6\
1+x+x^2+x^3+x^4+x^5+x^6\
1+x+x^2+x^4+x^8\
1+x+x^3+x^4+x^5+x^7+x^8\
1+x^4+x^6+x^7+x^8\
dotsendarray$$



How can we make a more selective test? Is there an analog to the strong pseudoprime test?



Update: found the related Rabin's test for polynomial irreducibility over $Bbb F_2$







share|cite|improve this question

















  • 1




    Isn't testing for non-trivial common divisors, $gcd(P(x),x^2^m-x)$, $m<deg P(x)$, a viable option? The first step in the Euclidean algorithm calls for the remainder of $x^2^m-x$ modulo $P(x)$. This can be done efficiently with square-and-multiply (and the result can be reused when you increment $m$). From that point on you only have "low" degree polynomials, so Euclid runs fast.
    – Jyrki Lahtonen
    Jul 19 at 7:43






  • 1




    Maybe this article has something helpful? On the number of irreducible polynomials with 0,1 coefficients
    – Sil
    Jul 22 at 15:54












up vote
1
down vote

favorite
1









up vote
1
down vote

favorite
1






1





What criteria do we have to efficiently test if a binary polynomial $P(x)$ is irreducible?



Assume $P$ is given as a vector of $n+1$ bits $c_i$, with $c_0=c_n=1$, as $P(x)=displaystylesum_j=0^nc_j,x^j$ .




If $P(x)$ is irreducible, then $x^2^n-1bmod P=1$ (proof: the order of $x$ in the multiplicative group modulo $x$ divides the group order). This can give a quick and certain indication that a polynomial is not irreducible (the test runs in $O(n^3)$ binary operations using $O(n)$ bits of memory with classical algorithms).



Unfortunately, much like the Fermat pseudo-prime test to base 2 has pseudoprimes (OEIS A001567), there are pseudo-primitives to this test. The list to degree 9 inclusive is (not yet at OEIS but soon to become A316970):
$$beginarrayl
1+x+x^4+x^6\
1+x^2+x^5+x^6\
1+x+x^2+x^3+x^4+x^5+x^6\
1+x+x^2+x^4+x^8\
1+x+x^3+x^4+x^5+x^7+x^8\
1+x^4+x^6+x^7+x^8\
dotsendarray$$



How can we make a more selective test? Is there an analog to the strong pseudoprime test?



Update: found the related Rabin's test for polynomial irreducibility over $Bbb F_2$







share|cite|improve this question













What criteria do we have to efficiently test if a binary polynomial $P(x)$ is irreducible?



Assume $P$ is given as a vector of $n+1$ bits $c_i$, with $c_0=c_n=1$, as $P(x)=displaystylesum_j=0^nc_j,x^j$ .




If $P(x)$ is irreducible, then $x^2^n-1bmod P=1$ (proof: the order of $x$ in the multiplicative group modulo $x$ divides the group order). This can give a quick and certain indication that a polynomial is not irreducible (the test runs in $O(n^3)$ binary operations using $O(n)$ bits of memory with classical algorithms).



Unfortunately, much like the Fermat pseudo-prime test to base 2 has pseudoprimes (OEIS A001567), there are pseudo-primitives to this test. The list to degree 9 inclusive is (not yet at OEIS but soon to become A316970):
$$beginarrayl
1+x+x^4+x^6\
1+x^2+x^5+x^6\
1+x+x^2+x^3+x^4+x^5+x^6\
1+x+x^2+x^4+x^8\
1+x+x^3+x^4+x^5+x^7+x^8\
1+x^4+x^6+x^7+x^8\
dotsendarray$$



How can we make a more selective test? Is there an analog to the strong pseudoprime test?



Update: found the related Rabin's test for polynomial irreducibility over $Bbb F_2$









share|cite|improve this question












share|cite|improve this question




share|cite|improve this question








edited Jul 19 at 6:46
























asked Jul 18 at 12:43









fgrieu

534319




534319







  • 1




    Isn't testing for non-trivial common divisors, $gcd(P(x),x^2^m-x)$, $m<deg P(x)$, a viable option? The first step in the Euclidean algorithm calls for the remainder of $x^2^m-x$ modulo $P(x)$. This can be done efficiently with square-and-multiply (and the result can be reused when you increment $m$). From that point on you only have "low" degree polynomials, so Euclid runs fast.
    – Jyrki Lahtonen
    Jul 19 at 7:43






  • 1




    Maybe this article has something helpful? On the number of irreducible polynomials with 0,1 coefficients
    – Sil
    Jul 22 at 15:54












  • 1




    Isn't testing for non-trivial common divisors, $gcd(P(x),x^2^m-x)$, $m<deg P(x)$, a viable option? The first step in the Euclidean algorithm calls for the remainder of $x^2^m-x$ modulo $P(x)$. This can be done efficiently with square-and-multiply (and the result can be reused when you increment $m$). From that point on you only have "low" degree polynomials, so Euclid runs fast.
    – Jyrki Lahtonen
    Jul 19 at 7:43






  • 1




    Maybe this article has something helpful? On the number of irreducible polynomials with 0,1 coefficients
    – Sil
    Jul 22 at 15:54







1




1




Isn't testing for non-trivial common divisors, $gcd(P(x),x^2^m-x)$, $m<deg P(x)$, a viable option? The first step in the Euclidean algorithm calls for the remainder of $x^2^m-x$ modulo $P(x)$. This can be done efficiently with square-and-multiply (and the result can be reused when you increment $m$). From that point on you only have "low" degree polynomials, so Euclid runs fast.
– Jyrki Lahtonen
Jul 19 at 7:43




Isn't testing for non-trivial common divisors, $gcd(P(x),x^2^m-x)$, $m<deg P(x)$, a viable option? The first step in the Euclidean algorithm calls for the remainder of $x^2^m-x$ modulo $P(x)$. This can be done efficiently with square-and-multiply (and the result can be reused when you increment $m$). From that point on you only have "low" degree polynomials, so Euclid runs fast.
– Jyrki Lahtonen
Jul 19 at 7:43




1




1




Maybe this article has something helpful? On the number of irreducible polynomials with 0,1 coefficients
– Sil
Jul 22 at 15:54




Maybe this article has something helpful? On the number of irreducible polynomials with 0,1 coefficients
– Sil
Jul 22 at 15:54















active

oldest

votes











Your Answer




StackExchange.ifUsing("editor", function ()
return StackExchange.using("mathjaxEditing", function ()
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
);
);
, "mathjax-editing");

StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "69"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: false,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);








 

draft saved


draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f2855547%2ftest-of-irreducibility-of-a-binary-polynomial%23new-answer', 'question_page');

);

Post as a guest



































active

oldest

votes













active

oldest

votes









active

oldest

votes






active

oldest

votes










 

draft saved


draft discarded


























 


draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f2855547%2ftest-of-irreducibility-of-a-binary-polynomial%23new-answer', 'question_page');

);

Post as a guest













































































Comments

Popular posts from this blog

Color the edges and diagonals of a regular polygon

Relationship between determinant of matrix and determinant of adjoint?

What is the equation of a 3D cone with generalised tilt?