<Chapter Label = "Visualising semigroups and elements">
  <Heading>
    Visualising semigroups and elements
  </Heading>

  There are two operations <Ref Oper = "TikzString"/> and <Ref Oper =
    "DotString"/> in &SEMIGROUPS; for creating &LaTeX; and <C>dot</C> (also
  known as GraphViz) format pictures of the Green's class structure of a
  semigroup and for visualising certain types of elements of a semigroup. There
  is also a function <Ref Func = "Splash" BookName = "Digraphs"/> for
  automatically processing the output of <Ref Oper = "TikzString"/> and <Ref
    Oper = "DotString"/> and opening the resulting pdf file.

  <!--**********************************************************************-->
  <!--**********************************************************************-->

  <Section>

    <Heading>
      <C>dot</C> pictures
    </Heading>

    In this section, we describe the operations in &SEMIGROUPS; for creating
    pictures in <C>dot</C> format.
    <P/>

    The operations described in this section return strings, which
    can be written to a file using the function <Ref Func = "FileString"
      BookName = "GAPDoc"/> or viewed using <Ref Func = "Splash" BookName =
      "Digraphs"/>.

    <#Include Label = "DotString"/>
    <#Include Label = "DotStringDigraph"/>
    <#Include Label = "DotSemilatticeOfIdempotents"/>
    <#Include Label = "DotLeftCayleyDigraph">

  </Section>

  <!--**********************************************************************-->
  <!--**********************************************************************-->

  <Section>
    <Heading>
      <C>tex</C> output
    </Heading>
    In this section, we describe the operations in &SEMIGROUPS; for creating
    &LaTeX; representations of &GAP; objects. For pictures of &GAP; objects
    please see Section <Ref Sect="tikz pictures"/>.

    <#Include Label = "TexString">
  </Section>

  <!--**********************************************************************-->
  <!--**********************************************************************-->

  <Section Label="tikz pictures">
    <Heading>
      <C>tikz</C> pictures
    </Heading>

    In this section, we describe the operations in &SEMIGROUPS; for creating
    pictures in <C>tikz</C> format.
    <P/>

    The functions described in this section return a string, which can be
    written to a file using the function <Ref Func = "FileString"
      BookName = "GAPDoc"/> or viewed using <Ref Func = "Splash" BookName =
      "Digraph"/>.

    <#Include Label = "TikzString">
    <#Include Label = "TikzLeftCayleyDigraph">

  </Section>

</Chapter>
