A fundamental step in any cutting plane algorithm is separation: deciding whether a violated inequality exists within a certain class of inequalities. It is customary to express the complexity of a separation algorithm in n, the number of variables. Here, we argue that the input to a separation algorithm can be expressed in jsup(x)j, where sup(x) denotes the vector containing the positive components of x. This input measure allows one to take sparsity into account. We apply this idea to two known classes of valid inequalities for the three-index assignment problem, and we find separation algorithms with a better complexity than the ones known in literature. We also show empirically the performance of our separation algorithms.