Base- polynomial: with digits
ProvedGNFS.baseMPolynomial_specinteger-factorizationnumber-theory
Let be natural numbers with , and let be the base- polynomial of , whose coefficients are the base- digits of . Then:
- ;
- every coefficient satisfies (coefficients beyond the degree are );
- is a root of modulo , i.e. .
This is the basic polynomial-selection step of GNFS, paired with .
Preamble
import Mathlib import Definitions.Def_GNFS_defs open Polynomial IntermediateField
Formal statement
namespace GNFS
theorem baseMPolynomial_spec (n m : ℕ) (hm : 2 ≤ m) :
(baseMPolynomial n m).eval (m : ℤ) = n ∧
(∀ i, 0 ≤ (baseMPolynomial n m).coeff i ∧ (baseMPolynomial n m).coeff i < m) ∧
((baseMPolynomial n m).map (Int.castRingHom (ZMod n))).IsRoot (m : ZMod n) := by sorry
end GNFSSource
Wikipedia, "General number field sieve" (revision oldid=1377718368, https://en.wikipedia.org/w/index.php?title=General_number_field_sieve&oldid=1377718368), section 'Method — Polynomial choice'
Human review
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.