Rigorously prove that the tangent line is indeed tangent? Let $f$ be a function of $x$ and $f'$ be the derivative, at a point $(x_0, f(x_0))$
the slope is $f'(x_0)$, we know from any calculus book that
the line $g(x) = f(x_0) + f'(x_0)(x - x_0)$ is tangent to the curve of $f$, 
but how do you rigorously prove it?
 A: The difficulty comes from the definition of "tangent" in euclidean geometry.
One definition of "tangent" could be the "limiting position of secant", and this idea leads immediately to the line $g(x)=f(x_0)+f'(x_0)(x-x_0)$ when $f$ is differentiable at $x_0$.
But one might argue that the notion of "limit" is absent in euclidean (or affine) geometry. For a tangent to a circle or an ellipse there is no problem, but for a  "general curve" a new idea is needed. When the curve $\gamma:\ y=f(x)$ in question is convex near the point $(x_0,y_0)\in\gamma$ then the notion of supporting line at $(x_0,y_0)$ makes sense: This is a line $$\ell:\quad y=y_0+m(x-x_0)$$ with the property that $\ell$ has the point $(x_0,y_0)$ in common with $\gamma$, and that $$y_0+m(x-x_0)\leq f(x)\qquad \forall x\in\ ]x_0-h,x_0+h[\ .$$
Such a line can indeed be considered as "tangent" to $\gamma$ at $(x_0,y_0)$.
When $f$ is differentiable at $x_0$ then there is at most one such $\ell$, and the corresponding $m$ is given by $m=f'(x_0)$.
A: This is a nice question. There is a geometrical notion of a tangent line, and various definitions that one could choose in order to embody that idea. One then wants to show that this matches up with one of the definitions from calculus.
A couple of definitions from calculus:
(C1) Define the tangent line at P as the line that passes through P and has the same slope as the derivative. This doesn't work in cases where the line is vertical at P.
(C2) A better calculus-based definition is to use a parametrized curve, and define the tangent line as the one that points in the direction of $(\dot{x},\dot{y})$. This works when the tangent line is vertical.
Geometrically, several pretty good possibilities have been proposed:
(G1) (Apollonius) Given a point Q not on the curve, let P be the point on the curve closest to Q. Then the tangent line at P is the line through P that is perpendicular to PQ.
(G2) (Descartes) Let P be a point on the curve, and let C be a circle that touches the curve only at P. Since Euclid has already defined tangency to a circle (a tangent line touches the circle only at one point), we take the definition of a tangent to the curve and reduce it to the definition of the tangent to C.
(G3) Let P be a point on a curve. A tangent line at P is one such that if we rotate the line clockwise about P by an arbitrarily small angle, then the rotated line cuts across the curve at P, and if we rotate counterclockwise by an arbitrarily small angle, we cut across the curve in the opposite direction.
Of G1, G2, and G3, none works at the end-point of a graph.
It seems odd to me that although G1 and G2 are obviously very closely related, if not equivalent, Descartes is credited with G2, even though he lived a thousand years after Apollonius. Maybe Descartes progressed further in applying the definition.
I seem to remember seeing G3 attributed to an ancient Greek mathematician by someone on SE, but I can't find it.
A definition similar to G3 is given in Marsden and Weinstein, Calculus Unlimited, http://resolver.caltech.edu/CaltechBOOK:1981.001 . They do all the work of connecting this definition to C1. They don't handle the case of a vertical tangent line. It's quite straightforward, for example, to apply G3 to the parabola $y=x^2$ at $x=1$.
It's not obvious to me whether there is any meaningful sense in which one could really prove one the most general calculus-based definitions, such as C2, to be equivalent to one of these geometrical definitions. You'd have to deal with pathological cases like $y=\sin (1/x)$ at $x=0$, for which C2 gives a vertical tangent line (but fails to define the orientation of the line). Classical geometry never dealt with this kind of thing. For this example, I think G1 and G2 fail, while I'm not sure if G3 can be applied.
A: In the case of conics, the tangent line can be define geometrically; for instance, in the circle the tangent is the line orthogonal to the radius at the point and similar characterizations can be given for the ellipse, the parabola and the hyperbola. This is classic Greek geometry, which later could be unified through projective geometry.
There was a problem when people started to deal with higher order algebraic curves: the tangent is no more the line having no other intersection with the curve (the exception for the parabola could be easily removed): indeed, a tangent to a cubic line always intersects the curve in another point, except at flexes. However, in this case the multiplicity of intersection can be defined rigorously with purely algebraic methods, so there is no real problem in defining the tangent. Fermat realized that one could use a trick for determining the tangent, which is essentially taking the limit; however, this can be justified rigorously without limits.
Consider a polynomial $f(X)$ and from it build the polynomial in two variables $f(X+E)$. If we form the difference
$$
f(X+E)-f(X)
$$
we can see that the polynomial $E$ divides this one, so we can perform the division, getting a polynomial $g(X,E)$ such that
$$
f(X+E)-f(X)=g(X,E)E.
$$
Now evaluate $f'(X)=g(X,0)$. It's easy to see that at a point $(x_0,f(x_0))$, the tangent line to the curve $y=f(x)$ is exactly
$$
y-f(x_0)=f'(x_0)\cdot(x-x_0).
$$
I'm not saying that Fermat did in this way. What I'm saying is that the characterization is purely algebraic. This can be extended to curves defined implicitly by polynomials in two variables like
$$
F(X,Y)=X^3+Y^3-3XY.
$$
It's known that Fermat solved the problem of determining the tangents to the folium Cartesii with his algebraic method in such a way that Descartes himself had to acknowledge the superiority over his own method.
In the case of transcendental curves such as the cycloid, there's nothing like this. In some specific cases, some geometric methods could be devised, but it was a situation similar to the computation of areas using exhaustion: for each case a specific strategy had to be found.
Because of these problems, modern mathematics does differently. If $f$ is a differentiable function at $x_0$, the tangent line to the curve $y=f(x)$ at $(x_0,f(x_0))$ is by definition the line
$$
y-f(x_0)=f'(x_0)\cdot(x-x_0).
$$
In all cases where the tangent could be defined and computed with previous methods, this turns out to be the same line found before. If the function is not differentiable, the tangent line doesn't exist (exception: vertical tangents, which can be dealt with by taking the inverse function or another similar method). This proves that the definition is sound.
So, how do I answer to your question? Rather simply: you have to prove nothing, because definitions are not “proved”.
In textbooks one often finds a justification using the “limit of the secants”: but if one looks carefully, this amounts to defining a metric on the pencil of lines passing through $(x_0,f(x_0))$ by transferring the metric on the real line using the slope. So this limit line is just the one with slope
$$
\lim_{h\to0}\frac{f(x_0+h)-f(x)}{h}
$$
and really nothing is proved. At most, this illustrates our intuition, but it is not a proof.
A: I think you mistyped, the line tangent to a curve $f(x)$ is $y=f'(x_0)\cdot(x-x_0)+\color{green}{f(}x_0\color{green}{)}$.
As for the proof, you have a great deal of information about the tangent line to the function $f(x)$ at the point $(x_0, f(x_0))$. If you denote that line as $y=mx+q$, you know that:
\begin{cases}
f(x_0)=m\cdot x_0+q\\
m=f'(x_0)
\end{cases}
so, solving the system you get
\begin{cases}
m=f'(x_0)\\
q=f(x_0)-f'(x_0)\cdot x_0
\end{cases}
thus the line requested is $$y=f'(x_0)\cdot x+f(x_0)-f'(x_0)\cdot x_0=f'(x_0)\cdot(x-x_0)+f(x_0)\qquad Q.E.D$$
