Skip to main content

Arprax Algorithms

Industrial-grade algorithms, performance profilers, and data structures for Python.

Built by Arprax Lab, this toolkit is designed for the "Applied Data Intelligence" era—where understanding how code scales is as important as the code itself.


🚀 Features

  • ArpraxProfiler: High-precision analysis with GC control, warmup cycles, and OHPV2 (Doubling Test) complexity estimation.
  • Industrial Utils: High-performance data factories (random_array, sorted_array) for robust benchmarking.
  • Standard Library: High-performance implementations of classic algorithms (Merge Sort, Bubble Sort, etc.) with strict type hinting.

📦 Installation

# Core only
pip install arprax-algorithms

# With visual tools
pip install arprax-algorithms[visuals]

# With research tools
pip install arprax-algorithms[research]

🔬 Quick Start: Benchmarking

Once installed, you can immediately run a performance battle between algorithms.

from arprax.algos import Profiler
from arprax.algos.utils import random_array  # Clean import from your new 'utils'
from arprax.algos.algorithms import merge_sort # Using the 'lifted' API

# 1. Initialize the industrial profiler
profiler = Profiler(mode="min", repeats=5)

# 2. Run a doubling test (OHPV2 Analysis)
results = profiler.run_doubling_test(
    merge_sort,
    random_array,
    start_n=500,
    rounds=5
)

# 3. Print the performance analysis
profiler.print_analysis("Merge Sort", results)

🎓 Demonstrations & Pedagogy

We provide high-fidelity demonstrations to show the library in action. These are located in the examples/ directory to maintain a decoupled, industrial-grade production environment.

Performance Profiling

Measure execution time, memory usage, and operation counts across different input sizes ($N$):

python examples/demo_profiler.py

Algorithm Visualization

View real-time, frame-by-frame animations of sorting and search logic:

python examples/visualizer.py

🏗️ The Arprax Philosophy

Applied Data Intelligence requires more than just code—it requires proof.

  • Zero-Magic: Every algorithm is written for clarity and performance. We don't hide logic behind obscure abstractions or hidden standard library calls.
  • Empirical Evidence: We don't just guess Big O complexity; we measure it using high-resolution timers and controlled environments.
  • Industrial Scale: Our tools are designed to filter out background CPU noise, providing reliable benchmarks for real-world software engineering.

📚 Citation

To cite the Software: See the "Cite this repository" button on our GitHub.

To cite the Handbook (Documentation):

@manual{arprax_handbook,
  title        = {The Algorithm Engineering Handbook},
  author       = {Chowdhury, Tanmoy},
  organization = {Arprax LLC},
  year         = {2026},
  url          = {https://algorithms.arprax.com/book},
  note         = {Accessed: 2026-02-01}
}

© 2026 Arprax Lab A core division of Arprax dedicated to Applied Data Intelligence.

Metadata

Release files for arprax-algorithms 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for arprax-algorithms 0.3.1
File Size Uploaded
arprax_algorithms-0.3.1.tar.gz 37.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for arprax-algorithms 0.3.1
File Interpreter ABI Platform
arprax_algorithms-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 82.1 kB

Release files / arprax_algorithms-0.3.1.tar.gz

Download URL arprax_algorithms-0.3.1.tar.gz
Size 37.0 kB
Tags Source
SHA-256 checksum
How to use checksums
3b1572f6a06fe151ef116bd6808d56cba5e19e02957968499fd3d542d7beba26
BLAKE2b-256 checksum
How to use checksums
7c86f07b5036d1cb3b02a082b99d528c7ab4db4bd01ab291ade0e07d9545a1e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.14

Release files / arprax_algorithms-0.3.1-py3-none-any.whl

Download URL arprax_algorithms-0.3.1-py3-none-any.whl
Size 45.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1dd1c26bbb0979870fe20cd333f92d8e945d94732ec62e864fc0b978dbc495b4
BLAKE2b-256 checksum
How to use checksums
274839ddc426cffeefe76975c8d6d2c8ee413f1c25e46fbebc45a7f7ee68208e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.14

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page