SWI-Prolog Did You Know Did you know? SWI-Prolog has multiple high quality random number generators Search Documentation:
Predicate primary_key_column_name/3