A mathematical basis is proposed for the distinction between associative and relational (symbolic) processing. Associations can be contrasted with relations in terms of ordered pairs versus general ordered N-tuples, and unidirectional access versus omnidirectional access. Relations also have additional properties: they can exhibit predicate-argument bindings, they can be arguments to higher-order structures, and they can participate in operations of selection, projection, join, union, intersection, and difference. Relations can be used to represent structures such as lists, trees and graphs, and relational insUnces can be thought of as propositions. Within neural net architectures, feedforward networks can be identified with associative processing, and tensor product networks with relational processing. Relations have the essential properties of symbolic processing; flexibility, accessibility, and utility for representing complex data structures.