Semidefinite programming (SDP) techniques have been extremely successful
in many practical engineering design questions. In several of these
applications, the problem structure is invariant under the action of
some symmetry group, and this property is naturally inherited by the
underlying optimization. A natural question, therefore, is how to
exploit this information for faster, better conditioned, and more
reliable algorithms. To this effect, we study the associative algebra
associated with a given SDP, and show the striking advantages of a
careful use of symmetries. The results are motivated and illustrated
through applications of SDP and sum of squares techniques from networked
control theory, analysis and design of Markov chains, and quantum
information theory.