Can we encode tree structures into Tensor Product Representations (TPR’s) where the rank of the TPR doesn’t grow with the depth of the tree? This project develops a new technique called Recursive Matrix Roles to generate child roles from a given parent role (and with the same dimensionality as the parent role). After allocating a fixed set of roles for the first level children, this technique allows the remaining child roles of a tree to be dynamically allocated in a predictable (and learnable) way. Two proof-of-concept examples are developed using the technique: beta reduction and tree adjoining.