Skip to main content

Procela analysis tools for epistemic simulation audit

Project description

Procela Analysis

Analysis and audit tools for Procela simulations

PyPI version PyPI version Python 3.10+ License Documentation CI

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

procela_analysis-0.1.0.tar.gz (35.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

procela_analysis-0.1.0-py3-none-any.whl (42.1 kB view details)

Uploaded Python 3

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

Hashes for procela_analysis-0.1.0.tar.gz
Algorithm Hash digest
SHA256 5d09b77d3f6f0a8bf53acb842a84483b0060d759aae38d778349a7f5eed98f45
MD5 7d3f67b8eee88ef3c242cb444937235d
BLAKE2b-256 15bbcd6dc5dbf6bc14f7801aa2780b480fd1665321146c867a4217975fb01af9

See more details on using hashes here.

File details

Details for the file procela_analysis-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for procela_analysis-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8a41b18fdc518b3bb26524fbb6220a7aca5995704b869cb08c94ae5df5f16727
MD5 53774209a3d514c4466cd0ea93494e05
BLAKE2b-256 c15ec70675b1aa161c1a333a02387efd576f0526bf026b8e66e9d35db062b6fc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page