pub fn ns_certificate_at_degree_gfp(
f: NsField,
num_vars: usize,
clauses: &[Vec<Lit>],
degree: usize,
) -> Option<NsCertificateGfp>Expand description
A degree-d certificate EXTRACTION over f: where ns_refutes_polys_gfp only decides span
membership, this runs the same incremental echelon with provenance — each basis row remembers the
combination of original generator products it is — and reads the certificate g_C = Σ λ_{C,m}·m off
the target’s reduction, exactly the technique of crate::modp::solve’s refutation combinations.
Returns None when no degree-d refutation exists. The extracted certificate is what the
GF(4) → GF(2) projection (project_gf4_certificate_to_gf2) operates on. Provenance rows cost
O(rank · products) memory — meant for the small-census scale, not the witness frontier.