# Access Functions

## `# S: List -> RngIntElt`

The length of the list $S$.

## `IsEmpty(S): List -> BoolElt`

Return whether $S$ is empty (has zero length).

## `S[i]: List, RngIntElt -> Elt`

Return the $i$-th term of the list $S$. If either $i \leq 0$ or $i > \#S + 1$, then an error results. Here $i$ is allowed to be a multi-index (see Section [Multi-indexing](../IntroductionToAggregates/nesting.md#aggr-multi-ind) for the interpretation).

## `S[I]: List, [RngIntElt] -> List`

Return the sublist of $S$ given by the indices in the sequence $I$. Each index in $I$ must be in the range $[1..l$], where $l$ is the length of $S$.

## `IsDefined(L, i): List, RngIntElt -> Elt`

Checks whether the $i$th item in $L$ is defined or not, that is it returns `true` if $i$ is at most the length of $L$ and `false` otherwise.
