beta-clustering-utac 1.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- beta_clustering_utac-1.0.0/.github/ISSUE_TEMPLATE/bug_report.md +35 -0
- beta_clustering_utac-1.0.0/.github/ISSUE_TEMPLATE/feature_request.md +29 -0
- beta_clustering_utac-1.0.0/.github/PULL_REQUEST_TEMPLATE.md +31 -0
- beta_clustering_utac-1.0.0/.github/workflows/ci.yml +63 -0
- beta_clustering_utac-1.0.0/.github/workflows/release.yml +79 -0
- beta_clustering_utac-1.0.0/.gitignore +22 -0
- beta_clustering_utac-1.0.0/.pre-commit-config.yaml +17 -0
- beta_clustering_utac-1.0.0/.zenodo.json +43 -0
- beta_clustering_utac-1.0.0/CHANGELOG.md +22 -0
- beta_clustering_utac-1.0.0/CONTRIBUTING.md +46 -0
- beta_clustering_utac-1.0.0/LICENSE +21 -0
- beta_clustering_utac-1.0.0/PKG-INFO +173 -0
- beta_clustering_utac-1.0.0/README.md +134 -0
- beta_clustering_utac-1.0.0/README_QUICKSTART.md +52 -0
- beta_clustering_utac-1.0.0/RELEASE_GUIDE.md +41 -0
- beta_clustering_utac-1.0.0/contracts/example_full.yaml +37 -0
- beta_clustering_utac-1.0.0/contracts/example_minimal.yaml +7 -0
- beta_clustering_utac-1.0.0/contracts/runtime.schema.yaml +152 -0
- beta_clustering_utac-1.0.0/data/beta_values_literature.yaml +28 -0
- beta_clustering_utac-1.0.0/data/domain_classifications.yaml +35 -0
- beta_clustering_utac-1.0.0/data/utac_v1_78_systems.yaml +329 -0
- beta_clustering_utac-1.0.0/docs/cli.md +88 -0
- beta_clustering_utac-1.0.0/docs/index.md +37 -0
- beta_clustering_utac-1.0.0/docs/templates.md +111 -0
- beta_clustering_utac-1.0.0/mkdocs.yml +43 -0
- beta_clustering_utac-1.0.0/notebooks/01_beta_distribution.ipynb +22 -0
- beta_clustering_utac-1.0.0/notebooks/02_phi_scaling.ipynb +22 -0
- beta_clustering_utac-1.0.0/pyproject.toml +91 -0
- beta_clustering_utac-1.0.0/scripts/validate_runtime.py +209 -0
- beta_clustering_utac-1.0.0/src/beta_clustering/__init__.py +10 -0
- beta_clustering_utac-1.0.0/src/beta_clustering/benchmark.py +26 -0
- beta_clustering_utac-1.0.0/src/beta_clustering/beta_estimator.py +71 -0
- beta_clustering_utac-1.0.0/src/beta_clustering/cluster_detector.py +45 -0
- beta_clustering_utac-1.0.0/src/beta_clustering/constants.py +30 -0
- beta_clustering_utac-1.0.0/src/beta_clustering/crep_bridge.py +31 -0
- beta_clustering_utac-1.0.0/src/beta_clustering/domain_mapper.py +25 -0
- beta_clustering_utac-1.0.0/src/beta_clustering/phi_scaling.py +61 -0
- beta_clustering_utac-1.0.0/src/beta_clustering/system.py +181 -0
- beta_clustering_utac-1.0.0/src/beta_clustering/universality_test.py +63 -0
- beta_clustering_utac-1.0.0/src/diamond_setup/__init__.py +4 -0
- beta_clustering_utac-1.0.0/src/diamond_setup/_types.py +13 -0
- beta_clustering_utac-1.0.0/src/diamond_setup/cli.py +183 -0
- beta_clustering_utac-1.0.0/src/diamond_setup/preset.py +84 -0
- beta_clustering_utac-1.0.0/src/diamond_setup/templates/__init__.py +13 -0
- beta_clustering_utac-1.0.0/src/diamond_setup/templates/genesis.py +84 -0
- beta_clustering_utac-1.0.0/src/diamond_setup/templates/minimal.py +171 -0
- beta_clustering_utac-1.0.0/src/diamond_setup/validator.py +67 -0
- beta_clustering_utac-1.0.0/tests/__init__.py +0 -0
- beta_clustering_utac-1.0.0/tests/test_beta_clustering.py +216 -0
- beta_clustering_utac-1.0.0/tests/test_cli.py +120 -0
- beta_clustering_utac-1.0.0/tests/test_preset.py +90 -0
- beta_clustering_utac-1.0.0/tests/test_runtime_contract.py +177 -0
- beta_clustering_utac-1.0.0/tests/test_validator.py +54 -0
- beta_clustering_utac-1.0.0/uv.lock +1231 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug report
|
|
3
|
+
about: Report something that isn't working as expected
|
|
4
|
+
title: "[BUG] "
|
|
5
|
+
labels: bug
|
|
6
|
+
assignees: ""
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Description
|
|
10
|
+
|
|
11
|
+
A clear and concise description of the bug.
|
|
12
|
+
|
|
13
|
+
## Steps to reproduce
|
|
14
|
+
|
|
15
|
+
1. ...
|
|
16
|
+
2. ...
|
|
17
|
+
3. ...
|
|
18
|
+
|
|
19
|
+
## Expected behavior
|
|
20
|
+
|
|
21
|
+
What you expected to happen.
|
|
22
|
+
|
|
23
|
+
## Actual behavior
|
|
24
|
+
|
|
25
|
+
What actually happened (include full error messages / tracebacks if any).
|
|
26
|
+
|
|
27
|
+
## Environment
|
|
28
|
+
|
|
29
|
+
- Package version: (`pip show beta-clustering-utac` or `git describe --tags`)
|
|
30
|
+
- Python version:
|
|
31
|
+
- OS:
|
|
32
|
+
|
|
33
|
+
## Additional context
|
|
34
|
+
|
|
35
|
+
Anything else relevant — logs, screenshots, related issues.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Feature request
|
|
3
|
+
about: Suggest a new feature, module, or enhancement
|
|
4
|
+
title: "[FEATURE] "
|
|
5
|
+
labels: enhancement
|
|
6
|
+
assignees: ""
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Summary
|
|
10
|
+
|
|
11
|
+
A clear and concise description of the feature.
|
|
12
|
+
|
|
13
|
+
## Motivation
|
|
14
|
+
|
|
15
|
+
Why is this needed? What problem does it solve, or what new capability
|
|
16
|
+
does it enable within the GenesisAeon ecosystem?
|
|
17
|
+
|
|
18
|
+
## Proposed approach
|
|
19
|
+
|
|
20
|
+
How might this be implemented? (Sketches, pseudocode, references to
|
|
21
|
+
related GenesisAeon packages or Diamond Interface methods are welcome.)
|
|
22
|
+
|
|
23
|
+
## Alternatives considered
|
|
24
|
+
|
|
25
|
+
Any alternative approaches you've thought about.
|
|
26
|
+
|
|
27
|
+
## Additional context
|
|
28
|
+
|
|
29
|
+
Links to relevant papers, prior discussion, or related issues/PRs.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
## Summary
|
|
2
|
+
|
|
3
|
+
What does this PR do, in one or two sentences?
|
|
4
|
+
|
|
5
|
+
## Related issue(s)
|
|
6
|
+
|
|
7
|
+
Closes #...
|
|
8
|
+
|
|
9
|
+
## Type of change
|
|
10
|
+
|
|
11
|
+
- [ ] Bug fix
|
|
12
|
+
- [ ] New feature
|
|
13
|
+
- [ ] Breaking change (Diamond Interface or other public API)
|
|
14
|
+
- [ ] Documentation
|
|
15
|
+
- [ ] Tooling / CI / release process
|
|
16
|
+
- [ ] Dependency update
|
|
17
|
+
|
|
18
|
+
## Checklist
|
|
19
|
+
|
|
20
|
+
- [ ] Tests added/updated and passing locally (`pytest`)
|
|
21
|
+
- [ ] `CHANGELOG.md` updated under `## [Unreleased]`
|
|
22
|
+
- [ ] Documentation updated (README, docstrings, notebooks if relevant)
|
|
23
|
+
- [ ] If this changes `run_cycle` / `get_crep_state` / `get_utac_state` /
|
|
24
|
+
`get_phase_events` / `to_zenodo_record`: noted as a breaking change
|
|
25
|
+
and version bump plan described above
|
|
26
|
+
- [ ] If this touches scientific claims/predictions: sources cited and
|
|
27
|
+
speculative vs. validated status is clear
|
|
28
|
+
|
|
29
|
+
## Additional notes
|
|
30
|
+
|
|
31
|
+
Anything reviewers should know.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: ["main", "master", "claude/**"]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: ["main", "master"]
|
|
8
|
+
|
|
9
|
+
concurrency:
|
|
10
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
11
|
+
cancel-in-progress: true
|
|
12
|
+
|
|
13
|
+
jobs:
|
|
14
|
+
lint:
|
|
15
|
+
name: Lint (ruff + mypy)
|
|
16
|
+
runs-on: ubuntu-latest
|
|
17
|
+
steps:
|
|
18
|
+
- uses: actions/checkout@v4
|
|
19
|
+
- uses: actions/setup-python@v5
|
|
20
|
+
with:
|
|
21
|
+
python-version: "3.11"
|
|
22
|
+
- name: Install dev dependencies
|
|
23
|
+
run: pip install -e ".[dev]"
|
|
24
|
+
- name: Run ruff
|
|
25
|
+
run: ruff check src tests
|
|
26
|
+
- name: Run mypy
|
|
27
|
+
run: mypy src
|
|
28
|
+
|
|
29
|
+
test:
|
|
30
|
+
name: Tests (Python ${{ matrix.python-version }})
|
|
31
|
+
runs-on: ubuntu-latest
|
|
32
|
+
strategy:
|
|
33
|
+
fail-fast: false
|
|
34
|
+
matrix:
|
|
35
|
+
python-version: ["3.11", "3.12"]
|
|
36
|
+
steps:
|
|
37
|
+
- uses: actions/checkout@v4
|
|
38
|
+
- uses: actions/setup-python@v5
|
|
39
|
+
with:
|
|
40
|
+
python-version: ${{ matrix.python-version }}
|
|
41
|
+
- name: Install dependencies
|
|
42
|
+
run: pip install -e ".[dev]"
|
|
43
|
+
- name: Run pytest with coverage
|
|
44
|
+
run: pytest --cov=src --cov-report=xml
|
|
45
|
+
- name: Upload coverage
|
|
46
|
+
if: matrix.python-version == '3.11'
|
|
47
|
+
uses: codecov/codecov-action@v4
|
|
48
|
+
with:
|
|
49
|
+
token: ${{ secrets.CODECOV_TOKEN }}
|
|
50
|
+
files: coverage.xml
|
|
51
|
+
|
|
52
|
+
docs:
|
|
53
|
+
name: Docs (mkdocs --strict)
|
|
54
|
+
runs-on: ubuntu-latest
|
|
55
|
+
steps:
|
|
56
|
+
- uses: actions/checkout@v4
|
|
57
|
+
- uses: actions/setup-python@v5
|
|
58
|
+
with:
|
|
59
|
+
python-version: "3.11"
|
|
60
|
+
- name: Install dev and docs dependencies
|
|
61
|
+
run: pip install -e ".[dev,docs]"
|
|
62
|
+
- name: Build docs
|
|
63
|
+
run: mkdocs build --strict
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
name: Release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags:
|
|
6
|
+
- "v*.*.*"
|
|
7
|
+
|
|
8
|
+
permissions:
|
|
9
|
+
contents: write
|
|
10
|
+
id-token: write
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
build:
|
|
14
|
+
name: Build distribution
|
|
15
|
+
runs-on: ubuntu-latest
|
|
16
|
+
steps:
|
|
17
|
+
- uses: actions/checkout@v4
|
|
18
|
+
with:
|
|
19
|
+
fetch-depth: 0
|
|
20
|
+
- uses: actions/setup-python@v5
|
|
21
|
+
with:
|
|
22
|
+
python-version: "3.11"
|
|
23
|
+
- name: Install build tools
|
|
24
|
+
run: pip install build
|
|
25
|
+
- name: Build wheel and sdist
|
|
26
|
+
run: python -m build
|
|
27
|
+
- name: Upload artifacts
|
|
28
|
+
uses: actions/upload-artifact@v4
|
|
29
|
+
with:
|
|
30
|
+
name: dist
|
|
31
|
+
path: dist/
|
|
32
|
+
|
|
33
|
+
publish-pypi:
|
|
34
|
+
name: Publish to PyPI
|
|
35
|
+
needs: build
|
|
36
|
+
runs-on: ubuntu-latest
|
|
37
|
+
environment:
|
|
38
|
+
name: pypi
|
|
39
|
+
steps:
|
|
40
|
+
- uses: actions/download-artifact@v4
|
|
41
|
+
with:
|
|
42
|
+
name: dist
|
|
43
|
+
path: dist/
|
|
44
|
+
- name: Publish to PyPI
|
|
45
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
46
|
+
|
|
47
|
+
github-release:
|
|
48
|
+
name: Create GitHub Release
|
|
49
|
+
needs: publish-pypi
|
|
50
|
+
runs-on: ubuntu-latest
|
|
51
|
+
steps:
|
|
52
|
+
- uses: actions/checkout@v4
|
|
53
|
+
- uses: actions/download-artifact@v4
|
|
54
|
+
with:
|
|
55
|
+
name: dist
|
|
56
|
+
path: dist/
|
|
57
|
+
- name: Create GitHub Release
|
|
58
|
+
uses: softprops/action-gh-release@v2
|
|
59
|
+
with:
|
|
60
|
+
files: dist/*
|
|
61
|
+
generate_release_notes: true
|
|
62
|
+
draft: false
|
|
63
|
+
prerelease: ${{ contains(github.ref, 'alpha') || contains(github.ref, 'beta') || contains(github.ref, 'rc') }}
|
|
64
|
+
|
|
65
|
+
publish-zenodo:
|
|
66
|
+
name: Publish to Zenodo
|
|
67
|
+
needs: github-release
|
|
68
|
+
runs-on: ubuntu-latest
|
|
69
|
+
steps:
|
|
70
|
+
- uses: actions/checkout@v4
|
|
71
|
+
- name: Upload to Zenodo
|
|
72
|
+
run: |
|
|
73
|
+
echo "Zenodo upload triggered for tag ${{ github.ref_name }}"
|
|
74
|
+
echo "Configure ZENODO_TOKEN secret and zenodraft/action for automatic upload."
|
|
75
|
+
# Replace with actual zenodo-upload action when token is configured:
|
|
76
|
+
# uses: zenodraft/action@main
|
|
77
|
+
# with:
|
|
78
|
+
# concept-doi: 10.5281/zenodo.XXXXXXXX # <- enter your concept DOI
|
|
79
|
+
# token: ${{ secrets.ZENODO_TOKEN }}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
repos:
|
|
2
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
3
|
+
rev: v0.6.0
|
|
4
|
+
hooks:
|
|
5
|
+
- id: ruff
|
|
6
|
+
args: [--fix]
|
|
7
|
+
- id: ruff-format
|
|
8
|
+
|
|
9
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
10
|
+
rev: v4.6.0
|
|
11
|
+
hooks:
|
|
12
|
+
- id: trailing-whitespace
|
|
13
|
+
- id: end-of-file-fixer
|
|
14
|
+
- id: check-yaml
|
|
15
|
+
- id: check-toml
|
|
16
|
+
- id: check-merge-conflict
|
|
17
|
+
- id: debug-statements
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "beta-clustering-utac: β-Clustering over 78 Threshold Systems with Φ^(1/3) Inter-Cluster Scaling",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Package 32 of the GenesisAeon Feldtheorie framework. Implements the full β-clustering analysis from UTAC v1.0: 78 threshold systems across astrophysics, climate, AI, biology, and neuroscience. Key finding: β clusters by domain (not universal convergence), with inter-cluster ratios following Φ^(1/3) ≈ 1.17480 scaling. Includes Diamond interface (run_cycle, get_crep_state, get_utac_state, get_phase_events, to_zenodo_record), CREP-bridge (β↔Γ), one-way ANOVA universality test, and MLE β-estimator.",
|
|
5
|
+
"creators": [
|
|
6
|
+
{
|
|
7
|
+
"name": "Römer, Johann",
|
|
8
|
+
"affiliation": "MOR Research Collective"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"keywords": [
|
|
12
|
+
"beta-clustering",
|
|
13
|
+
"UTAC",
|
|
14
|
+
"threshold systems",
|
|
15
|
+
"golden ratio",
|
|
16
|
+
"phi scaling",
|
|
17
|
+
"CREP",
|
|
18
|
+
"GenesisAeon",
|
|
19
|
+
"complex systems",
|
|
20
|
+
"criticality",
|
|
21
|
+
"tipping points",
|
|
22
|
+
"phase transitions",
|
|
23
|
+
"universality"
|
|
24
|
+
],
|
|
25
|
+
"license": "MIT",
|
|
26
|
+
"upload_type": "software",
|
|
27
|
+
"related_identifiers": [
|
|
28
|
+
{
|
|
29
|
+
"identifier": "10.5281/zenodo.17472834",
|
|
30
|
+
"relation": "isPartOf",
|
|
31
|
+
"scheme": "doi"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"identifier": "10.5281/zenodo.19645351",
|
|
35
|
+
"relation": "isDocumentedBy",
|
|
36
|
+
"scheme": "doi"
|
|
37
|
+
}
|
|
38
|
+
],
|
|
39
|
+
"notes": "GenesisAeon Package 32. Φ^(1/3) ≈ 1.17480 as universal inter-cluster scaling exponent. Universality hypothesis rejected via one-way ANOVA (F >> 2.5). σ ≈ 2.2 emerges from β-distribution as CREP coupling constant.",
|
|
40
|
+
"communities": [
|
|
41
|
+
{ "identifier": "genesisaeon" }
|
|
42
|
+
]
|
|
43
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/).
|
|
7
|
+
|
|
8
|
+
## [Unreleased]
|
|
9
|
+
|
|
10
|
+
## [1.0.0] - 2026
|
|
11
|
+
### Added
|
|
12
|
+
- Initial v1.0.0 release as part of the GenesisAeon ecosystem-wide 1.0.0
|
|
13
|
+
milestone.
|
|
14
|
+
- Standardized release tooling: `.zenodo.json` (Zenodo community entry),
|
|
15
|
+
`RELEASE_GUIDE.md`, `CONTRIBUTING.md`, issue/PR templates.
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
- Project metadata (`pyproject.toml`) corrected: `[project].name` now
|
|
19
|
+
reads `beta-clustering-utac` (previously `diamond-setup`, a leftover
|
|
20
|
+
from the bundled scaffold tool), description, authors, and project URLs
|
|
21
|
+
updated to match the actual package and its Zenodo DOI
|
|
22
|
+
(10.5281/zenodo.17472834).
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Contributing
|
|
2
|
+
|
|
3
|
+
Thanks for your interest in contributing to this GenesisAeon ecosystem
|
|
4
|
+
package!
|
|
5
|
+
|
|
6
|
+
## Getting started
|
|
7
|
+
|
|
8
|
+
1. Fork and clone the repository.
|
|
9
|
+
2. Create a virtual environment: `python -m venv .venv && source .venv/bin/activate`
|
|
10
|
+
(or `.venv\Scripts\activate` on Windows).
|
|
11
|
+
3. Install in editable mode with dev dependencies:
|
|
12
|
+
`pip install -e ".[dev]"`.
|
|
13
|
+
4. Run the test suite: `pytest`.
|
|
14
|
+
|
|
15
|
+
## Code style
|
|
16
|
+
|
|
17
|
+
- Format and lint with `ruff check src tests`.
|
|
18
|
+
- Type-check with `mypy src` (strict mode).
|
|
19
|
+
- Keep functions documented with docstrings.
|
|
20
|
+
|
|
21
|
+
## Diamond Interface
|
|
22
|
+
|
|
23
|
+
This package implements the GenesisAeon Diamond Interface
|
|
24
|
+
(`run_cycle`, `get_crep_state`, `get_utac_state`, `get_phase_events`,
|
|
25
|
+
`to_zenodo_record`) in `src/beta_clustering/system.py`. Any change to
|
|
26
|
+
these methods' signatures or return shapes is a **breaking change** and
|
|
27
|
+
requires a MAJOR version bump (see `RELEASE_GUIDE.md`).
|
|
28
|
+
|
|
29
|
+
## Pull requests
|
|
30
|
+
|
|
31
|
+
- One logical change per PR.
|
|
32
|
+
- Add or update tests for any behavioral change.
|
|
33
|
+
- Update `CHANGELOG.md` under an `## [Unreleased]` section.
|
|
34
|
+
- Fill out the PR template (`.github/PULL_REQUEST_TEMPLATE.md`).
|
|
35
|
+
|
|
36
|
+
## Reporting issues
|
|
37
|
+
|
|
38
|
+
Please use the issue templates in `.github/ISSUE_TEMPLATE/` — they help us
|
|
39
|
+
triage bug reports vs. feature requests quickly.
|
|
40
|
+
|
|
41
|
+
## Scientific claims
|
|
42
|
+
|
|
43
|
+
This is part of a research framework. If your contribution touches the
|
|
44
|
+
β-clustering model, the Φ^(1/3) scaling claim, or the CREP-bridge:
|
|
45
|
+
- Cite the source (paper, dataset, or prior GenesisAeon Zenodo record).
|
|
46
|
+
- Clearly mark speculative vs. validated claims.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 JohannRömer
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: beta-clustering-utac
|
|
3
|
+
Version: 1.0.0
|
|
4
|
+
Summary: GenesisAeon Package 32 — beta-clustering over 78 threshold systems with Phi^(1/3) inter-cluster scaling; bundles the diamond-setup project scaffold tool
|
|
5
|
+
Project-URL: Homepage, https://github.com/GenesisAeon/beta-clustering-utac
|
|
6
|
+
Project-URL: Repository, https://github.com/GenesisAeon/beta-clustering-utac
|
|
7
|
+
Project-URL: Documentation, https://genesisaeon.github.io/beta-clustering-utac
|
|
8
|
+
Project-URL: Issues, https://github.com/GenesisAeon/beta-clustering-utac/issues
|
|
9
|
+
Project-URL: Zenodo, https://doi.org/10.5281/zenodo.17472834
|
|
10
|
+
Author: Johann Römer
|
|
11
|
+
License: MIT
|
|
12
|
+
License-File: LICENSE
|
|
13
|
+
Keywords: CREP,GenesisAeon,UTAC,beta-clustering,criticality,phi-scaling,scaffold
|
|
14
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
15
|
+
Classifier: Environment :: Console
|
|
16
|
+
Classifier: Intended Audience :: Developers
|
|
17
|
+
Classifier: Intended Audience :: Science/Research
|
|
18
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
19
|
+
Classifier: Programming Language :: Python :: 3
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
22
|
+
Classifier: Topic :: Scientific/Engineering
|
|
23
|
+
Classifier: Topic :: Software Development :: Code Generators
|
|
24
|
+
Requires-Python: >=3.11
|
|
25
|
+
Requires-Dist: pydantic>=2.7
|
|
26
|
+
Requires-Dist: pyyaml>=6.0
|
|
27
|
+
Requires-Dist: rich>=13.7.0
|
|
28
|
+
Requires-Dist: typer>=0.12.0
|
|
29
|
+
Provides-Extra: dev
|
|
30
|
+
Requires-Dist: mypy>=1.10.0; extra == 'dev'
|
|
31
|
+
Requires-Dist: pre-commit>=3.7.0; extra == 'dev'
|
|
32
|
+
Requires-Dist: pytest-cov>=5.0.0; extra == 'dev'
|
|
33
|
+
Requires-Dist: pytest>=8.0.0; extra == 'dev'
|
|
34
|
+
Requires-Dist: ruff>=0.6.0; extra == 'dev'
|
|
35
|
+
Provides-Extra: docs
|
|
36
|
+
Requires-Dist: mkdocs-material>=9.5.0; extra == 'docs'
|
|
37
|
+
Requires-Dist: mkdocs>=1.6.0; extra == 'docs'
|
|
38
|
+
Description-Content-Type: text/markdown
|
|
39
|
+
|
|
40
|
+
# beta-clustering-utac
|
|
41
|
+
|
|
42
|
+
**Package 32 — GenesisAeon Feldtheorie**
|
|
43
|
+
|
|
44
|
+
[](https://github.com/GenesisAeon/beta-clustering-utac/actions/workflows/ci.yml)
|
|
45
|
+
[](https://www.python.org)
|
|
46
|
+
[](LICENSE)
|
|
47
|
+
[](https://doi.org/10.5281/zenodo.17472834)
|
|
48
|
+
[](https://doi.org/10.5281/zenodo.17472834)
|
|
49
|
+
|
|
50
|
+
β-Clustering über 78 Schwellensysteme aus Astrophysik, Klimaforschung, KI, Biologie und Neurowissenschaft. Kern-Ergebnis: **domänenspezifische β-Cluster** mit **Φ^(1/3) ≈ 1.174 Inter-Cluster-Skalierung**.
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## Ergebnis
|
|
55
|
+
|
|
56
|
+
```
|
|
57
|
+
Domain β-Zentrum Beispiele
|
|
58
|
+
─────────────────────────────────────────────────────
|
|
59
|
+
climate 0.09 AMOC, Arktiseis, Amazon
|
|
60
|
+
ecological 0.23 Korallenbleiche, Epidemien
|
|
61
|
+
neural 0.50 Neurale Kritikalität, Anfälle
|
|
62
|
+
astrophysical 0.90 Sternkollaps, AGN-Zündung
|
|
63
|
+
ai 1.75 Grokking, LLM-Emergence
|
|
64
|
+
|
|
65
|
+
Inter-Cluster-Ratio: β_(n+1)/β_n ≈ Φ^(1/3) ≈ 1.17480
|
|
66
|
+
Universalitäts-Hypothese: ABGELEHNT (F-Test, α=0.05)
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Installation
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
pip install beta-clustering-utac
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Quickstart
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
uv sync
|
|
79
|
+
uv run python -c "
|
|
80
|
+
from beta_clustering import BetaClusteringUTAC
|
|
81
|
+
s = BetaClusteringUTAC()
|
|
82
|
+
r = s.run_cycle()
|
|
83
|
+
print(f'Systeme: {r[\"n_systems\"]}')
|
|
84
|
+
print(f'Φ^(1/3): {r[\"phi_cuberoot\"]:.5f}')
|
|
85
|
+
print(f'Inter-Cluster-Ratio: {r[\"inter_cluster_ratio\"]:.4f}')
|
|
86
|
+
print(f'Universalität abgelehnt: {r[\"universality_rejected\"]}')
|
|
87
|
+
"
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## Diamond Interface
|
|
91
|
+
|
|
92
|
+
```python
|
|
93
|
+
from beta_clustering import BetaClusteringUTAC
|
|
94
|
+
|
|
95
|
+
system = BetaClusteringUTAC()
|
|
96
|
+
|
|
97
|
+
# Vollständige Analyse
|
|
98
|
+
result = system.run_cycle(n_systems=78)
|
|
99
|
+
|
|
100
|
+
# CREP-Zustand
|
|
101
|
+
crep = system.get_crep_state() # {C, R, E, P, gamma}
|
|
102
|
+
|
|
103
|
+
# UTAC-Zustand
|
|
104
|
+
utac = system.get_utac_state() # {H, K, r, sigma, beta_mean}
|
|
105
|
+
|
|
106
|
+
# Phasenübergänge (Cluster-Grenzen)
|
|
107
|
+
events = system.get_phase_events()
|
|
108
|
+
|
|
109
|
+
# Zenodo-Metadaten
|
|
110
|
+
record = system.to_zenodo_record()
|
|
111
|
+
|
|
112
|
+
# Φ^(1/3) Skalierungsratio
|
|
113
|
+
ratio = system.phi_scaling_ratio() # ≈ 1.174
|
|
114
|
+
|
|
115
|
+
# Domain-β-Karte
|
|
116
|
+
mapping = system.domain_beta_map() # {domain: beta_centre}
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
## Struktur
|
|
120
|
+
|
|
121
|
+
```
|
|
122
|
+
src/beta_clustering/
|
|
123
|
+
├── system.py # BetaClusteringUTAC — Diamond Interface
|
|
124
|
+
├── constants.py # Φ, Φ^(1/3), Domain-Cluster-Zentren
|
|
125
|
+
├── beta_estimator.py # MLE β-Schätzung aus Schwellendaten
|
|
126
|
+
├── cluster_detector.py # Domänenspezifische Cluster-Erkennung
|
|
127
|
+
├── phi_scaling.py # Φ^(1/3) Inter-Cluster-Analyse
|
|
128
|
+
├── domain_mapper.py # Domain → β-Cluster Mapping
|
|
129
|
+
├── crep_bridge.py # β ↔ Γ Beziehung (CREP-Kopplung)
|
|
130
|
+
├── universality_test.py # Einweg-ANOVA (Universalität vs. Domain-spez.)
|
|
131
|
+
└── benchmark.py # Validierung gegen UTAC v1.0 Targets
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## Falsifizierbare Vorhersage
|
|
135
|
+
|
|
136
|
+
Φ^(1/3)-Skalierung sollte halten, wenn neue Domains (seismisch, Quanten, zellulär) hinzugefügt werden. Jede Domain mit Inter-Cluster-Ratio signifikant ≠ 1.174 falsifiziert die Behauptung.
|
|
137
|
+
|
|
138
|
+
## Tests & Qualität
|
|
139
|
+
|
|
140
|
+
```bash
|
|
141
|
+
uv run pytest # 27 Tests, 90% Coverage
|
|
142
|
+
uv run mypy src/beta_clustering/ # Keine Fehler (strict mode)
|
|
143
|
+
uv run ruff check . # Keine Fehler
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
## Citation
|
|
147
|
+
|
|
148
|
+
[](https://doi.org/10.5281/zenodo.PLACEHOLDER)
|
|
149
|
+
|
|
150
|
+
DOI will be assigned automatically on first GitHub Release once
|
|
151
|
+
Zenodo–GitHub integration is enabled for this repo. Until then, cite the
|
|
152
|
+
existing concept DOI above (`10.5281/zenodo.17472834`).
|
|
153
|
+
|
|
154
|
+
```bibtex
|
|
155
|
+
@software{roemer_beta_clustering_utac_2025,
|
|
156
|
+
author = {Römer, Johann},
|
|
157
|
+
title = {beta-clustering-utac: β-Clustering over 78 Threshold Systems},
|
|
158
|
+
year = {2025},
|
|
159
|
+
publisher = {Zenodo},
|
|
160
|
+
doi = {10.5281/zenodo.17472834},
|
|
161
|
+
url = {https://doi.org/10.5281/zenodo.17472834},
|
|
162
|
+
version = {1.0.0},
|
|
163
|
+
note = {GenesisAeon Package 32 — MOR Research Collective}
|
|
164
|
+
}
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
Auch enthalten: `diamond-setup` — universales Python-Projekt-Scaffold. Siehe [`README_QUICKSTART.md`](README_QUICKSTART.md).
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
GenesisAeon · MOR Research Collective · Johann Römer · Mai 2026
|