Tabulation-based Logic Programming : A Multi-level View of Query Answering