8. Drawing automata The drawing of graphs described here uses  graphviz  , a software for drawing graphs developed at AT & T Labs, that can be obtained at  http://www.research.att.com/sw/tools/graphviz/  . 8.1 Installing some external programs If you work under  LINUX  , you should install graphviz and create the directory  ~ /dot-tmp  . 8.2 Functions to draw automata 8.2-1 DrawAutomaton > DrawAutomaton( A[, file] ) _______________________________________function This function draws automaton  A  writing the needed data in file ~ /dot-tmp/file. 8.2-2 DrawAutomata > DrawAutomata( A, B[, file] ) _____________________________________function This function tests if automaton  A  is a subautomaton of  B  in which case draws  B  highlighting the edges not in  A  by drawing them in a dotted style, while the others are drawn in a plain style and writes the needed data in file ~ /dot-tmp/file. 8.2-3 DrawGraph > DrawGraph( G[, file] ) ___________________________________________function Draws a graph specified as an adjacency list  G  and writes the needed data in file ~ /dot-tmp/file. 8.2-4 DrawSCCAutomaton > DrawSCCAutomaton( A[, file] ) ____________________________________function Draws automaton  A  and highlights it's strongly connected components by drawing their edges in a dotted style and their vertices in a lighter colour. Writes the needed data in file ~ /dot-tmp/file.