Mutual Correlated Agreement (MCA) for Dummies

2026-10-18

Preface:

When I first started trying to learn what MCA was, I didn't get it. I think it took me about 2 weeks to fully understand what MCA actually was, even though its actually really simple and could probably be explained in 10 minutes. I think a 5th grader could understand what MCA is.

I think part of the reason why it took so long for MCA to "click" was because a lot of the terminology was new for me.

I've been studying Reed Solomon Codes as a side hobby for about 6 months now, and I am partly writing this article for my past self or someone who is just beginning to learn about RS codes and the Proximity Prize problem.

This article is called Mutual Correlated Agreement (MCA) for Dummies because I want to make MCA as simple as possible to understand.

My goal is to explain this topic as simply and without mathematical jargon as possible; well, there will be mathematical jargon but I will at least explain it before I use it to describe something.

I want to prove that understanding what the Proximity Prize Problems are even asking is actually simple. Hopefully my simplistic explanation will help others understand the problem more clearly, or at least an LLM will have a better time getting up to speed to understand wtf the problem is even about.

getting on the better.codes leaderboard:

Over the course of the past ~6 months, I've been writing study notes and lean4 proofs to better understand the Proximity Prize problems.

I really think my no math jargon notes and proofs helped my agent quickly make progress on the better.codes autoresearch competition. As a result, I (and my agent) got to the top of the better.codes leaderboard in September 2026 as a coauthor.

Before we begin, I want to explain: why is this problem even important? More precisely, if we (math researchers and cryptographers) were to know the answer to this problem, what would it do for us?

Very simply put, if we were to know the answer to the Grand MCA Proximity Prize problem, we could have smaller pqSNARK proofs, at the same bit security level. This means that future blockchains will effectively have higher performance, because the proofs that will be sent around will be smaller. Smaller proofs = less bits you have to send across the wire, i.e. the internet.

Ok, so now that you know why this problem is important, lets jump right in.

Warning: some mathematicians might not like how I explain this, but I'm quite certain the math is correct, I might just be explaining it in an unorthodox way.

WARNING!

I use math jargon below, please read my other article Titled Reed Solomon Codes for Dummies if you are not familiar with RS codes yet.

Read this article first, if you're still an RS code dummy.

If you're not an RS Code dummy anymore you can continue ;)

Prerequisite Definitions

Before we jump into explaining Mutual Correlated Agreement, we need to lay out some definitions.

Definition 1: Random Linear Combination

A random linear combination is the process of adding two vectors together, where one of the vectors is multiplied by some value, alpha.

Let's first consider two arbitrary vectors f,g∈F178f,g\in\mathbb F_{17}^{8}, using the RS code:

C=RS⁡[F17,D,2],D={1,2,4,8,16,15,13,9}.C=\operatorname{RS}[\mathbb F_{17},D,2],\qquad D=\{1,2,4,8,16,15,13,9\}.

So our field has 1717 elements, our domain has n=8n=8 evaluation points, and our codewords are evaluations of linear polynomials (since k=2k=2, largest degree of xx, is x1x^1). We'll write the vector entries in the same order as the points in DD.

f=[1,2,4,8,1,15,13,9],g=[0,0,0,0,5,0,0,0].\begin{aligned} f&=[1,2,4,8,\mathbf 1,15,13,9],\\ g&=[0,0,0,0,\mathbf 5,0,0,0]. \end{aligned}

Neither ff nor gg is a valid codeword for this RS code. For example, ff differs from the valid codeword for p(x)=xp(x)=x at the domain point x=16x=16, and gg is nonzero only at that point.

Now we randomly sample some field element alpha and form the following statement:

hα=f+αg.\boxed{h_\alpha=f+\alpha g.}

In english, this is: "h alpha is equal to f plus alpha times g".

Simply put, we multiply all elements in vector gg by α\alpha, then add ff to α\alpha * gg, (all modulo 1717).

For the particular sample α=3\alpha=3,

