Find all equations of the form: Ax^2 + Bxy + Cy^2 + Dx + Ey + F = 0 which have the solutions (ie. which go through the points): (-2,0), (-1,1), (0,-2), and (2,1). We set up the homogeneous linear system with 4 by 6 coefficient matrix: (12:36) gp > M=[1,-1,1,-1,1,1;4,0,0,-2,0,1;0,0,4,0,-2,1;4,2,1,2,1,1] %99 = [1 -1 1 -1 1 1] [4 0 0 -2 0 1] [0 0 4 0 -2 1] [4 2 1 2 1 1] The general solution can be written with 2 parameters, say s and t. In column vector form, the transposed vector [A,B,C,D,E,F]^T is given by linear combinations of the two columns of the matrix K below. (12:40) gp > K = matker(M) %101 = [-3/4 -3/8] [9/4 5/8] [1/2 -1/4] [-3/2 -1/4] [1 0] [0 1] Checking, we can write the first column of K as a quadratic equation by taking the coefficients in order A,B,C,D,E,F and call this F(x,y) and the second column, calling it G(x,y). We verify that the equations vanish at the desired set of 4 points. (12:48) gp > F(x,y)=(-3/4)*x^2 + (9/4)*x*y + (1/2)*y^2 + (-3/2)*x + y (12:49) gp > G(x,y)=(-3/8)*x^2+(5/8)*x*y+(-1/4)*y^2+(-1/4)*x+1 (12:50) gp > F(-1,1) %105 = 0 (12:50) gp > F(-2,0) %106 = 0 (12:50) gp > F(0,-2) %107 = 0 (12:50) gp > F(2,1) %108 = 0 (12:51) gp > G(-1,1) %109 = 0 (12:51) gp > G(-2,0) %110 = 0 (12:51) gp > G(0,-2) %111 = 0 (12:51) gp > G(2,1) %112 = 0 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% (Optional) Another method: Here we consider pairs of lines through the 4 points, and form the sum of two 'degenerate' conics. (12:53) gp > H(x,y)=s*(x+y+2)*(y-1)+t*(x-y+2)*(3*x-2*y-4) (12:53) gp > H(-1,1) %113 = 0 (12:54) gp > H(-2,0) %114 = 0 (12:54) gp > H(0,-2) %115 = 0 (12:54) gp > H(2,1) %116 = 0 Collecting the coefficients of H(x,y), we can again write down a matrix of two column vectors giving the solutions to the coefficients A,B,C,D,E,F. (12:41) gp > L=[0,3;1,-5;1,2;-1,2;1,0;-2,-8] %102 = [0 3] [1 -5] [1 2] [-1 2] [1 0] [-2 -8] Check that both methods give the same solution set: (12:43) gp > N = concat (K, L) %103 = [-3/4 -3/8 0 3] [9/4 5/8 1 -5] [1/2 -1/4 1 2] [-3/2 -1/4 -1 2] [1 0 1 0] [0 1 - 2 - 8] (12:43) gp > matimage(N) %104 = [-3/4 -3/8] [9/4 5/8] [1/2 -1/4] [-3/2 -1/4] [1 0] [0 1] The above command gives a basis for the column space of the matrix N, showing that the second two vectors are redundant, and hence generate the same space as the first two, since they are clearly linearly independent.