Table of Contents
Fetching ...

CDL: A fast and flexible library for the study of permutation sets with structural restrictions

Bei Zhou, Klas Markstrōm, Søren Riis

TL;DR

CDL provides a fast, flexible library for studying permutation sets under structural restrictions, unifying Condorcet domains and pattern-avoiding permutations through TRS/TLS data structures and scheme-based constraints. It offers multiple tuple-orderings, dynamic assignment, domain construction and sizing, isomorphism hashing, and subset-restriction capabilities, all accessible from Python with a performant C++ backend. The framework supports general forbidden permutation domains and includes practical tools for exploration, verification, and visualization, enabling large-scale computational social choice and combinatorics research. The authors demonstrate CDL's impact by enabling new large-domain discoveries and by supporting diverse algorithmic approaches, underscoring its value as a research infrastructure in this active field.

Abstract

In this paper, we introduce CDL, a software library designed for the analysis of permutations and linear orders subject to various structural restrictions. Prominent examples of these restrictions include pattern avoidance, a topic of interest in both computer science and combinatorics, and "never conditions" utilized in social choice and voting theory. CDL offers a range of fundamental functionalities, including identifying the permutations that meet specific restrictions and determining the isomorphism of such sets. To facilitate exploration of large permutation sets or domains, CDL incorporates multiple search strategies and heuristics.

CDL: A fast and flexible library for the study of permutation sets with structural restrictions

TL;DR

CDL provides a fast, flexible library for studying permutation sets under structural restrictions, unifying Condorcet domains and pattern-avoiding permutations through TRS/TLS data structures and scheme-based constraints. It offers multiple tuple-orderings, dynamic assignment, domain construction and sizing, isomorphism hashing, and subset-restriction capabilities, all accessible from Python with a performant C++ backend. The framework supports general forbidden permutation domains and includes practical tools for exploration, verification, and visualization, enabling large-scale computational social choice and combinatorics research. The authors demonstrate CDL's impact by enabling new large-domain discoveries and by supporting diverse algorithmic approaches, underscoring its value as a research infrastructure in this active field.

Abstract

In this paper, we introduce CDL, a software library designed for the analysis of permutations and linear orders subject to various structural restrictions. Prominent examples of these restrictions include pattern avoidance, a topic of interest in both computer science and combinatorics, and "never conditions" utilized in social choice and voting theory. CDL offers a range of fundamental functionalities, including identifying the permutations that meet specific restrictions and determining the isomorphism of such sets. To facilitate exploration of large permutation sets or domains, CDL incorporates multiple search strategies and heuristics.
Paper Structure (13 sections, 2 tables)