難解な数式を簡略化したり、方程式の解を導出したりといった数式の計算をするソフトウエアが数式処理システムです。
Maxima は GPL の元で配布されている数式処理システムで、Lite & Seen Lite でも紹介されています。
試しに、直線の一般式 ax + by +c = 0 に対して座標(x1,y1)-(x2,y2) を通る場合の a, b, c を計算してみます。
solve([式],[解変数])
と入力して[Ctrl]+[Enter] を入力すると、解が表示されます。 この解のうち、%r4 (%r[数字])は任意定数です。 ax+by+c=0なので、任意定数の逆数と分母数を掛けて、
[a' = y2-y1, b'=x1-x2, c'=x2y1-x1y2]
も成立します。
次に、原点を中心とした円と任意の直線の交点を求めてみます。 円と直線の方程式は、
x2+y2=r2
ax + by +c = 0
で表せます。 solve コマンドで連立方程式を解くと解が2つ表示されますので、平方根の部分が虚数かどうかを判断すると交点の座標が計算できます。
http://ja.wikipedia.org/wiki/Maxima