For every indexed modular factor selected by a successful
choosePrimeData? run, recover an irreducible integer divisor whose monic
mod-p image is divisible by that indexed factor.
Final assembly: the analyzable choosePrimeData? core = some primeData
branch of the integer-irreducible → mod-p representing-subset existence
and uniqueness statement.
Caller-facing wrapper for the witness-form
Hex.choosePrimeData? core = some primeData branch required by the
ModPSubsetPartitionHypotheses constructor. The explicit hchoose witness
excludes the none branch where the mod-p factorisation invariant is
unavailable.
Construct ModPSubsetPartitionHypotheses at the executable
Hex.choosePrimeData boundary.
Composes:
Hex.choosePrimeData?_fModP_eqforfModP_eq;trivialfor theTrueadmissible_prime/square_free_reductionhooks;factors_irreducible_of_choosePrimeData_of_somefor the per-factor irreducibility component;existsUnique_modPFactorSubset_of_choosePrimeDatafor both the existence and uniqueness components.
The hchoose hypothesis is an explicit choosePrimeData? = some witness,
so the none branch (where the mod-p factorisation invariant is
unavailable) is excluded; downstream callers discharge it from the same
choosePrimeData? chain that supplies the other partition fields.
A successful choosePrimeData? run forces a nonzero square-free part: the selected
prime is isGoodPrime, which keeps (modP p core) nonzero, whereas
modP p 0 = 0.
The Mathlib images of the selected modular factors are distinct: choosePrimeData?
guarantees factorsModP.toList.Nodup, and toMathlibPolynomial is injective.
The Mathlib images of the selected modular factors are monic: choosePrimeData?
guarantees each factorsModP entry is monic, preserved by toMathlibPolynomial.
modP cover. Every selected modular factor index lies in the
representing subset of some irreducible integer divisor of core.
Assembled from exists_factor_of_modPIndex (recover an irreducible divisor g
whose monic mod-p image the indexed factor divides), the subset-partition
existence projection (a representing subset S for g), and
mem_modPSubset_of_dvd (the divisibility forces i ∈ S).