BBP algorithm