ACYCLIC(1)

✨ ACYCLIC(1) β€” the acyclic manual, bestie πŸŽ€

Okay so the manual name is acyclic πŸ’…, and its whole job is to make a directed graph acyclic πŸ¦‹. Like, no loops allowed in your graph, periodt πŸ™ˆ.


πŸ’– NAME

acyclic - make directed graph acyclic ✨


🌸 SYNOPSIS

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

🫢 DESCRIPTION

Okay so acyclic is a filter 🧚 that takes a directed graph as input and spits out a copy of that graph with just enough edges reversed to make it acyclic. It's giving main character energy πŸ‘‘. The reversed edge inherits all of the attributes from the original edge, so nothing gets lost in the glow-up ✨.

The optional file argument tells it where the input graph lives πŸ“‚. If you don't give it one, the program reads from stdin by default πŸ’œ.


πŸ‘‘ OPTIONS

The following options are supported πŸ’…:

  • -n β€” No output gets produced πŸ™ˆ, but the return value will tell you whether the graph is acyclic or not πŸ”₯.
  • -v β€” Prints info about whether the file is acyclic, has a cycle, or is undirected 🌈.
  • -o outfile β€” Sends the output to the specified file πŸ“. By default, the output goes to stdout.
  • -? β€” Prints usage information πŸŽ€ (ngl, this one's the "help me bestie" option).

πŸ¦‹ RETURN CODES

acyclic returns:

  • 0 if the graph is acyclic ✨
  • 1 if the graph has a cycle πŸ’€
  • 2 if the graph is undirected 🌸
  • 255 if there are any errors 😭

πŸ™ˆ BUGS

Okay this is the tea β˜•: if the graph is strict and there's a cycle of length 2, the attributes of the reversed edge get lost. Not slay πŸ’€.

Some edge attributes are non-symmetric, meaning they refer to either the head or tail node. Right now there's no mechanism or convention for switching or renaming these correctly 😭, so, lowkey a known problem 🫠.


🧚 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), libgraph(3) 🫢


Bestie, that's the whole manual, and it was written in March 2001 πŸŽ€βœ¨. Stay iconic, and go make some graphs that don't loop back on themselves πŸ’…πŸ¦‹

πŸ“¦ where this page comes from