


ACYCLIC(1)                                             ACYCLIC(1)


NAME
       acyclic - make directed graph acyclic

SYNOPSIS
       acyclic [ -nv?  ] [ -o outfile ] [ file ]

DESCRIPTION
       acyclic  is a filter that takes a directed graph as input and outputs a
       copy of the graph with sufficient edges  reversed  to  make  the  graph
       acyclic. The reversed edge inherits all of the attributes of the origi-
       nal edge. The optional file argument  specifies  where  the  the  input
       graph is stored; by default, the program reads from stdin.

OPTIONS
       The following options are supported:

       -n     No  output  is  produced,  though the return value will indicate
              whether the graph is acyclic or not.

       -v     Print information about whether the file is acyclic, has a cycle
              or is undirected.

       -o outfile
              causes  the  output  to  be  written  to  the specified file; by
              default, output is written to stdout.

       -?     option causes the program to print usage information.

RETURN CODES
       acyclic returns 0 if the graph is acyclic; 1 if the graph has a  cycle;
       2 if the graph is undirected; and 255 if there are any errors.

BUGS
       If the graph is strict and there is a cycle of length 2, the attributes
       of the reversed edge are lost.

       Some edge attributes are non-symmetric, referring to either the head or
       tail node. At present, there is no mechanism or convention for for cor-
       rectly switching or renaming these.

AUTHORS
       Stephen C. North <north@research.att.com>
       Emden R. Gansner <erg@research.att.com>

SEE ALSO
       gc(1), dot(1), gvpr(1), gvcolor(1), ccomps(1), sccmap(1), tred(1), lib-
       graph(3)










                          21 March 2001                         1


