SWI-Prolog program