This function will run the given function only under the given configs!
It does this by first reading the global config and checking whether
that config matches the expected configs which are passed in, then
The primary finite field used within a GKR circuit, as well as within
sumcheck. Note that the field’s size should be large enough such that
depth(C) * deg(C) / |F| bits of computational soundness is considered
secure, where depth(C) is the depth of the GKR circuit and deg(C) is
the maximum degree of any layerwise polynomial relationship.
A field which is FFT-friendly under Halo2’s EvaluationDomain-based algorithm.
[WithSmallOrderMulGroup] – see associated trait documentation for more
details. Our use-case is specifically for Halo2’s FFT implementation, which
uses Halo2’s EvaluationDomain to compute extended evaluations of a
power-of-two degree polynomial.