\subsection{Graph Operations} \index{graph operations! from the GUI} 

Several primitive operations on graphs (both unary and binary) are 
available or imminently available from the GUI.  Unary operations 
are selected from the graph menu and are listed below:

\subsection{Unary Operations}\index{unary operations!from the GUI}

\begin{itemize}
\item {\em Complement}\index{graph complement!from the GUI}
		Trivial, but not available yet (7/19/96).
\item {\em Edge Contraction}\index{edge contraction!from the GUI}  	
				The {\em collapse selected} option of 
				the {\em Edit} menu replaces all selected
				items with a single ``super vertex'' {\em sv}.
				Then $(u,sv)$ is an edge if and only if
				$u$ was not selected, and there exists a
				vertex $v$ in the subgraph represented by $sv$
				such that $(u, v)$ was an edge. A similar
				argument holds for $(sv, u)$.  

				In particular, an edge is contracted by 
				selecting its endpoints with $<1st>$, then
				selecting the {\em Collapse Subgraph} option
				or typing {\em s} from the keyboard.
				Super vertices are replaced with the subgraphs
				they represent by selecting them, then
				selecting the {\em expand-selected} option
				from the {\em Edit} menu or typing {\em S}.

\item {\em Induced Subgraphs}\index{induced subgraph!defining from GUI}
		It is very useful sometimes to extract parts of a graph
		and treat them is graphs themselves.  The {\em induced
		subgraph} option of the {\em Edit} menu allows the user
		to extract the subgraph induced by all selected vertices.
		This operation can also be invoked by selecting the 
		vertices and then typing {\em i} on the keyboard.

\item {\em Edge-Induced Subgraphs}\index{edge-induced subgraph!defining from GUI}
		This feature is not implemented yet (7/19/96), but will
		be used in the same manner as {\em induced-subgraph}.
\item {\em Line Graph}\index{graph complement!from the GUI}
		Not available yet (7/19/96).
\end{itemize}
 
\subsubsection{Binary Operations}\index{binary operations!from the GUI}

Binary operations are selected from the main window under
the {\em Graph Operations} menu.  

\begin{itemize}
\item {\em Graph Isomorphism}\index{isomorphism testing!from the GUI}
		Graphs can be tested for isomorphism by selecting the
		{\em isomorphism} option, then clicking on two graphs
		(as instructed by a message window).   A window appears
		indicating whether the graphs are isomorphic or not.
		The actual isomorphism testing is performed by Brendan
		McKay's {\em nauty} system~\cite{bm90}.
\item {\em Graph Sum}\index{graph sum!from the GUI}
\item {\em Graph Product}\index{graph product!from the GUI}
\item {\em Lexicographic Product}\index{lexicographic product!from the GUI}
\end{itemize}
