Procela analysis tools for epistemic simulation audit
Project description
Procela Analysis
Overview
Procela Analysis converts Procela simulation memory into structured DataFrames and provides a suite of analytical tools for understanding how competing mechanisms behave, when regimes shift, and whether governance interventions succeed.
- MemoryReader: extract hypotheses, resolutions, and errors from Procela variables as pandas DataFrames
- MechanismProfiler: per-mechanism accuracy curves, falsifiability scores, and redundancy detection
- MechanismEcology: population-level analysis — dominance curves, niche overlap, extinction events, diversity indices, rank turnover
- RegimeDetector: unsupervised detection of structural breaks in mechanism error patterns
- TransitionAnalyzer: characterize what changes at regime boundaries
- PolicyStability: compare alternative resolution policies without simulating counterfactual trajectories
- Epistemic signals: rolling error, coverage, fragility, disagreement index, confidence spread
- AuditReport: self-contained interactive HTML report for publication supplementary materials
- Visualization: publication-ready matplotlib plots for all metrics
Installation
pip install procela-analysis
Quick Start
from procela import Executive, Variable, RangeDomain, WeightedVotingPolicy
from procela_analysis import MemoryReader, MechanismEcology, AuditReport
# Run a Procela simulation
X = Variable("X", RangeDomain(0, 100), policy=WeightedVotingPolicy())
# ... add mechanisms, run simulation ...
# Read memory
reader = MemoryReader(X)
hypotheses = reader.hypotheses()
resolutions = reader.resolutions()
errors = reader.errors()
# Analyze mechanism competition
ecology = MechanismEcology(hypotheses, errors)
dominance = ecology.dominance_curve("X")
extinctions = ecology.extinction_events("X", threshold=0.05)
# Generate an audit report
report = AuditReport(hypotheses, resolutions, errors)
report.generate("audit.html")
Development
git clone https://github.com/kvernet/procela-analysis.git
cd procela-analysis
python -m venv .venv
source .venv/bin/activate
make dev-install
make pre-commit
Citation
If you use Procela Analysis in your research, please cite:
@software{procela_2026,
title={Procela: Epistemic Governance in Mechanistic Simulations Under Structural Uncertainty},
author={Kinson Vernet},
year={2026},
eprint={2604.00675},
archivePrefix={arXiv},
primaryClass={physics.comp-ph},
url={https://arxiv.org/abs/2604.00675},
}
License
Apache 2.0 — see LICENSE.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file procela_analysis-0.1.0.tar.gz.
File metadata
- Download URL: procela_analysis-0.1.0.tar.gz
- Upload date:
- Size: 35.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5d09b77d3f6f0a8bf53acb842a84483b0060d759aae38d778349a7f5eed98f45
|
|
| MD5 |
7d3f67b8eee88ef3c242cb444937235d
|
|
| BLAKE2b-256 |
15bbcd6dc5dbf6bc14f7801aa2780b480fd1665321146c867a4217975fb01af9
|
File details
Details for the file procela_analysis-0.1.0-py3-none-any.whl.
File metadata
- Download URL: procela_analysis-0.1.0-py3-none-any.whl
- Upload date:
- Size: 42.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a41b18fdc518b3bb26524fbb6220a7aca5995704b869cb08c94ae5df5f16727
|
|
| MD5 |
53774209a3d514c4466cd0ea93494e05
|
|
| BLAKE2b-256 |
c15ec70675b1aa161c1a333a02387efd576f0526bf026b8e66e9d35db062b6fc
|