  Vector Symbolic Architectures combine a high-dimensional vector space with a
set of carefully designed operators in order to perform symbolic computations
with large numerical vectors. Major goals are the exploitation of their
representational power and ability to deal with fuzziness and ambiguity. Over
the past years, several VSA implementations have been proposed. The available
implementations differ in the underlying vector space and the particular
implementations of the VSA operators. This paper provides an overview of eleven
available VSA implementations and discusses their commonalities and differences
in the underlying vector space and operators. We create a taxonomy of available
binding operations and show an important ramification for non self-inverse
binding operations using an example from analogical reasoning. A main
contribution is the experimental comparison of the available implementations in
order to evaluate (1) the capacity of bundles, (2) the approximation quality of
non-exact unbinding operations, (3) the influence of combining binding and
bundling operations on the query answering performance, and (4) the performance
on two example applications: visual place- and language-recognition. We expect
this comparison and systematization to be relevant for development of VSAs, and
to support the selection of an appropriate VSA for a particular task. The
implementations are available.
