How to lift functions I'm trying to, given a covering map $p: E\to B$, where $E$ is path-connected and $p(e_0) = b_0$, lift loops in $B$ to make paths in $E$ starting at $e$ to create a function from $\pi_1(B, b_0)\to \pi^{-1}(b_0)$.
I'm unsure how to attack this. I know that, from Munkres, for every loop in $B$ based at $b_0$, say $f: I\to B$, there exists a unique lifting to a path $\overline{f}: I\to E$ beginning at $e_0$.
But, I'm unsure how to use this to define a function
$$
H: \pi_1(B, b_0)\to \pi^{-1}(b_0).
$$
I know that, given $$<f>\in \pi_1(B, b_0)$$ for any $g, h\in <f>$, we have that $\overline{g}(1) =
\overline{f}(1)$, so maybe I could define it that way. But, I can't guarantee that $\overline{f}(1)\in \pi^{-1}(b_0)$.
 A: Covering maps have the unique path lifting property. That is, if we have a path $u : I \to B$ and an element $e \in p^{-1}(u(0))$, there exists a unique  path $\tilde u : I \to E$ such that $p \circ \tilde u = u$ and $\tilde u(0) = e$. Applying this for loops $f : I \to E$ based at $b_0$ (i.e. $f(0) = f(1) = b_0$), we get a unique lift $\tilde f : I \to E$ such that $\tilde f(0) = e_0$. Since $p \circ \tilde f = f$, we have $p(\tilde f (1)) = f(1) = b_0$. This means that $\tilde f(1) \in p^{-1}(b_0)$. You can easily check that $\tilde f(1) = \tilde g(1)$ if $[f] = [g]$ in $\pi_1(B,b_0)$. Thus you get the desired function
$$
H: \pi_1(B, b_0)\to \pi^{-1}(b_0).
$$
In general it does not behave very well, it is neither injective nor surjective. But if $E$ is path-connected, then $H$ is surjective. To see this, let $e_1 \in p^{-1}(b_0)$ and choose a path $\phi : I \to E$ such that $\phi(0) = e_0$ and $\phi(1) = e_1$. Then $f = p \circ \phi$ is a loop based at $b_0$ and  $\phi$ is the unique lift of $f$ such that $\phi(0) = e_0$. Thus $H([f]) = \phi(1) = e_1$.
