.gitignore
.readthedocs.yaml
CHANGELOG.md
CLAUDE.md
LICENSE
README.md
pyproject.toml
setup.py
.github/workflows/release.yml
.github/workflows/test-install.yml
benchmarks/__init__.py
benchmarks/bench_1m_menu.py
benchmarks/bench_1m_users.py
benchmarks/bench_parquet_1m.py
benchmarks/config.py
benchmarks/e2e_rust_vs_python.py
benchmarks/generate_scaling_plots.py
benchmarks/generators.py
benchmarks/memory_optimized_bench.py
benchmarks/multi_user_bench.py
benchmarks/overhead_analysis.py
benchmarks/r_validation.py
benchmarks/run_scaling.py
benchmarks/rust_vs_python.py
benchmarks/rust_vs_python_all_metrics.py
benchmarks/output/scaling_results.csv
benchmarks/rust_garp/Cargo.lock
benchmarks/rust_garp/Cargo.toml
benchmarks/rust_garp/src/lib.rs
case_studies/benchmarks/__init__.py
case_studies/benchmarks/config.py
case_studies/benchmarks/runner.py
case_studies/benchmarks/core/__init__.py
case_studies/benchmarks/core/evaluation.py
case_studies/benchmarks/core/features.py
case_studies/benchmarks/core/reporting.py
case_studies/benchmarks/datasets/__init__.py
case_studies/benchmarks/datasets/dunnhumby_bench.py
case_studies/benchmarks/datasets/favorita_bench.py
case_studies/benchmarks/datasets/hm_bench.py
case_studies/benchmarks/datasets/instacart_bench.py
case_studies/benchmarks/datasets/m5_bench.py
case_studies/benchmarks/datasets/olist_bench.py
case_studies/benchmarks/datasets/online_retail_ii_bench.py
case_studies/benchmarks/datasets/open_ecommerce_bench.py
case_studies/benchmarks/datasets/pakistan_bench.py
case_studies/benchmarks/datasets/rees46_bench.py
case_studies/benchmarks/datasets/retailrocket_bench.py
case_studies/benchmarks/datasets/taobao_bench.py
case_studies/benchmarks/datasets/tenrec_bench.py
case_studies/benchmarks/datasets/uci_retail_bench.py
case_studies/benchmarks/datasets/yoochoose_bench.py
case_studies/benchmarks/output/results.json
case_studies/benchmarks/output/summary_table.csv
case_studies/datasets/README.md
case_studies/datasets/open_ecommerce/__init__.py
case_studies/datasets/open_ecommerce/config.py
case_studies/datasets/open_ecommerce/data_loader.py
case_studies/datasets/open_ecommerce/download.py
case_studies/datasets/open_ecommerce/price_oracle.py
case_studies/datasets/open_ecommerce/run_all.py
case_studies/datasets/open_ecommerce/run_analysis.py
case_studies/datasets/open_ecommerce/run_validation.py
case_studies/datasets/open_ecommerce/session_builder.py
case_studies/datasets/open_ecommerce/visualize_results.py
case_studies/datasets/uci_retail/__init__.py
case_studies/datasets/uci_retail/config.py
case_studies/datasets/uci_retail/data_loader.py
case_studies/datasets/uci_retail/download.py
case_studies/datasets/uci_retail/run_validation.py
case_studies/datasets/uci_retail/session_builder.py
case_studies/dunnhumby/README.md
case_studies/dunnhumby/__init__.py
case_studies/dunnhumby/advanced_analysis.py
case_studies/dunnhumby/comprehensive_analysis.py
case_studies/dunnhumby/config.py
case_studies/dunnhumby/data_loader.py
case_studies/dunnhumby/download_data.sh
case_studies/dunnhumby/encoder_analysis.py
case_studies/dunnhumby/extended_analysis.py
case_studies/dunnhumby/lancaster_analysis.py
case_studies/dunnhumby/new_algorithms_analysis.py
case_studies/dunnhumby/predictive_analysis.py
case_studies/dunnhumby/price_oracle.py
case_studies/dunnhumby/run_all.py
case_studies/dunnhumby/run_analysis.py
case_studies/dunnhumby/session_builder.py
case_studies/dunnhumby/test_results.py
case_studies/dunnhumby/visualize_results.py
docs/algorithms.rst
docs/api.rst
docs/applications.rst
docs/benchmarks.rst
docs/benchmarks_ecommerce.rst
docs/case_study.rst
docs/conf.py
docs/ecommerce_benchmarking.md
docs/examples.rst
docs/generate_app_figures.py
docs/generate_doc_gifs.py
docs/generate_front_page_plots.py
docs/implementation_status.md
docs/index.rst
docs/installation.rst
docs/performance.rst
docs/quickstart.rst
docs/references.rst
docs/theory_landscape.rst
docs/troubleshooting.rst
docs/validation.rst
docs/_static/app_grocery_hero.jpg
docs/_static/app_llm_benchmark_summary.png
docs/_static/app_llm_hero.jpg
docs/_static/app_recsys_hero.jpg
docs/_static/attention_decay.gif
docs/_static/budget_hero.gif
docs/_static/ccei_algorithm.gif
docs/_static/custom.css
docs/_static/engine_throughput.gif
docs/_static/floyd_warshall.gif
docs/_static/front_aei_distribution.png
docs/_static/front_budget_sets.png
docs/_static/front_ccei_sensitivity.png
docs/_static/front_power_analysis.png
docs/_static/garp_violation.gif
docs/_static/hm_algorithm.gif
docs/_static/logo.svg
docs/_static/menu_hero.gif
docs/_static/perf_memory.png
docs/_static/perf_per_user.png
docs/_static/perf_throughput.png
docs/_static/power_analysis.gif
docs/_static/scc_tarjan.gif
docs/budget/app_grocery.rst
docs/budget/app_llm_alignment.rst
docs/budget/app_llm_benchmark.rst
docs/budget/examples.rst
docs/budget/index.rst
docs/budget/theory_advanced.rst
docs/budget/theory_consistency.rst
docs/budget/theory_efficiency.rst
docs/budget/theory_foundations.rst
docs/budget/theory_spatial.rst
docs/budget/theory_structure.rst
docs/budget/tutorial.rst
docs/budget/tutorial_budget_advanced.rst
docs/budget/tutorial_demand_analysis.rst
docs/budget/tutorial_ecommerce.rst
docs/budget/tutorial_uber_eats.rst
docs/budget/tutorial_welfare.rst
docs/images/analysis_cannibalization.png
docs/images/analysis_income_correlation.png
docs/images/analysis_mpi_distribution.png
docs/images/analysis_separability_matrix.png
docs/images/analysis_spending_patterns.png
docs/images/analysis_time_trends.png
docs/images/analysis_warp_violations.png
docs/images/app_grocery_panel.png
docs/images/app_llm_panel.png
docs/images/app_recsys_panel.png
docs/images/showcase_a_rationality_histogram.png
docs/images/showcase_b_income_vs_rationality.png
docs/images/showcase_c_utility_recovery.png
docs/images/showcase_d_complementarity.png
docs/images/showcase_e_mental_accounting.png
docs/images/showcase_f_inflation_stress.png
docs/images/showcase_g_structural_breaks.png
docs/images/showcase_o_cross_price.png
docs/images/showcase_p_lancaster.png
docs/images/showcase_p_rationality_rescue.png
docs/intertemporal/examples.rst
docs/intertemporal/index.rst
docs/intertemporal/tutorial_intertemporal.rst
docs/menu/app_recsys.rst
docs/menu/examples.rst
docs/menu/index.rst
docs/menu/theory_abstract.rst
docs/menu/theory_attention.rst
docs/menu/theory_stochastic.rst
docs/menu/tutorial_attention.rst
docs/menu/tutorial_context_effects.rst
docs/menu/tutorial_menu_choice.rst
docs/menu/tutorial_ranking.rst
docs/menu/tutorial_risk.rst
docs/menu/tutorial_stochastic.rst
docs/production/examples.rst
docs/production/index.rst
docs/production/theory_production.rst
docs/production/tutorial_production.rst
examples/applications/01_grocery_scanner.py
examples/applications/02_llm_alignment.py
examples/applications/03_recommendation_clicks.py
examples/applications/data/llm_responses.jsonl
examples/applications/llm_benchmark/__init__.py
examples/applications/llm_benchmark/analyze.py
examples/applications/llm_benchmark/config.py
examples/applications/llm_benchmark/figures.py
examples/applications/llm_benchmark/generate_vignettes.py
examples/applications/llm_benchmark/run_benchmark.py
examples/applications/llm_benchmark/data/responses/alert_triage__gpt4omini.jsonl
examples/applications/llm_benchmark/data/responses/alert_triage__o4mini.jsonl
examples/applications/llm_benchmark/data/responses/content_review__gpt4omini.jsonl
examples/applications/llm_benchmark/data/responses/content_review__o4mini.jsonl
examples/applications/llm_benchmark/data/responses/job_screen__gpt4omini.jsonl
examples/applications/llm_benchmark/data/responses/job_screen__o4mini.jsonl
examples/applications/llm_benchmark/data/responses/procurement__gpt4omini.jsonl
examples/applications/llm_benchmark/data/responses/procurement__o4mini.jsonl
examples/applications/llm_benchmark/data/responses/support_ticket__gpt4omini.jsonl
examples/applications/llm_benchmark/data/responses/support_ticket__o4mini.jsonl
examples/applications/llm_benchmark/data/results/summary.json
examples/applications/llm_benchmark/data/vignettes/alert_triage.jsonl
examples/applications/llm_benchmark/data/vignettes/content_review.jsonl
examples/applications/llm_benchmark/data/vignettes/job_screen.jsonl
examples/applications/llm_benchmark/data/vignettes/procurement.jsonl
examples/applications/llm_benchmark/data/vignettes/support_ticket.jsonl
examples/applications/llm_benchmark/v2/EXPERIMENT.md
examples/applications/llm_benchmark/v2/INSPECTION_NOTES.md
examples/applications/llm_benchmark/v2/__init__.py
examples/applications/llm_benchmark/v2/analyze.py
examples/applications/llm_benchmark/v2/config.py
examples/applications/llm_benchmark/v2/generate_vignettes.py
examples/applications/llm_benchmark/v2/run_benchmark.py
examples/applications/llm_benchmark/v2/data/responses/alert_triage__stage1.jsonl
examples/applications/llm_benchmark/v2/data/responses/alert_triage__stage2.jsonl
examples/applications/llm_benchmark/v2/data/responses/content_review__stage1.jsonl
examples/applications/llm_benchmark/v2/data/responses/job_screen__stage1.jsonl
examples/applications/llm_benchmark/v2/data/responses/procurement__stage1.jsonl
examples/applications/llm_benchmark/v2/data/responses/support_ticket__stage1.jsonl
examples/applications/llm_benchmark/v2/data/responses/support_ticket__stage2.jsonl
examples/applications/llm_benchmark/v2/data/results/summary_v2.json
examples/applications/llm_benchmark/v2/data/vignettes/alert_triage.jsonl
examples/applications/llm_benchmark/v2/data/vignettes/content_review.jsonl
examples/applications/llm_benchmark/v2/data/vignettes/job_screen.jsonl
examples/applications/llm_benchmark/v2/data/vignettes/procurement.jsonl
examples/applications/llm_benchmark/v2/data/vignettes/support_ticket.jsonl
examples/contrib/03_risk_analysis.py
examples/contrib/04_spatial_preferences.py
examples/contrib/06_characteristics_model.py
examples/notebooks/01_behavioral_auditor.ipynb
examples/notebooks/01_getting_started.ipynb
examples/notebooks/02_bot_hunter.ipynb
examples/notebooks/02_preference_encoder.ipynb
examples/notebooks/03_account_sharing.ipynb
examples/notebooks/03_risk_analysis.ipynb
examples/notebooks/04_spatial_preferences.ipynb
examples/notebooks/04_ui_detective.ipynb
examples/notebooks/05_advanced_features.ipynb
examples/notebooks/06_characteristics_model.ipynb
examples/notebooks/e2e_pypi_test.ipynb
examples/quickstart/01_behavioral_auditor.py
examples/quickstart/01_quick_start.py
examples/quickstart/02_preference_encoder.py
examples/quickstart/02_scale_scoring.py
examples/quickstart/03_menu_choices.py
examples/quickstart/05_advanced_features.py
examples/quickstart/07_uber_eats_scale.py
examples/scripts/analyze_prest_data.py
examples/tutorials/01_basic_workflow.ipynb
examples/tutorials/02_real_data_analysis.ipynb
examples/tutorials/03_preference_structure.ipynb
references/chapters/Chapter_10_Game_Theory.pdf
references/chapters/Chapter_11_Social_Choice_and_Political_Science.pdf
references/chapters/Chapter_12_Revealed_Preference_and_Systems_of.pdf
references/chapters/Chapter_13_Revealed_Preference_and_Model_Theory.pdf
references/chapters/Chapter_1_Mathematical_Preliminaries.pdf
references/chapters/Chapter_2_Classical_Abstract_Choice_Theory.pdf
references/chapters/Chapter_3_Rational_Demand.pdf
references/chapters/Chapter_4_Topics_in_Rational_Demand.pdf
references/chapters/Chapter_5_Practical_Issues_in_Revealed.pdf
references/chapters/Chapter_6_Production.pdf
references/chapters/Chapter_7_Stochastic_Choice.pdf
references/chapters/Chapter_8_Choice_Under_Uncertainty.pdf
references/chapters/Chapter_9_General_Equilibrium_Theory.pdf
references/chapters_text/Chapter_10_Game_Theory.txt
references/chapters_text/Chapter_11_Social_Choice_and_Political_Science.txt
references/chapters_text/Chapter_12_Revealed_Preference_and_Systems_of.txt
references/chapters_text/Chapter_13_Revealed_Preference_and_Model_Theory.txt
references/chapters_text/Chapter_1_Mathematical_Preliminaries.txt
references/chapters_text/Chapter_2_Classical_Abstract_Choice_Theory.txt
references/chapters_text/Chapter_3_Rational_Demand.txt
references/chapters_text/Chapter_4_Topics_in_Rational_Demand.txt
references/chapters_text/Chapter_5_Practical_Issues_in_Revealed.txt
references/chapters_text/Chapter_6_Production.txt
references/chapters_text/Chapter_7_Stochastic_Choice.txt
references/chapters_text/Chapter_8_Choice_Under_Uncertainty.txt
references/chapters_text/Chapter_9_General_Equilibrium_Theory.txt
references/papers/download_list.md
references/papers/md/AlignmentRevisited2025.md
references/papers/md/Chen2025_RationalitySpecialization.md
references/papers/md/GeHalpern2024_AxiomsAIAlignment.md
references/papers/md/HeuferHjertstrand2015_ConsistentSubsets.md
references/papers/md/Mononen2023_ComputingMeasures.md
references/papers/md/Shiozawa2016_RPShortestPath.md
references/papers/md/SmeuldersCherchyeDeRockSpieksma2014_GoodnessOfFit.md
references/papers/md/SmeuldersSpieksma2013_MoneyPumpComment.md
references/papers/md/TallaNobibonSmeuldersSpieksma2015_GARP_OT2.md
references/papers/md/ZhiXuanCarroll2024_BeyondPreferences.md
references/papers_text/2019 Ian Crawford mini course.txt
references/papers_text/Beatty-DemandingRevealedPreference-2011.txt
references/papers_text/Bronars-PowerNonparametricTests-1987.txt
rust/Cargo.lock
rust/Cargo.toml
rust/crates/rpt-core/Cargo.toml
rust/crates/rpt-core/src/additive.rs
rust/crates/rpt-core/src/attention.rs
rust/crates/rpt-core/src/ccei.rs
rust/crates/rpt-core/src/closure.rs
rust/crates/rpt-core/src/expenditure.rs
rust/crates/rpt-core/src/gapp.rs
rust/crates/rpt-core/src/garp.rs
rust/crates/rpt-core/src/graph.rs
rust/crates/rpt-core/src/harp.rs
rust/crates/rpt-core/src/houtman_maks.rs
rust/crates/rpt-core/src/intertemporal.rs
rust/crates/rpt-core/src/lib.rs
rust/crates/rpt-core/src/lp.rs
rust/crates/rpt-core/src/menu.rs
rust/crates/rpt-core/src/mpi.rs
rust/crates/rpt-core/src/production.rs
rust/crates/rpt-core/src/quasilinear.rs
rust/crates/rpt-core/src/scc.rs
rust/crates/rpt-core/src/separability.rs
rust/crates/rpt-core/src/stochastic.rs
rust/crates/rpt-core/src/types.rs
rust/crates/rpt-core/src/utility.rs
rust/crates/rpt-core/src/variants.rs
rust/crates/rpt-core/src/vei.rs
rust/crates/rpt-core/src/welfare.rs
rust/crates/rpt-python/Cargo.toml
rust/crates/rpt-python/src/batch.rs
rust/crates/rpt-python/src/convert.rs
rust/crates/rpt-python/src/lib.rs
rust/crates/rpt-python/src/parquet_reader.rs
src/prefgraph/__init__.py
src/prefgraph/_kernels.py
src/prefgraph/_rust_backend.py
src/prefgraph/analyze.py
src/prefgraph/auditor.py
src/prefgraph/encoder.py
src/prefgraph/engine.py
src/prefgraph/lancaster.py
src/prefgraph/py.typed
src/prefgraph.egg-info/PKG-INFO
src/prefgraph.egg-info/SOURCES.txt
src/prefgraph.egg-info/dependency_links.txt
src/prefgraph.egg-info/requires.txt
src/prefgraph.egg-info/top_level.txt
src/prefgraph/algorithms/__init__.py
src/prefgraph/algorithms/abstract_choice.py
src/prefgraph/algorithms/acyclical_p.py
src/prefgraph/algorithms/additive.py
src/prefgraph/algorithms/aei.py
src/prefgraph/algorithms/attention.py
src/prefgraph/algorithms/bronars.py
src/prefgraph/algorithms/context_effects.py
src/prefgraph/algorithms/differentiable.py
src/prefgraph/algorithms/gapp.py
src/prefgraph/algorithms/garp.py
src/prefgraph/algorithms/gross_substitutes.py
src/prefgraph/algorithms/harp.py
src/prefgraph/algorithms/inference.py
src/prefgraph/algorithms/integrability.py
src/prefgraph/algorithms/intertemporal.py
src/prefgraph/algorithms/mpi.py
src/prefgraph/algorithms/power_analysis.py
src/prefgraph/algorithms/production.py
src/prefgraph/algorithms/quasilinear.py
src/prefgraph/algorithms/ranking.py
src/prefgraph/algorithms/risk.py
src/prefgraph/algorithms/separability.py
src/prefgraph/algorithms/spatial.py
src/prefgraph/algorithms/stochastic.py
src/prefgraph/algorithms/utility.py
src/prefgraph/algorithms/vei.py
src/prefgraph/algorithms/welfare.py
src/prefgraph/contrib/__init__.py
src/prefgraph/contrib/acyclical_p.py
src/prefgraph/contrib/additive.py
src/prefgraph/contrib/bronars.py
src/prefgraph/contrib/context_effects.py
src/prefgraph/contrib/differentiable.py
src/prefgraph/contrib/gapp.py
src/prefgraph/contrib/gross_substitutes.py
src/prefgraph/contrib/inference.py
src/prefgraph/contrib/integrability.py
src/prefgraph/contrib/intertemporal.py
src/prefgraph/contrib/power_analysis.py
src/prefgraph/contrib/ranking.py
src/prefgraph/contrib/risk.py
src/prefgraph/contrib/separability.py
src/prefgraph/contrib/spatial.py
src/prefgraph/contrib/stochastic.py
src/prefgraph/contrib/welfare.py
src/prefgraph/core/__init__.py
src/prefgraph/core/display.py
src/prefgraph/core/exceptions.py
src/prefgraph/core/mixins.py
src/prefgraph/core/panel.py
src/prefgraph/core/result.py
src/prefgraph/core/session.py
src/prefgraph/core/summary.py
src/prefgraph/core/types.py
src/prefgraph/core/results/__init__.py
src/prefgraph/core/results/abstract_choice.py
src/prefgraph/core/results/advanced.py
src/prefgraph/core/results/attention.py
src/prefgraph/core/results/budget_core.py
src/prefgraph/core/results/budget_extended.py
src/prefgraph/core/results/diagnostics.py
src/prefgraph/core/results/power.py
src/prefgraph/core/results/risk.py
src/prefgraph/core/results/spatial.py
src/prefgraph/datasets/__init__.py
src/prefgraph/datasets/_demo.py
src/prefgraph/datasets/_dunnhumby.py
src/prefgraph/datasets/_favorita.py
src/prefgraph/datasets/_hm.py
src/prefgraph/datasets/_instacart.py
src/prefgraph/datasets/_instacart_menu.py
src/prefgraph/datasets/_instacart_menu_v2.py
src/prefgraph/datasets/_m5.py
src/prefgraph/datasets/_olist.py
src/prefgraph/datasets/_online_retail_ii.py
src/prefgraph/datasets/_open_ecommerce.py
src/prefgraph/datasets/_pakistan.py
src/prefgraph/datasets/_rees46.py
src/prefgraph/datasets/_retailrocket.py
src/prefgraph/datasets/_taobao.py
src/prefgraph/datasets/_tenrec.py
src/prefgraph/datasets/_uci_retail.py
src/prefgraph/datasets/_yoochoose.py
src/prefgraph/graph/__init__.py
src/prefgraph/graph/scc.py
src/prefgraph/graph/transitive_closure.py
src/prefgraph/graph/violation_graph.py
src/prefgraph/io/__init__.py
src/prefgraph/io/parquet.py
src/prefgraph/viz/__init__.py
src/prefgraph/viz/attention_plots.py
src/prefgraph/viz/html_templates.py
src/prefgraph/viz/plots.py
tests/conftest.py
tests/test_analyze.py
tests/test_attention_new.py
tests/test_backend_parity.py
tests/test_diagnostics.py
tests/test_engine_ux.py
tests/test_panel.py
tests/test_parquet_io.py
tests/test_parquet_rust.py
tests/test_phase3_stress.py
tests/test_power_analysis.py
tests/test_result_summary.py
tests/test_rich_summary.py
tests/test_scc_benchmarks.py
tests/test_stochastic_new.py
tests/evals/__init__.py
tests/evals/conftest.py
tests/evals/test_aei_convergence.py
tests/evals/test_attention_limits.py
tests/evals/test_division_hazards.py
tests/evals/test_extreme_values.py
tests/evals/test_garp_stress.py
tests/evals/test_intertemporal_overflow.py
tests/evals/test_lp_failures.py
tests/evals/test_minimal_data.py
tests/evals/test_mpi_cycles.py
tests/evals/test_mutation_bugs.py
tests/evals/test_numerical_stability.py
tests/evals/test_performance.py
tests/evals/test_rum_limits.py
tests/evals/test_singular_matrices.py
tests/evals/test_slutsky_regression.py
tests/evals/test_stochastic_edge_cases.py
tests/evals/test_tolerance_sensitivity.py
tests/evals/test_welfare_optimization.py
tests/simulations/__init__.py
tests/simulations/generators.py
tests/simulations/risk_scenarios.py
tests/simulations/run_all_simulations.py
tests/simulations/separability_scenarios.py
tests/simulations/spatial_scenarios.py
tests/simulations/test_abstract_choice.py
tests/simulations/test_aei_accuracy.py
tests/simulations/test_garp_consistency.py
tests/simulations/test_mpi_calculation.py
tests/simulations/test_utility_recovery.py
tests/simulations/test_welfare.py
tools/split_pdf.py
tools/transcribe_pdf.py