Risk limiting audits via confidence sequences
Project description
RiLACS
This package implements the martingales and confidence sequences from "RiLACS: Risk-limiting audits via confidence sequences" and contains code for reproducing all of the plots therein.
Installation
We currently support Python 3.7--3.10 on macOS (Intel/x86_64 and Apple Silicon) and Linux (x86_64).
pip install rilacs
Installation on other platforms may still be possible, but in that case, the dependency confseq would need to be installed manually. If you would like to see an additional platform supported, please open an issue at confseq, not RiLACS.
Compute a confidence sequence
import numpy as np
from rilacs.confseqs import sqKelly
# Create some data
x = np.random.binomial(1, 0.5, 1000)
# Compute the confidence sequence
l, u = sqKelly(x, N = 1000)
Run unit tests
# Clone the repository
git clone https://github.com/WannabeSmith/RiLACS.git
# Run unit tests via pytest
pytest RiLACS
Reproduce the paper's plots
To generate all plots, we've created a shell script at RiLACS/paper_plots/generate_plots.sh
:
# Enter the plots directory
cd RiLACS/paper_plots
# Execute the script with your shell, e.g.:
zsh generate_plots.sh
Alternatively, you can produce each plot one-by-one:
python RiLACS/paper_plots/distKelly_distributions/distributions.py
python RiLACS/paper_plots/relationship_to_testing/cs_testing_plots.py
# and so on.
App to audit Canada's 2019 federal election
The canada_audit
folder contains code to produce a web application which allows for interactive auditing of Canadian ridings in the 2019 federal election.
For more details, view the README in canada_audit
Contributing
If you find a bug, please open an issue and we'll try to fix it as soon as possible.
Citing
The algorithms in this codebase are based on "RiLACS: Risk-limiting audits via confidence sequences" by Ian Waudby-Smith, Philip B. Stark, and Aaditya Ramdas. The BibTeX entry is provided here.
@inproceedings{waudby2021rilacs, title={RiLACS: Risk Limiting Audits via Confidence Sequences}, author={Waudby-Smith, Ian and Stark, Philip B and Ramdas, Aaditya}, booktitle={International Joint Conference on Electronic Voting}, pages={124--139}, year={2021}, organization={Springer} }
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file rilacs-1.0.3.tar.gz
.
File metadata
- Download URL: rilacs-1.0.3.tar.gz
- Upload date:
- Size: 12.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | af69c4cbf917e4b204310a27c3cb7522c5869fe9dcb21bf210d58f460a4aedb8 |
|
MD5 | 3d526cb6cee3a5d5053174ffc0c9ac62 |
|
BLAKE2b-256 | 5e69ebb201709f336e7ef5d7d4b179399c5b0d000be6f4a16ecd648e2c9864cf |
File details
Details for the file rilacs-1.0.3-py3-none-any.whl
.
File metadata
- Download URL: rilacs-1.0.3-py3-none-any.whl
- Upload date:
- Size: 10.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a7a44c813766925d12793d4869865ec661d5166ec0823a59f102077a93cb40bd |
|
MD5 | ce93a4cbe7c2cb4b5ae6d8d84719e095 |
|
BLAKE2b-256 | 777952d26b475a94ca76570fbee1e7d2b62fbab0e0dcfb7cd573b16690514213 |