[proofplan]
Substitute the line $y=mx+c$ into the Weierstrass equation and obtain a cubic polynomial in the $x$-coordinate. The three intersection points of the line with the cubic, counted with multiplicity, give the three roots of this polynomial. Comparing the coefficient of $x^2$ with the coefficient obtained from the factored form gives $x_1+x_2+x_3=m^2$. Finally, the $y$-coordinate lies on the line, and the tangent slope in the doubling case follows from the tangent-line equation obtained by differentiating the defining polynomial.
[/proofplan]
[step:Convert the line intersection into a cubic polynomial in $x$]
Define the polynomial map $F: k^2 \to k$ by
\begin{align*}
F(x,y)=y^2-x^3-ax-b.
\end{align*}
Thus $E$ is the zero locus of $F$. Define the affine line parametrization $\lambda: k \to k^2$ by
\begin{align*}
\lambda(x)=(x,mx+c).
\end{align*}
A point $\lambda(x)$ lies on $E$ exactly when
\begin{align*}
F(\lambda(x))=0.
\end{align*}
Set $f: k \to k$ by
\begin{align*}
f(x)=F(x,mx+c).
\end{align*}
Expanding the square and collecting powers of $x$ gives
\begin{align*}
f(x)=-x^3 + m^2x^2 + (2mc-a)x + (c^2-b).
\end{align*}
[guided]
We want to translate the geometric statement “the line meets the cubic in three points” into an algebraic statement about a polynomial. The defining polynomial of the affine cubic is the map $F: k^2 \to k$ given by
\begin{align*}
F(x,y)=y^2-x^3-ax-b.
\end{align*}
A point $(x,y) \in k^2$ lies on $E$ precisely when $F(x,y)=0$.
The line is given by $y=mx+c$, so we encode it by the map $\lambda: k \to k^2$ given by
\begin{align*}
\lambda(x)=(x,mx+c).
\end{align*}
Substituting the line into the cubic means composing $F$ with $\lambda$. Define $f: k \to k$ by
\begin{align*}
f(x)=F(x,mx+c).
\end{align*}
Then $\lambda(x)$ is an intersection point of the line with $E$ exactly when $f(x)=0$. Expanding the square gives
\begin{align*}
f(x)=m^2x^2+2mcx+c^2-x^3-ax-b.
\end{align*}
Collecting powers of $x$ gives
\begin{align*}
f(x)=-x^3 + m^2x^2 + (2mc-a)x + (c^2-b).
\end{align*}
The important coefficient is the coefficient of $x^2$, which is $m^2$. Since the leading coefficient is $-1$, this coefficient will determine the sum of the three roots after factoring.
[/guided]
[/step]
[step:Compare the expanded and factored forms of the cubic]
Because $P=(x_1,y_1)$, $Q=(x_2,y_2)$, and $P*Q=(x_3,y_3)$ are the three intersections of $\ell$ with $E$, counted with multiplicity, the roots of $f$ are $x_1,x_2,x_3$, with $x_1=x_2$ in the tangent case. Along the nonvertical parametrization $\lambda:k\to k^2$, intersection multiplicity is exactly the root multiplicity of the pulled-back polynomial $f=F\circ\lambda$, since the local equation of the intersection on the line is the one-variable equation $f(x)=0$. Since the leading coefficient of $f$ is $-1$, we have
\begin{align*}
f(x)=-(x-x_1)(x-x_2)(x-x_3).
\end{align*}
Expanding only the terms of degree at least $2$ on the right-hand side gives
\begin{align*}
-(x-x_1)(x-x_2)(x-x_3)= -x^3 + (x_1+x_2+x_3)x^2 + \text{terms of degree at most }1.
\end{align*}
Comparing the coefficient of $x^2$ with the expanded expression for $f$ gives
\begin{align*}
x_1+x_2+x_3=m^2.
\end{align*}
Therefore
\begin{align*}
x_3=m^2-x_1-x_2.
\end{align*}
[/step]
[step:Recover the $y$-coordinate from the line equation]
The point $P*Q=(x_3,y_3)$ lies on the line $\ell$. Since $\ell$ has equation $y=mx+c$, substituting $x=x_3$ gives
\begin{align*}
y_3=mx_3+c.
\end{align*}
[/step]
[step:Compute the tangent slope in the doubling case]
Assume now that $P=Q=(x_1,y_1)$ and $y_1 \ne 0$. The formal partial derivatives of
\begin{align*}
F(x,y)=y^2-x^3-ax-b
\end{align*}
are
\begin{align*}
\frac{\partial F}{\partial x}(x,y)=-3x^2-a.
\end{align*}
Also,
\begin{align*}
\frac{\partial F}{\partial y}(x,y)=2y.
\end{align*}
The tangent line at $P$ is determined by
\begin{align*}
\frac{\partial F}{\partial x}(x_1,y_1)(x-x_1)+\frac{\partial F}{\partial y}(x_1,y_1)(y-y_1)=0.
\end{align*}
Substituting the derivatives gives
\begin{align*}
-(3x_1^2+a)(x-x_1)+2y_1(y-y_1)=0.
\end{align*}
Since $\operatorname{char}(k)\ne 2$ and $y_1\ne 0$, the element $2y_1 \in k$ is nonzero and hence invertible. Solving for $y-y_1$ gives
\begin{align*}
y-y_1=\frac{3x_1^2+a}{2y_1}(x-x_1).
\end{align*}
Thus the tangent line is not vertical and its slope is
\begin{align*}
m=\frac{3x_1^2+a}{2y_1}.
\end{align*}
This proves the stated formulas for both the chord and tangent cases.
[/step]