Hello hanxu xiao,
I tried to replay step by step your procedure and then I get:
In[2]:= {a, b, c, d, e} =
{{0, 0}, {1, 0}, {0, 1}, {1, 1}, {-1/2, 3/2}}
In[8]:= sub = {{x -> a[[1]], y -> a[[2]]}, {x -> b[[1]],
y -> b[[2]]}, {x -> c[[1]], y -> c[[2]]}, {x -> d[[1]],
y -> d[[2]]}, {x -> e[[1]], y -> e[[2]]}}
Out[8]= {{x -> 0, y -> 0}, {x -> 1, y -> 0}, {x -> 0,
y -> 1}, {x -> 1, y -> 1}, {x -> -(1/2), y -> 3/2}}
In[9]:= (a1 x^2 + b1 x y + c1 y^2 + d1 x + e1 y + 1 == 0) /. sub
Out[9]= {False, 1 + a1 + d1 == 0, 1 + c1 + e1 == 0,
1 + a1 + b1 + c1 + d1 + e1 == 0,
1 + a1/4 - (3 b1)/4 + (9 c1)/4 - d1/2 + (3 e1)/2 == 0}
So it means the form of your equation list called "conic" is not adequate (gives 1==0 when the point is {x->,y-0}
Best regards
Christian