object

# `cartesian_products`

Implementation of Cartesian-product operations over lists.

Availability:
`logtalk_load(cartesian_products(loader))`
Author: Paulo Moura
Version: 1:1:0
Date: 2026-05-21
Compilation flags:
`static, context_switching_calls`
Implements:
`public` cartesian_products_protocol
Uses:
fast_random(Algorithm)
list
Remarks:
(none)
Inherited public predicates:
cartesian_product/2 cartesian_product/3 cartesian_tuple/2 cartesian_tuple/3 cartesian_tuple_index/3 cartesian_tuple_index/4 count_cartesian_product/2 count_distinct_cartesian_product/2 distinct_cartesian_product/2 distinct_cartesian_product/3 distinct_cartesian_tuple/2 distinct_cartesian_tuple/3 distinct_cartesian_tuple_index/3 next_cartesian_tuple/3 nth_cartesian_tuple/3 nth_cartesian_tuple/4 nth_distinct_cartesian_tuple/3 previous_cartesian_tuple/3 random_cartesian_tuple/2 random_distinct_cartesian_tuple/2 sample_cartesian_tuples/3 sample_distinct_cartesian_tuples/3

## Public predicates

(no local declarations; see entity ancestors if any)

## Protected predicates

(no local declarations; see entity ancestors if any)

## Private predicates

(no local declarations; see entity ancestors if any)

## Operators

(none)