wolffd@0: .TH ACYCLIC 1 "21 March 2001" wolffd@0: .SH NAME wolffd@0: acyclic \- make directed graph acyclic wolffd@0: .SH SYNOPSIS wolffd@0: .B acyclic wolffd@0: [ wolffd@0: .B \-nv? wolffd@0: ] [ wolffd@0: .B \-o wolffd@0: .I outfile wolffd@0: ] wolffd@0: [ wolffd@0: .I file wolffd@0: ] wolffd@0: .SH DESCRIPTION wolffd@0: .B acyclic wolffd@0: is a filter that takes a directed graph as input and outputs wolffd@0: a copy of the graph with sufficient edges reversed to make wolffd@0: the graph acyclic. The reversed edge inherits all of the attributes wolffd@0: of the original edge. The optional file argument specifies where the wolffd@0: the input graph is stored; by default, the program reads from \fBstdin\fP. wolffd@0: .SH OPTIONS wolffd@0: The following options are supported: wolffd@0: .TP wolffd@0: .B \-n wolffd@0: No output is produced, though the return value wolffd@0: will indicate whether the graph is acyclic or not. wolffd@0: .TP wolffd@0: .B \-v wolffd@0: Print information about whether the file is acyclic, has a cycle or wolffd@0: is undirected. wolffd@0: .TP wolffd@0: .BI \-o " outfile" wolffd@0: causes the output to be written to the specified file; by default, wolffd@0: output is written to \fBstdout\fP. wolffd@0: .TP wolffd@0: .B \-? wolffd@0: option causes the program to print usage information. wolffd@0: .SH RETURN CODES wolffd@0: .B acyclic wolffd@0: returns wolffd@0: .B 0 wolffd@0: if the graph is acyclic; wolffd@0: .B 1 wolffd@0: if the graph has a cycle; wolffd@0: .B 2 wolffd@0: if the graph is undirected; and wolffd@0: .B 255 wolffd@0: if there are any errors. wolffd@0: .SH BUGS wolffd@0: If the graph is strict and there is a cycle of length 2, wolffd@0: the attributes of the reversed edge are lost. wolffd@0: .PP wolffd@0: Some edge attributes are non-symmetric, referring to either the head wolffd@0: or tail node. At present, there is no mechanism or convention for wolffd@0: for correctly switching or renaming these. wolffd@0: .SH AUTHORS wolffd@0: Stephen C. North wolffd@0: .br wolffd@0: Emden R. Gansner wolffd@0: .SH "SEE ALSO" wolffd@0: gc(1), dot(1), gvpr(1), gvcolor(1), ccomps(1), sccmap(1), tred(1), libgraph(3)