h=h3=f+3g(mod17)=[1,2,4,8,16,15,13,9].\begin{aligned} h=h_3&=f+3g\pmod{17}\\ &=[1,2,4,8,16,15,13,9]. \end{aligned}

So hh is the "random linear combination" of f+3gf + 3g.

Here's an image of the same thing above:

Vectors f and g combine as h = f + 3g modulo 17, changing the fifth entry from 1 to 16 and producing a valid Reed-Solomon codeword.

Figure 1. The random linear combination h=f+αgh=f+\alpha g with α=3\alpha=3 over F17\mathbb F_{17}. Select the image to view it at full size.

Something interesting I want to point out: even if ff and gg are not codewords for a given RS code, their random linear combination potentially could be.

Lemme say that again:

It is possible that the random linear combination of ff and gg, with some random α\alpha, results in hh being a valid codeword.

This is exactly what happened in the example above. Our h3h_3 is the valid codeword for p(x)=xp(x)=x, even though neither ff nor gg is a codeword.

For fixed non codewords ff and gg, the probability of this happening is at most 1/∣F∣1/|\mathbb F|. More precisely, the probability is not always 1/∣F∣1/|\mathbb F|; it can also be zero. For two distinct values of alpha to both produce codewords, ff and gg would already have to be codewords themselves.

For these particular vectors, it happens only when α=3\alpha=3, so the probability is exactly 1/171/17.

Definition 2: Agreement Set

But, even if the result of a random linear combination of two non codeword vectors, hh, is not a valid codeword, it might be close to one.

Put another way, if hh is not a valid codeword, it may agree with a codeword at some evaluation points.

Let's use another pair of vectors, but keep the exact same RS code C=RS⁡[F17,D,2]C=\operatorname{RS}[\mathbb F_{17},D,2]:

f=[0,0,0,0,0,0,15,14],g=[0,0,0,0,0,0,1,1].\begin{aligned} f&=[0,0,0,0,0,0,15,14],\\ g&=[0,0,0,0,0,0,1,1]. \end{aligned}

Again, neither ff nor gg is a valid codeword.

We compute their random linear combination hh where alpha is 22:

h2=f+2g.\boxed{h_2=f+2g.}

This results in the vector hh which is not a valid codeword:

h2=[0,0,0,0,0,0,0,16].h_2=[0,0,0,0,0,0,0,16].

However, it is close to the valid codeword cc, which is simply the zero polynomial evaluated over DD:

c=[0,0,0,0,0,0,0,0].c=[0,0,0,0,0,0,0,0].

The vector h2h_2 is 1/81/8-close to cc. Or put differently, their Hamming distance is 11.

The vectors h2h_2 and cc overlap at all points except one. They disagree at the last position, which corresponds to the domain point x=9x=9.

We call the matching domain points the agreement set:

S={x∈D:h2(x)=c(x)}.S=\{x\in D:h_2(x)=c(x)\}.

Or in this case the set SS is:

S=D∖{9}={1,2,4,8,16,15,13}.S=D\setminus\{9\}=\{1,2,4,8,16,15,13\}.

The agreement set is a subset of the evaluation domain DD.

SS contains the evaluation points where the two vectors agree, not the values of those vectors.

Put mathematically, S⊆DS\subseteq D, meaning SS is a subset of DD.

The vector h with alpha 2 agrees with the zero codeword at seven positions. Only the last position, x7 = 9, differs: 16 versus 0.

Figure 2. h2h_2 agrees with the valid codeword cc at 7 of 8 evaluation points. The one mismatch is at x=9x=9, so S=D∖{9}S=D\setminus\{9\}. The figure labels domain points in order as x0,…,x7x_0,\ldots,x_7; in particular, x6=13x_6=13 and x7=9x_7=9.

Definition 3: Restriction to a Set

Another piece of mathematical notation we need is called restriction.

The notation f∣Sf|_S (read as "f restricted to S") just means we only look at the values of ff at the evaluation points in SS.

For example, since SS contains every point in DD except 99, we get:

f∣S=[0,0,0,0,0,0,15].f|_S=[0,0,0,0,0,0,15].

