Question on the application of the Borel-Cantelli lemma I have a question on the first proof on this pdf. Essentially, it is trying to prove the following statement:
Let ${f_n}$ be a sequence of measurable functions on $[0, 1]$ with $|f_n(x)| < ∞$ for almost every $x$. Show that
there exists a sequence $c_n$ of positive real numbers such that
$$\frac{f_n(x)}{c_n} \to 0$$ 
 for almost every $x$.
I follow everything until the proof reaches this claim:
$$m\big(\{x\in [0,1] : \bigg|\frac{f_n(x)}{nk_n}\bigg| \geq \frac{1}{n}\}\big) < \frac{1}{2^n}$$
Why do we need the Borel Cantelli lemma here? As $n \to \infty$, the statement above implies that the set in which $\bigg|\frac{f_n(x)}{nk_n}\bigg|$ cannot be made arbitrarily small has measure zero. If we choose $c_n = nk_n$, doesn't that mean $\frac{f_n(x)}{c_n}$ converges to zero almost everywhere?
 A: The Borel-Cantelli lemma says that if the sum of $m(E_i)$'s is finite, then
$$m({\displaystyle \limsup _{n\to \infty }E_{n})=m(\bigcap _{n=1}^{\infty }\bigcup _{k\geq n}^{\infty }E_{k})}=0$$
Intuitively, the Borel-Cantelli lemma tells you that the chance of some bad event happening (like some bad elements interfere in what we want to prove infinitely many times) is negligible. In measure theoretic words, the measure of some bad elements where our proof doesn't work is $0$ and for "almost every" element, our proof works.
Take $$E_n= \{x\in [0,1] : \bigg|\frac{f_n(x)}{nk_n}\bigg| \geq \frac{1}{n}\}$$
Then $\sum_i m(E_i) = 1 < \infty$. So, the Borel-Cantelli lemma applies.
Now, you conclude that $m(\bigcap _{n=1}^{\infty }\bigcup _{k\geq n}^{\infty }E_{k})=0$ which implies that the set of elements $x$ such that $\bigg|\frac{f_n(x)}{nk_n}\bigg| \geq \frac{1}{n}$ for infinitely many $n$'s is negligible and can be ignored. So, for almost every $x$, we see that $\bigg|\frac{f_n(x)}{nk_n}\bigg| < \frac{1}{n}$ excluding a finite number of $n$'s. Since the number of $n$'s which do not satisfy the previous inequality is finite, you can be sure that after a certain $n$, let's call it $N_0$ the inequality holds almost everywhere.
Given any $\epsilon > 0$, choose $n_0$ such that $\frac{1}{n_0} < \epsilon$. Now set $M=\max\{n_0,N_0\}$. Then we conclude that
$$\forall \epsilon>0, \exists M \in \mathbb{N}: n \geq M \implies |\frac{f_n(x)}{nk_n}| < \frac{1}{n} < \epsilon$$
which means that $\lim_{n\to\infty}\frac{f_n(x)}{nk_n}=0$ almost everywhere.
So, you just need to take $c_n=nk_n$ as you said.
Edit: To understand what the Borel-Cantelli lemma tells you, think about what kind of elements are in $\limsup _{n\to \infty }E_{n}$. This should help you a lot. 
$$x \in \limsup _{n\to \infty }E_{n} =  \bigcap _{n=1}^{\infty }\bigcup _{k\geq n}^{\infty }E_{k} \iff \forall n, \exists k_* \geq n: x \in E_{k_*}$$
Think of $n$ as time and imagine that we are checking $E_n$'s one after another. This statement tells us that no matter how much time passes, we can always find some $E_{k_*}$ in future that contains $x$. So, even if we wait forever, there will still be a set that contains $x$. So, $x$ is happening infinitely many times. The compliment of this set are those elements that occur only finitely many times. I hope this helps.
