cartesian_productsï
This library provides predicates for generating and querying Cartesian products over lists. The following categories of predicates are provided:
Generation operations - Predicates for generating Cartesian products and tuples.
Ordering variants - Predicates that support an additional order argument (
defaultorlexicographic) for controlling output order.Distinct-value generation - Predicates for generating tuples while deduplicating repeated values in factor lists.
Indexed access - Predicates for direct access to tuples at specific positions.
Lexicographic stepping - Predicates for navigating tuples in lexicographic order.
Counting operations - Predicates for counting tuples without generating them.
Random selection - Predicates for randomly selecting and sampling tuples.
Dedicated arrangements, permutations, combinations,
multisets, derangements, partitions, and subsequences
libraries are also available for focused APIs on related operations.
API documentationï
Open the ../../apis/library_index.html#cartesian_products link in a web browser.
Loadingï
To load all entities in this library, load the loader.lgt file:
| ?- logtalk_load(cartesian_products(loader)).
Testingï
To test this library predicates, load the tester.lgt file:
| ?- logtalk_load(cartesian_products(tester)).