Abstract Answer Set Solvers with Learning