CASA Function: planecurve

Check for a plane algebraic curve or a system of plane algebraic curves.

Calling Sequence:

• b := type(expr,planecurve)
• b := type(expr,planecurve("system"))

Parameters:

expr : expression
• any expression

Result:

b : boolean
• a boolean value.

Description:

• The call type(expr,planecurve) checks whether expr defines a plane algebraic curve, i.e., expr has to be an algebraic set in implicit representation represented by a single non-constant polynomial.
• If the algebraic set is affine, the polynomial should be defined in the two variables specifying the algebraic set and should not contain any other indeterminates.
• If the algebraic set is projective the polynomial should be defined in the three variables specifying the algebraic set and should not contain any other indeterminates. Furthermore, it should be homogeneous.
• The call type(expr,planecurve("system")) checks whether expr is a system of plane curves. The defining polynomial of a system of plane curves can contain additional variables to the ones defining the algebraic set.

Examples:

> a1:=mkImplAlgSet([x^2-y^2],[x,y]);

> type(a1,planecurve);

> a2:=mkImplAlgSet([x^2-c*y^2],[x,y]);

> type(a2,planecurve);

> type(a2,planecurve("system"));