Showing a Borel-Cantelli-esque result for not necessarily independent random variables

$A_1, A_2,\dots$ are events that are not necessarily independent. Prove that $$P(A_n \text{ i.o}) = 1 \iff \sum_n P(A_n \cap B) = \infty \text{ for all $B$ with $P(B)>0$}.$$

$(\Rightarrow)$ Suppose that $P(A_n \text{ i.o.}) = 1$ and that there exists $B$ with $P(B)>0$. Suppose, for the sake of contradiction, that $\sum_n P(A_n \cap B) < \infty$. Then, by Borel-Cantelli, we have that $P(A_n \cap B \text{ i.o.}) = 0$. Since $P(\limsup_n (A_n \cap B)) \geq \limsup_n P(A_n \cap B)$, we have that $\limsup_n P(A_n \cap B) = 0$ also.

I'm a bit iffy here as to how to derive the contradiction. If I pick a small $\epsilon \ll P(B)$ so that $P(A_n \cap B) < \epsilon$ i.o., and this would contradict the $P(A_n \text{ i.o.}) = 1$, right?

As for the $(\Leftarrow)$ direction, what is the best way to approach this? I thought about contradiction again, but then I would have to look at $\omega \in \Omega$ such that $\omega \notin A_n$ i.o., but then this really did not get me very far... Should I be looking at particular sets, such as $B = \limsup_n A_n$?


"$\Rightarrow$": As suggested, we prove this implication via contradiction. Suppose that $\sum_{n \geq 1} \mathbb{P}(A_n \cap B) < \infty$ for some $B$ with $\mathbb{P}(B)>0$. Then it follows from the Borel-Cantelli lemma that $$\mathbb{P}(A_n \cap B \, \text{infinitely often}) = 0.$$ On the other hand, we have $$\mathbb{P} \left( \limsup_{n \to \infty} A_n \cap B \right) \geq \mathbb{P}\left(\limsup_{n \to \infty} A_n \right) + \mathbb{P}(B)-1 = \mathbb{P}(B).$$ Combining both inequalities yields $\mathbb{P}(B)=0$; hence, a contradiction.

"$\Leftarrow$": Suppose that $\mathbb{P}(A_n \, \text{infinitely often}) <1$. Then we can choose $k \geq 1$ such that $$\mathbb{P}\left( \bigcup_{n=k}^{\infty} A_n \right) < 1.$$ For $B := \left( \bigcup_{n=k}^{\infty} A_n \right)^c$ we have $\mathbb{P}(B)>0$ and $$\sum_{n \geq 1} \mathbb{P}(A_n \cap B) \leq \sum_{n=1}^{k-1} \mathbb{P}(A_n \cap B) < \infty.$$ Obviously, this contradicts our assumption.

Remark: The proof actually shows that $\mathbb{P}(A_n \, \text{infinitely often})=1$ is equivalent to the following statement:

For any $B$ with $\mathbb{P}(B)>0$, there exist infinitely many $n \in \mathbb{N}$ such that $\mathbb{P}(B \cap A_n)>0$.

As far as I know, the result is due to Petrov and Martikainen, see their paper from 1990 (they obtained a bit more general result).