# CASA Function: neighbGraph

Computed the neighborhood graph of a plane algebraic curve.

### Calling Sequence:

### Parameters:

- A : algset("impl")
- An algebraic set in implicit representation specifying a plane curve.

### Result:

- l : neighborhoodTree
- The neighborhood tree of the given plane curve.

### Description:

- This function returns the neighborhood tree of the given plane curve. It is represented by a list of form:
- l := [] or [node_1,...,node_n] where node_i := [mult,point,{trans},neighborhoodTree]
- The above structure has to be interpreted in the following way: On the top level, after applying the transformation trans in node_i, the top level points become the projective singularities of the curve. Each point is given its multiplicity. This linear coordinate transformation assures that (1:0:0) and (0:1:0) are not points on the homogenized function of the polynomial defining the plane curve. On the lower levels, we do the following: Move the singularity to the origin (i.e. (0:0:1), apply the transformation trans in node_i such that no tangent at (0:0:1) is an irregular line (i.e. x=0 or y=0), no other fundamental point (i.e. (1:0:0) and (0:1:0)) is on the curve. We get a transformed curve, say F. Now the points we have are the singularities (except (0:1:0)) of the quadratic transformation of F. Then the neighboring tree of all neighboring points is recursively computed.
- For the theory behind neighboring points we refer to [25].
- Additional information on the trace of computation is provided by the userinfo routine.

### Examples:

`> ` **a1:=mkImplAlgSet([y^2*z^3-x^5],[x,y,z],["basespace"="projective"]);**

`> ` **neighbGraph(a1);**

### See Also:

[CASA]
[adjointCurve]