Prove that $\mathbb R ^n $ without a finite number of points is simply connected for $n\geq 3$ I want to prove that $\mathbb R ^n $ without a finite number of points is simply connected for $n\geq 3$. Let $X$ be that finite set of points. My idea is to prove this by induction on cardinality of $X$.
Base case with $|X|=1$ follows from the fact that $S^n$ is simply connected and it is a deformation retract of $\mathbb R^{n+1}$ without a point.
For inductive case with $n\geq 2$, I want to prove that there are two distinct parallel affine planes $P $ and $Q $ such that:
1) neither $P$ nor $Q$ intersect $X$;
2) if we denote with $A_+,A_-$ the connected components of $\mathbb R^n \setminus P\cup X$ and with $B_+,B_-$ the connected components of $\mathbb R^n \setminus Q\cup X$, such that $A_+$ contains $Q$ and $B_+$ contains $P$, then $X$ intersects $A_-$ and $B_-$ in at least one point.
(Maybe it is less complicate to prove that closure of $A_+ \cap B_+ $ does not contain any point of $X$)
Then I can apply inductive hypotesis, and $A_+$ and $B_-$ are simply connected. Moreover, $A_+ \cup B_+ = \mathbb R^n \setminus X$ and $A_+ \cap B_+$ is arc-connected, so I can apply Van Kampen.
How can I prove the existence of such two planes?
 A: Here is a longwinded way involving tedious path surgery.
First we need to show that $Y=\mathbb{R}^n\setminus X$ is path connected.
Pick $x,y \in Y$.Choose $d \neq 0$ such that $d \bot (x-y)$.
Pick $\lambda \in \mathbb{R}$, $t \in [0,1]$ and let
$p_\lambda(t) = x + t(y-x) + (1-|2t-1|) \lambda d$.
(It is easy to see that $p_\lambda$ is the polygonal path $(x,{x+y \over 2}+ \lambda d, y)$.)
Since $x-y,d$ are linearly independent, it
is easy to see $p_{\lambda_1}=p_{\lambda_2}$ iff $\lambda_1 = \lambda_2$ .
In fact, if $t_1, t_2 \in (0,1)$, then $p_{\lambda_1}(t_1) = p_{\lambda_2}(t_2)$
iff $\lambda_1 = \lambda_2$ and $t_1 = t_2$.
Each $p_\lambda$ is a path between $x,y$ and at most $|X|$ of these can intersect $X$.
Since there are an uncountable number of such paths, there is at least one path joining $x,y$ hence the set is path connected and so is connected.
Now suppose $x_0 \in Y$ and $\gamma:[0,1] \to Y$ is a closed path based at $x_0$. Since $Y$ is open, we see that $\gamma$ is homotopic to a polygonal closed path in $Y$ also based at $x_0$. Hence we may take
$\gamma$ to be polygonal, that is, straight lines joining a finite number of points
$x_0=\gamma_0,...,\gamma_m = x_0$.
Now consider the finite collection of points $A=\{\gamma_k\} \cup X$. Pick a
hyperplane $H$ passing through $x_0$ such that the orthogonal projections 
onto $H$ of the 
points in $A$ are distinct. (There are only a finite number of orientations of the hyperplane such that two points in $A$ project to the same point.) 
Let $\Pi$ be the orthogonal projection operator (projects onto the subspace parallel to $H$), and let $h$ be the normal
of the hyperplane.
Since $Y$ is open, we see that $B(x_0,\epsilon) \subset Y$ for some $\epsilon>0$. Let $H_\eta = H+ \{ \eta h\}$. By choosing $\eta$ sufficiently small, we can shift the
hyperplane such that it intersects $B(x_0,\epsilon)$ but passes through
none of the points $X$.
Let $\phi$ be the (affine) orthogonal projection onto $H_\eta$.
Let $B= \{ y | \Pi y = \Pi x \text{ for some } x \in X \}$ (a finite collection of lines perpendicular to $H_\eta$). By construction, none of the points $\gamma_k$
lie in $B$, but it is possible that some segment $[\gamma_i, \gamma_{i+1}]$
intersects $B$.
Suppose a segment $[\gamma_i, \gamma_{i+1}]$ intersects $B$. Pick a direction
$d$ that is perpendicular to $\gamma_{i+1}-\gamma_{i}$ and $h$ (this is where
$n\ge 3$ comes in). As above, define
$p_\lambda(t) = \gamma_i + t(\gamma_{i+1}-\gamma_{i}) + (1-|2t-1|) \lambda d$,
and let $N= \{ \lambda |  p_\lambda([\gamma_i, \gamma_{i+1}]) \cap B \neq \emptyset \}$. Note that $N$ is finite, hence there is some $\delta>0$ such that $p_\lambda([\gamma_i, \gamma_{i+1}])$ does not intersect $B$
for $\lambda \in (0,\delta]$. Hence $p_\lambda([\gamma_i, \gamma_{i+1}])$ does not intersect $X$ for
$\lambda \in [0,\delta]$.
Hence we can continuously modify the path $\gamma$ by adding the point
${\gamma_i +\gamma_{i+1} \over 2}+ \delta d$ while remaining in $Y$.
 Repeat this process for all segments that intersect $B$. Hence the original
