# Enumeration of Points

In this section the descriptions will refer to a point set $H$, which is either the $H$ in the signature or the base point set of the elliptic curve $E$ in the signature.

## `Points(E): CrvEll -> {@ PtEll @}`

## `Points(H): SetPtEll -> {@ PtEll @}`

## `RationalPoints(E): CrvEll -> {@ PtEll @}`

## `RationalPoints(H): SetPtEll -> {@ PtEll @}`

Returns the set of rational points of the point set $H$ or of the base point set of the elliptic curve $E$, including the point at infinity.

## `Random(E): CrvEll -> PtEll`

## `Random(H): SetPtEll -> PtEll`

Returns a random rational point of the point set $H$ or of the base point set of the elliptic curve $E$. Every rational point has a roughly equal chance of being selected, including the point at infinity.
