theory of arrays