Scryer Prolog

Module random

:- use_module(library(random)).

This library provides probabilistic predicates and random number generators.

To retain desirable declarative properties, predicates that internally use random numbers should be equipped with an argument that specifies the random seed. This makes everything completely reproducible.

maybe.

Succeeds with probability 0.5.

random(-R).

Generates a random floating number between 0 (inclusive) and 1 (exclusive).

random_integer(+Lower, +Upper, -R).

Generates a random integer number between Lower (inclusive) and Upper (exclusive).

Throws instantiation_error if Lower or Upper are variables.

Throws type_error if Lower or Upper aren't integers.

set_random(+Seed).

Sets a seed that will be used for subsequent random generations in this library. It's necessary to set a seed to provide reproducible executions using this library.