Force Algorithm to be abstract