# Black-Box Groups

- [Introduction](introduction.md)

- [Construction of an SLP-Group and its Elements](creation.md)

  - [Structure Constructors](creation.md#structure-constructors)

    - [`NaturalBlackBoxGroup(H): Grp → GrpBB`](creation.md#function-naturalblackboxgroup-grp)

  - [Construction of an Element](creation.md#construction-of-an-element)

    - [`Identity(G): GrpBB → GrpBBElt`](creation.md#function-identity-grpbb)

    - [`Id(G): GrpBB → GrpBBElt`](creation.md#function-id-grpbb)

    - [`G ! 1: GrpBB, RngIntElt → GrpBBElt`](creation.md#operation-op-grpbb-rngintelt)

- [Arithmetic with Elements](operation.md)

  - [`u * v: GrpBBElt, GrpBBElt → GrpBBElt`](operation.md#operation-op-times-grpbbelt-grpbbelt)

  - [`u ^ m: GrpBBElt, RngIntElt → GrpBBElt`](operation.md#operation-op-pow-grpbbelt-rngintelt)

  - [`u ^ v: GrpBBElt, GrpBBElt → GrpBBElt`](operation.md#operation-op-pow-grpbbelt-grpbbelt)

  - [`(u, v): GrpBBElt, GrpBBElt → GrpBBElt`](operation.md#literal-literal-u-v-grpbbelt-grpbbelt-grpbbelt)

  - [Accessing the Defining Generators](operation.md#accessing-the-defining-generators)

    - [`G . i: GrpBB, RngIntElt → GrpBBElt`](operation.md#operation-operation-grpbb-rngintelt-grpbbelt)

    - [`Generators(G): GrpBB → { GrpBBElt}`](operation.md#function-generators-grpbb)

    - [`NumberOfGenerators(G): GrpBB → RngIntElt`](operation.md#function-numberofgenerators-grpbb)

    - [`Ngens(G): GrpBB → RngIntElt`](operation.md#function-ngens-grpbb)

- [Operations on Elements](operation-element.md)

  - [Equality and Comparison](operation-element.md#equality-and-comparison)

    - [`u eq v: GrpBBElt, GrpBBElt → BoolElt`](operation-element.md#operation-op-eq-grpbbelt-grpbbelt)

    - [`u ne v: GrpBBElt, GrpBBElt → BoolElt`](operation-element.md#operation-op-ne-grpbbelt-grpbbelt)

  - [Attributes of Elements](operation-element.md#attributes-of-elements)

    - [`Parent(u): GrpBBElt → GrpBB`](operation-element.md#function-parent-grpbbelt)

    - [`UnderlyingElement(u): GrpBBElt → GrpElt`](operation-element.md#function-underlyingelement-grpbbelt)

    - [`Order(u): GrpBBElt → RngIntElt`](operation-element.md#function-order-grpbbelt)

    - [`Example: Standard Gens`](operation-element.md#example-ex-124120)

- [Set-Theoretic Operations](set.md)

  - [Membership and Equality](set.md#membership-and-equality)

    - [`g in G: GrpBBElt, GrpBB → BoolElt`](set.md#operation-op-in-grpbbelt-grpbb)

  - [Set Operations](set.md#set-operations)

    - [`PseudoRandom(G): GrpBB → GrpBBElt`](set.md#function-pseudorandom-grpbb)

    - [`Rep(G): GrpBB → GrpBBElt`](set.md#function-rep-grpbb)

  - [Coercions Between Related Groups](set.md#coercions-between-related-groups)

    - [`G ! g: GrpBB, GrpBBElt → GrpBBElt`](set.md#operation-op-grpbb-grpbbelt)
