# hypersurface

## Name

hypersurface — A single normal hypersurface in a 4-manifold triangulation

## Synopsis

Content Model

    hypersurface ::= (#PCDATA,
                 compact (surface)?, realbdry (surface)?)

Attributes
Name | Type
`len` | NUMBER (required)
`name` | CDATA

## Description

A `hypersurface` element stores a single normal hypersurface in a 4-manifold triangulation.

A normal hypersurface in a `P`-pentachoron triangulation is traditionally represented by a vector of integers, whose length depends upon the underlying coordinate system. For instance, under standard tetrahedron-prism coordinates the vector will have length 15`P`. The underlying coordinate system is specified in the `params` element of the parent `packet` (normal hypersurface list).

The normal hypersurface vector is stored as the character data of this XML element as follows. Since a normal hypersurface vector will generally contain many zeroes, only the non-zero elements are listed. The character data should thus consist of a whitespace-separated sequence of integer pairs. Each integer pair represents a non-zero coordinate in the vector; the first element of the pair identifies which coordinate is being described (coordinates are numbered 0, 1, 2, ...) and the second element of the pair is the actual value at this coordinate.

### Parents

The following elements contain `hypersurface`: `packet` (normal hypersurface list).

### Children

The following elements occur in `hypersurface`: `compact` (surface), `realbdry` (surface).

## Attributes

`len`

  The length of the underlying normal hypersurface vector. This depends upon the coordinate system in which the normal hypersurface was originally generated.

`name`

  A human-readable name given to this hypersurface. Hypersurface names need not be distinct and exist merely for the convenience of the user.

## Example

The following XML snippet represents a normal hypersurface in a 4-pentachoron triangulation. The normal hypersurface vector is:

    (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0,
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0,
     0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
     0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0)

The child elements of this normal surface indicate that the surface is compact and has no real boundary.

    <hypersurface len="60"> 10 1 25 1 36 1 51 1
        <realbdry value="F"/>
        <compact value="T"/> </hypersurface>