And since h2h_2 and cc agree at every point in SS, we can write:

h2∣S=c∣S.\boxed{h_2|_S=c|_S.}

"h2 restricted to S is equal to c restricted to S"

That's literally all restriction means here. We are just looking at the same vectors, but only at the positions in SS.

Definition 4: Sufficiently Large Set

So what does it mean when someone says the agreement set SS must be "sufficiently large"?

All this means is that the set must contain at least some chosen fraction of the evaluation domain:

∣S∣≥(1−δ)n,n=∣D∣.\boxed{|S|\geq(1-\delta)n,\qquad n=|D|.}

Where δ\delta is the maximum relative distance we're allowing.

For example, if n=8n=8 and δ=1/4\delta=1/4, then SS must contain at least 66 evaluation points.

That's exactly what we have above (and more): ∣S∣=7|S|=7. The threshold depends on the particular δ\delta you're studying.

The Mutual Correlated Agreement Question

Ok so we now have enough terminology to describe MCA.

Again, MCA is a question which reduces to yes or no, true or false.

This is the question:

We produce a random linear combination hα=f+αgh_\alpha=f+\alpha g of two potentially non codeword vectors with a randomly sampled alpha.

hαh_\alpha is delta close to some codeword cc. More specifically, it agrees with cc on some sufficiently large set S⊆DS\subseteq D:

hα∣S=c∣S.h_\alpha|_S=c|_S.

Question, are there two valid codewords u0u_0 and u1u_1 which, when restricted to that same agreement set SS, agree with the vectors ff and gg?

f∣S=u0∣Sandg∣S=u1∣S.\boxed{f|_S=u_0|_S\qquad\text{and}\qquad g|_S=u_1|_S.}

If yes, excellent. For a sufficiently large SS with at least kk points, these codewords also satisfy c=u0+αu1c=u_0+\alpha u_1.

If no, we have an MCA failure on that agreement set.

One important detail: for a fixed α\alpha, this has to work for every sufficiently large agreement set SS. If there is even one set where the answer is NO, that is an MCA failure.

2nd attempt at explaining wtf MCA is

We've already covered what it means when a vector is delta close to a codeword. You can say vector ww is δ\delta-close to codeword cc over domain DD.

ΔD(w,c)≤δ\Delta_D(w,c)\leq\delta

The domain DD is the evaluation set.

But we can also have this notion of closeness over some subset S⊆DS\subseteq D:

ΔS(w,c)=∣{x∈S:w(x)≠c(x)}∣∣S∣\Delta_S(w,c)=\frac{|\{x\in S:w(x)\neq c(x)\}|}{|S|}

So the question MCA is asking:

The random linear combination hα=f+αgh_\alpha=f+\alpha g is δ\delta-close to some codeword cc. When you restrict the domain DD to where hαh_\alpha and cc agree, we get the set SS.

S={x∈D:hα(x)=c(x)}S=\{x\in D:h_\alpha(x)=c(x)\}

Since hαh_\alpha is δ\delta-close to cc, we know:

∣S∣≥(1−δ)∣D∣|S|\geq(1-\delta)|D|

We can say hαh_\alpha agrees exactly with cc on SS, mathematically:

ΔS(hα,c)=0\Delta_S(h_\alpha,c)=0

The question is, do vectors ff and gg also agree exactly on that same set SS with some other valid codewords u0u_0 and u1u_1?

ΔS(f,u0)=0andΔS(g,u1)=0\boxed{\Delta_S(f,u_0)=0\quad\text{and}\quad\Delta_S(g,u_1)=0}

If the answer is yes, amazing, if no, that's called an MCA failure event for that agreement set.

Super short explanation of MCA:

If hαh_\alpha agrees with a codeword cc on a sufficiently large set SS, do the vectors ff and gg also agree with some valid codewords on exactly that same set SS?

MCA Success Event: α=1\alpha=1

Let's use the second pair of vectors, with α=1\alpha=1:

