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 , using the RS code:
So our field has elements, our domain has evaluation points, and our codewords are evaluations of linear polynomials (since , largest degree of , is ). We'll write the vector entries in the same order as the points in .
Neither nor is a valid codeword for this RS code. For example, differs from the valid codeword for at the domain point , and is nonzero only at that point.
Now we randomly sample some field element alpha and form the following statement:
In english, this is: "h alpha is equal to f plus alpha times g".
Simply put, we multiply all elements in vector by , then add to * , (all modulo ).
For the particular sample ,
So is the "random linear combination" of .
Here's an image of the same thing above:

Figure 1. The random linear combination with over . Select the image to view it at full size.
Something interesting I want to point out: even if and 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 and , with some random , results in being a valid codeword.
This is exactly what happened in the example above. Our is the valid codeword for , even though neither nor is a codeword.
For fixed non codewords and , the probability of this happening is at most . More precisely, the probability is not always ; it can also be zero. For two distinct values of alpha to both produce codewords, and would already have to be codewords themselves.
For these particular vectors, it happens only when , so the probability is exactly .
Definition 2: Agreement Set
But, even if the result of a random linear combination of two non codeword vectors, , is not a valid codeword, it might be close to one.
Put another way, if 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 :
Again, neither nor is a valid codeword.
We compute their random linear combination where alpha is :
This results in the vector which is not a valid codeword:
However, it is close to the valid codeword , which is simply the zero polynomial evaluated over :
The vector is -close to . Or put differently, their Hamming distance is .
The vectors and overlap at all points except one. They disagree at the last position, which corresponds to the domain point .
We call the matching domain points the agreement set:
Or in this case the set is:
The agreement set is a subset of the evaluation domain .
contains the evaluation points where the two vectors agree, not the values of those vectors.
Put mathematically, , meaning is a subset of .

Figure 2. agrees with the valid codeword at 7 of 8 evaluation points. The one mismatch is at , so . The figure labels domain points in order as ; in particular, and .
Definition 3: Restriction to a Set
Another piece of mathematical notation we need is called restriction.
The notation (read as "f restricted to S") just means we only look at the values of at the evaluation points in .
For example, since contains every point in except , we get:
And since and agree at every point in , we can write:
"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 .
Definition 4: Sufficiently Large Set
So what does it mean when someone says the agreement set must be "sufficiently large"?
All this means is that the set must contain at least some chosen fraction of the evaluation domain:
Where is the maximum relative distance we're allowing.
For example, if and , then must contain at least evaluation points.
That's exactly what we have above (and more): . The threshold depends on the particular 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 of two potentially non codeword vectors with a randomly sampled alpha.
is delta close to some codeword . More specifically, it agrees with on some sufficiently large set :
Question, are there two valid codewords and which, when restricted to that same agreement set , agree with the vectors and ?
If yes, excellent. For a sufficiently large with at least points, these codewords also satisfy .
If no, we have an MCA failure on that agreement set.
One important detail: for a fixed , this has to work for every sufficiently large agreement set . 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 is -close to codeword over domain .
The domain is the evaluation set.
But we can also have this notion of closeness over some subset :
So the question MCA is asking:
The random linear combination is -close to some codeword . When you restrict the domain to where and agree, we get the set .
Since is -close to , we know:
We can say agrees exactly with on , mathematically:
The question is, do vectors and also agree exactly on that same set with some other valid codewords and ?
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 agrees with a codeword on a sufficiently large set , do the vectors and also agree with some valid codewords on exactly that same set ?
MCA Success Event:
Let's use the second pair of vectors, with :
This time:
agrees with the zero codeword on:
That's out of points, so meets our threshold .
Now look at these two valid RS codewords, both obtained by evaluating the zero polynomial:
Both and agree with our original and on exactly the same set :
And:
So, YES, this is an MCA success. Even though and are not valid codewords over the whole domain, they both agree with valid codewords on the same 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 is zero at the first six points.
MCA Failure Event: or
Now here's the interesting part. We keep the same and . Let's just choose a different alpha:
We already computed:
is not a valid codeword, but it agrees with the zero codeword on 7 points:
But remember, and are not zero at the domain point , which belongs to this agreement set.
Could there be different valid codewords that agree with and on all of ? No. Both and are zero at the first six points. A polynomial of degree less than that is zero at six different points has to be the zero polynomial. But the zero polynomial doesn't match either vector at .
So there are no valid codewords satisfying:
For this agreement set, the answer is NO. That's an MCA failure event, even though itself is not a codeword.

Figure 3. The original vectors disagree with the only possible valid codewords at the point (labeled ), which is inside the agreement set .
And it gets even more interesting. With :
Now it agrees with the zero codeword at every point except :
But and both have nonzero values at , which is now inside the agreement set. Same problem: no valid codewords can agree with both original vectors there.
So and both cause MCA failure, without either random linear combination becoming a valid codeword.
For all other , the combination agrees with the zero codeword on exactly the first six points, and both and agree with valid codewords on those same six points.
Therefore, for this particular pair:
Another MCA Failure: Is Actually a Valid Codeword
Remember our first pair of vectors, from Definition 1:
With we got:
This vector is a valid RS codeword, because it's the evaluation of over .
So agrees with a valid codeword at every point of the domain. We can choose:
But remember, neither nor is a valid codeword on the entire domain. There are no valid codewords such that:
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 causes MCA failure, so the probability is exactly .
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 :
- In the first example, the combination becomes an actual codeword for one value of alpha: failure probability .
- 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 .
But neither nor is a general formula for MCA failure. The probability depends on the RS code, the vectors and , and the distance .
The bigger mathematical question is: how large can the failure probability get, even if somebody chooses the worst possible and ?
We call that worst-case probability the MCA error:
The Grand MCA Proximity Prize problem asks how large we can make while keeping this worst-case failure probability extremely small. Better bounds can help cryptographic proofs reach very high soundness levels, for example .
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:
If agrees with a valid Reed–Solomon codeword on a sufficiently large set , do valid codewords and agree with and on exactly that same set?
For a fixed challenge and agreement set, that is a yes-or-no question. Over random choices of , a NO answer can occur with some probability. Bounding that probability is the mathematical problem studied by Mutual Correlated Agreement.