Pedro’s research has focused on the use of erasure coding for fault tolerance in distributed algebraic computation and machine learning. What separates this research from traditional methods in the field is that it focuses on encoding the computations themselves as opposed to simply applying erasure coding to data. In particular, this research focuses on dynamically performing algebraic computations on the encoded data itself as opposed to decoding, computing, and re-encoding the data. This novel and emergent field of research has much potential to impact current distributed systems architecture since much of modern distributed computing involves efficient big data storage and analysis. Furthermore, these methods allow for efficient and theoretically optimal fault-tolerant computation on arbitrarily large, distributed datasets. The main types of computations he has focused on are matrix multiplication, tensors, and gradient descent.

Pedro has also performed research in computer algebra and tensor decompositions. In particular, he has done research on speeding up Groebner basis computations for parameter identifiability and estimation of ODE models as well as low-rank approximations of tensor decompositions for multimodal data in genomics. He has also published research in stochastic optimization (in particular, stochastic optimization under chance constraints) and numerical polynomial root-finding.