path is homotopic in $Y$ to a curve that does not intersect $B$.
The points $x_0, \phi(x_0)$ are in $B(x_0,\epsilon)$ and since the ball is
convex, we can see that the modified curve is homotopic in $Y$ to the same
curve with the points $x_0, \phi(x_0)$ prepended (that is, the points on
the path are $x_0, \phi(x_0), x_0=\gamma_0, ...$). In a similar manner, add
the points $\phi(x_0), x_0$ to the end of the path.
The modified path looks like $x_0, \phi(x_0), \gamma_1, ...,\gamma_n, \phi(x_0), x_0$ (the $\gamma_i$ are the modified points).
Now consider the map $\theta_t(x) =(1-t)x+ t \phi(x)$ apply the map to the
portion of the curve $\phi(x_0), \gamma_1, ...,\gamma_n, \phi(x_0)$. Hence
the modified path is homotopic in $Y$ to the path
$x_0, \phi(x_0), \phi(\gamma_1), ...,\phi(\gamma_n), \phi(x_0), x_0$, and
since the points $\phi(x_0), \phi(\gamma_1), ...,\phi(\gamma_n), \phi(x_0)$ lie
in the convex set $H_\eta \subset Y$ the curve is homotopic to the
curve $x_0, \phi(x_0), x_0$, and since the ball is convex, this curve is
homotopic in $Y$ to the constant curve $t \mapsto x_0$.
A: If you're happy with deformation retraction arguments, you can do this more quickly than that. Put disjoint balls around each point, and join them with thin paths in some order. I claim that $\mathbb{R}^n$ minus these points deformation retracts to the boundaries of these balls together with these thin paths; that is, $\mathbb{R}^n$ minus $k$ points is homotopy equivalent to a wedge sum of $k$ copies of $S^{n-1}$. 
A: Actually, the first comment on my question helped me to find a simple solution.
The proof is by induction on $|X|$
If $|X|=1$, then WLOG we can suppose $X=\{0\}$: then $\mathbb R^n \setminus \{0\} $ deforms into $S^{n-1}$ that is simply connected for $n\geq 3$.
If the thesis is true for $|X|<k$, let us prove that the thesis is true for $|X|=k$. WLOG, we can suppose that $X=\{p_1 ,..., p_k\}$, with $(p_i)_1\leq (p_{i+1})_1 $ (if $x\in \mathbb R^n$, then by definition $(x)_1$ is the first coordinate of $x$ with respect to canonical basis). We can suppose also that  there exists $i$ such that $(p_i)_1<(p_{i+1})_1$. There is no loss of generality because $k\geq 2$ and so there are at least two points of $X$ that have distinct coordinates. Define then $\delta = \frac {(p_{i+1})_1 - (p_{i})_1}{3}$, and name $A $ the open set of points such that first coordinate is $>(p_{i+1})_1 - 2\delta$ and $B$ the open set of points such that first coordinate is $<(p_i)_1 +2\delta$. Then $A$ and $B$ are homeomorphic to $\mathbb R ^n $ and $A$ and $B$ both intersect $X$ in less than $k$ points. Then, by inductive hypotesis, $A\setminus X$ and $B\setminus X$ are both simply connected; moreover, $A\cap B = A\setminus X \cap B\setminus X =$ a convex set, and $A\cup B \setminus X = \mathbb R ^n \setminus X$. Then we can apply Van Kampen.
A: Definition of simply connected only requires trivial fundamental group together with path-connectedness. The argument for both cases is intuitively the same, just utilize an extra dimension to go around the holes.
If it so happens that the straight line between two points passes through a hole, cut the line before and after the hole and append a half-circle around it. Inductively this gives a path between any two points in the desired space.
For the triviality of the loop classes, consider locally around one of the holes. Fit a plane to the largest segment of the loop possible and if the hole is coplanar, homotope in any "normal" direction (relative to the plane) to go around. Induct on the number of holes and that should be it. This is not very rigorous, but it can probably be parameterized if one tries hard enough.
