Closed skirpichev closed 3 years ago
Hi,
sorry for delay and thank you very much for the correction. You are absolutely right, the algorithm implemented in Rings follows Bernardin's work. I've made appropriate corrections to the docs.
Thanks!
With best wishes, Stanislav
I think, the reference is still wrong. The used in rings algorithm seems to be a modification of Musser's algorithm. The doctor thesis don't discuss this case in details and don't provide the algorithm itself. It references the Geddes et al book (Algorithms for Computer Algebra), where only univariate case provided and the mentioned above diplomarbeit.
This code claims it's Musser's algorithm (a multivariate version), but it seems, it isn't.
Ring's references page quote [GeCL92] and [Muss71]. But the first one has only an univariate version. The second one has multivariate version (algorithm V on page 54), but it doesn't look like the implemented code (which seems to be an equivalent version, though).
My guess it that the implemented version follows the L.Bernardin's work (Factorization of multivariate polynomials over finite fields. Diplomarbeit, ETH Zurich, 1993), but I can't verify this.