Use list iterators to compute implicational closures

Signed-off-by: Daniel Borchmann <daniel.borchmann@mailbox.tu-dresden.de>