f=[0,0,0,0,0,0,15,14],g=[0,0,0,0,0,0,1,1].\begin{aligned} f&=[0,0,0,0,0,0,15,14],\\ g&=[0,0,0,0,0,0,1,1]. \end{aligned}

This time:

h1=f+g=[0,0,0,0,0,0,16,15].h_1=f+g=[0,0,0,0,0,0,16,15].

h1h_1 agrees with the zero codeword cc on:

S0=D∖{13,9}={1,2,4,8,16,15}.S_0=D\setminus\{13,9\}=\{1,2,4,8,16,15\}.

That's 66 out of 88 points, so ∣S0∣=6|S_0|=6 meets our threshold δ=1/4\delta=1/4.

Now look at these two valid RS codewords, both obtained by evaluating the zero polynomial:

u0=[0,0,0,0,0,0,0,0],u1=[0,0,0,0,0,0,0,0].\begin{aligned} u_0&=[0,0,0,0,0,0,0,0],\\ u_1&=[0,0,0,0,0,0,0,0]. \end{aligned}

Both u0u_0 and u1u_1 agree with our original ff and gg on exactly the same set S0S_0:

f∣S0=u0∣S0,g∣S0=u1∣S0.\boxed{f|_{S_0}=u_0|_{S_0},\qquad g|_{S_0}=u_1|_{S_0}.}

And:

c=u0+u1.c=u_0+u_1.

So, YES, this is an MCA success. Even though ff and gg are not valid codewords over the whole domain, they both agree with valid codewords on the same 66 points.

There's no other sufficiently large agreement set with a different codeword hiding here: a nonzero linear polynomial can only be zero at one point, whereas h1h_1 is zero at the first six points.

MCA Failure Event: α=2\alpha=2 or α=3\alpha=3

Now here's the interesting part. We keep the same ff and gg. Let's just choose a different alpha:

α=2.\alpha=2.

We already computed:

h2=[0,0,0,0,0,0,0,16].h_2=[0,0,0,0,0,0,0,16].

h2h_2 is not a valid codeword, but it agrees with the zero codeword on 7 points:

S2=D∖{9}={1,2,4,8,16,15,13}.S_2=D\setminus\{9\}=\{1,2,4,8,16,15,13\}.

But remember, ff and gg are not zero at the domain point 1313, which belongs to this agreement set.

Could there be different valid codewords u0,u1u_0,u_1 that agree with ff and gg on all of S2S_2? No. Both ff and gg are zero at the first six points. A polynomial of degree less than 22 that is zero at six different points has to be the zero polynomial. But the zero polynomial doesn't match either vector at 1313.

So there are no valid codewords u0,u1u_0,u_1 satisfying:

f∣S2=u0∣S2,g∣S2=u1∣S2.f|_{S_2}=u_0|_{S_2},\qquad g|_{S_2}=u_1|_{S_2}.

For this agreement set, the answer is NO. That's an MCA failure event, even though h2h_2 itself is not a codeword.

MCA fails on the same agreement set: f and g are zero at six points but nonzero at x6 = 13, so neither can match a valid linear-polynomial codeword throughout S.

Figure 3. The original vectors disagree with the only possible valid codewords at the point 1313 (labeled x6x_6), which is inside the agreement set S2S_2.

And it gets even more interesting. With α=3\alpha=3:

h3=f+3g=[0,0,0,0,0,0,1,0].h_3=f+3g=[0,0,0,0,0,0,1,0].

Now it agrees with the zero codeword at every point except 1313:

S3=D∖{13}={1,2,4,8,16,15,9}.S_3=D\setminus\{13\}=\{1,2,4,8,16,15,9\}.

But ff and gg both have nonzero values at 99, which is now inside the agreement set. Same problem: no valid codewords u0,u1u_0,u_1 can agree with both original vectors there.

So α=2\alpha=2 and α=3\alpha=3 both cause MCA failure, without either random linear combination becoming a valid codeword.

For all other α\alpha, the combination agrees with the zero codeword on exactly the first six points, and both ff and gg agree with valid codewords on those same six points.

