Research Article

Sieve Method for Polynomial Linear Equivalence

Algorithm 4

The sieve algorithm for PLE: SieAlg .
(1)   Randomly choose n linearly independent vectors . Store
the n row vectors as an invertible n-dimensional matrix X.
(2)   for     do
(3)     Compute and the pre-image set   .
(4)     Store the set .
(5)   end for  //Algorithm Initialization.
(6)   for     do
(7)     Run MulSieve and assign the output to .
(8)   end for  //Multiplicative Sieve.
(9)   for     do
(10)   for     do
(11)   Run AddSieve and assign the output to
   and .
(12)   end for
(13) end for  //Additive Sieve.
(14) for     do
(15)   Run DifSieve and assign the output to .
(16) end for  //Differential Sieve.
(17) for     do
(18)   Randomly choose a vector from and assign the vector to .
(19) end for
(20) Denote the set of vectors   as a matrix Y.
(21) Compute .
(22) if     then
(23)   return  M.
(24) else
(25)   return   .
(26) end if