1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
/*
* elliptic.maxima
*
* (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
*/
p: Y^2+X*Y - X^3 - a*X -b;
x: x1*t+(1-t)*x2;
y: y1*t+(1-t)*y2;
q: subst(x,X,p);
q: subst(y,Y,q);
q: ratsimp(expand(q));
tex(q);
qr: divide(q,t*(t-1),t);
r: qr[2];
q: qr[1];
tex(q);
subst(0,t,r);
subst(1,t,r);
tex(r);
polydecomp(qr[2], t);
s: solve(q = 0, t);
tex(s);
x3: ratsimp(expand(subst(s, x)));
y3: ratsimp(expand(subst(s, y)));
tex(x3);
tex(y3);
Y3: expand(y3 * (x2-x1)^3 - (y2-y1)^3 - (x2-x1)*(y2-y1)^2 );
Y3: factor(expand(Y3));
tex(Y3);
|