A.42 library(random): Random numbers
AllApplicationManualNameSummaryHelp

  • Documentation
    • Reference manual
      • The SWI-Prolog library
        • library(random): Random numbers
          • random/1
          • random_between/3
          • random/3
          • setrand/1
          • getrand/1
          • maybe/0
          • maybe/1
          • maybe/2
          • random_perm2/4
          • random_member/2
          • random_select/3
          • random_subseq/3
          • randset/3
          • randseq/3
          • random_permutation/2
          • random_numlist/4
    • Packages
Availability::- use_module(library(random)).(can be autoloaded)
Source[det]random_subseq(+List, -Subseq, -Complement)
[semidet]random_subseq(-List, +Subseq, +Complement)
Selects a random subsequence Subseq of List, with Complement containing all elements of List that were not selected. Each element of List is included with equal probability in either Subseq or Complement.

random_subseq/3 may also be called with Subseq and Complement bound and List unbound, which will recreate List by randomly interleaving Subseq and Complement. This mode may fail randomly, matching SICStus behavior. The failure probability corresponds to the probability of the "forward" mode selecting a Subseq/Complement combination with different lengths.

Compatibility
SICStus 4