Therefore, for this particular pair:

Pr⁡α←F17[MCA failure]=217.\boxed{\Pr_{\alpha\leftarrow\mathbb F_{17}}[\text{MCA failure}]=\frac{2}{17}.}

Another MCA Failure: hh Is Actually a Valid Codeword

Remember our first pair of vectors, from Definition 1:

f=[1,2,4,8,1,15,13,9],g=[0,0,0,0,5,0,0,0].\begin{aligned} f&=[1,2,4,8,1,15,13,9],\\ g&=[0,0,0,0,5,0,0,0]. \end{aligned}

With α=3\alpha=3 we got:

h3=f+3g=[1,2,4,8,16,15,13,9].h_3=f+3g=[1,2,4,8,16,15,13,9].

This vector is a valid RS codeword, because it's the evaluation of p(x)=xp(x)=x over DD.

So h3h_3 agrees with a valid codeword at every point of the domain. We can choose:

S=D={1,2,4,8,16,15,13,9}.S=D=\{1,2,4,8,16,15,13,9\}.

But remember, neither ff nor gg is a valid codeword on the entire domain. There are no valid codewords u0,u1∈Cu_0,u_1\in C such that:

f∣D=u0∣D,g∣D=u1∣D.f|_D=u_0|_D,\qquad g|_D=u_1|_D.

So for this agreement set, the answer is NO. That's another MCA failure event.

Notice the difference: this time the random linear combination is perfectly valid. In our previous example, it wasn't a codeword at all, just close to one.

For this first pair, only α=3\alpha=3 causes MCA failure, so the probability is exactly 1/171/17.

The Probability of MCA Failure

Here's where the probability comes in.

We now have two different examples using the same RS code and the same distance threshold δ=1/4\delta=1/4:

  • In the first example, the combination becomes an actual codeword for one value of alpha: failure probability 1/171/17.
  • In the second example, the combination gets close to a codeword on a set that the original vectors can't explain, for two values of alpha: failure probability 2/172/17.

But neither 1/171/17 nor 2/172/17 is a general formula for MCA failure. The probability depends on the RS code, the vectors ff and gg, and the distance δ\delta.

The bigger mathematical question is: how large can the failure probability get, even if somebody chooses the worst possible ff and gg?

We call that worst-case probability the MCA error:

εmca(C,δ)=max⁡f,g∈FDPr⁡α←F[MCA failure for f,g,α at distance δ].\begin{aligned} \varepsilon_{\mathrm{mca}}(C,\delta) &=\max_{f,g\in\mathbb F^D} \Pr_{\alpha\leftarrow\mathbb F}\\ &\quad[\text{MCA failure for }f,g,\alpha\text{ at distance }\delta]. \end{aligned}

The Grand MCA Proximity Prize problem asks how large we can make δ\delta while keeping this worst-case failure probability extremely small. Better bounds can help cryptographic proofs reach very high soundness levels, for example 2−1282^{-128}.

Why MCA Matters for Cryptographic Proofs

Reed–Solomon proximity tests appear in STARKs and related proof systems. Random linear combinations help combine checks about several evaluation vectors into checks about one vector.

The concern is that invalid vectors might accidentally combine into something that looks like a low-degree polynomial on many evaluation points. MCA measures how reliably agreement of that combination implies simultaneous agreement of the inputs on those same points.

A stronger bound on MCA failure probability can improve soundness analysis of such tests and, for appropriate proof-system parameters, help reduce verification queries and proof size.

Conclusion

MCA begins with two arbitrary vectors, a random field element, and their random linear combination:

hα=f+αg.h_\alpha=f+\alpha g.

If hαh_\alpha agrees with a valid Reed–Solomon codeword on a sufficiently large set SS, do valid codewords u0u_0 and u1u_1 agree with ff and gg on exactly that same set?

For a fixed challenge and agreement set, that is a yes-or-no question. Over random choices of α\alpha, a NO answer can occur with some probability. Bounding that probability is the mathematical problem studied by Mutual Correlated Agreement.