Temporal Answer Set Programming on Finite Traces