theory methods and algorithms