I'm aware of the many questions on this topic, but I'm still not sure what went wrong with my reasoning here below.
I'm assuming use of AES with key size $2^{256}$ and messages of size $2^{128}$, using ECB. When I tried computing the expected number of plaintext-ciphertext pairs required until key-identification, I reasoned as such:
For a single pair $(m,c)$:
$$\Pr_k[E_k(m)=c]=2^{-128}$$
For $n$ pairs (due to i.i.d):
$$\Pr_k\big[(E_k(m_1)=c_1) \wedge (E_k(m_2)=c_2) \wedge ... \wedge (E_k(m_n)=c_n)\big]=2^{-128n}$$
So we're looking for $n$ such that the expected number of keys that agree on all $n$ pairs is $1$, i.e.:
$$\frac{2^{256}}{2^{128n}}=1$$
So $n=2$.
This answer matches the other answers in related posts, but my problem is with the fact that if I take $n \to \infty$ (or even just a large $n$) I get $0$ expected matches (or less than $1$ for large $n$). So this doesn't seem correct.
I know that each key is very unlikely to be the key, which is ideal, but I was looking for a formal way to compute the expected number of keys that would match. Is there a way to fix this? Or reconcile my solution with the $n\to \infty$ issue?