This repository is the public reproducibility artifact for the paper "Parameterized Exact Fair Decision Tree Learning with Small Sensitive Group Regimes." It contains the memoized exact fair decision tree implementation, experiment runners, processed result tables, and generated figures.
experiment/solvers.py: memoized and uncached exact fair decision tree solversexperiment/run_q2_suite.py: exactness, scalability, cache ablation, and benchmark experimentsexperiment/run_q2_extensions.py: fairness-tolerance, depth, and shared-test experimentsexperiment/run_reviewer_experiments.py: controlled and held-out reviewer experimentsexperiment/run_real_external_validity.py: Adult, Bank Marketing, and German Credit experimentsexperiment/*.csv: run-level and aggregated results reported in the paperfigures/: generated figures used in the paper
Manuscript sources, PDFs, editorial correspondence, and local build files are intentionally excluded.
The reported experiments used Python 3.13.2. Install the pinned dependencies:
python -m venv .venv
python -m pip install -r requirements.txtRun the synthetic and dataset-like experiments from the repository root:
python experiment/run_q2_suite.py
python experiment/run_q2_extensions.py
python experiment/run_reviewer_experiments.py
python experiment/plot_q2_results.pyThe scripts use fixed seeds and write processed CSV files to experiment/ and
figures to figures/.
The raw benchmark datasets are not redistributed. Download them from the UCI Machine Learning Repository:
Arrange the extracted files as follows:
data/
├── adult/
│ └── adult.data
├── bank/
│ └── bank-full.csv
└── german/
└── german.data
Then run:
python experiment/run_real_external_validity.py --data-root dataThe data directory can alternatively be supplied through the
FAIR_TREE_DATA_DIR environment variable.
GitHub Releases provide versioned source snapshots for Zenodo archival. Version 1.0.1 refreshes the citation and deposit metadata without changing the implementation or reported results. The archived release is available at https://doi.org/10.5281/zenodo.21625413.
The software is released under the MIT License. The benchmark datasets remain subject to their source licenses and citation requirements.