TNFR Logo
TheoryLearnSoftwareResearch

On this page

TNFR

Resonant Fractal Nature Theory — a mathematical framework for coherent patterns on graph-coupled networks.

About
  • Project history
  • Editorial policy
  • Contact
Resources
  • GitHub
  • PyPI
  • DOI · Zenodo
Legal
  • MIT License
  • Citation
© 2026 TNFR project — MIT licensed.DOI 10.5281/zenodo.17602860
docs
grammar
PHYSICS_VERIFICATION.md
API_CONTRACTS.mdCANONICAL_OZ_SEQUENCES.mdEMPIRICAL_CONFRONTATION_EEG.mdREADME.mdSTRUCTURAL_FIELDS_TETRAD.mdSTRUCTURAL_INTERFACE_THEORY.md
theory
APPLIED_STRUCTURAL_ANALYSIS.mdCATALOG_TYPE_HYGIENE_PROGRAMME.mdDISSIPATIVE_AND_OPEN_SYSTEMS.mdEMERGENT_ONTOLOGY.mdEXTENDED_FIELDS_AND_DERIVED_QUANTITIES.mdFUNDAMENTAL_THEORY.mdGAUGE_SYMMETRY_AND_UNIFICATION.mdGLOSSARY.mdMATHEMATICAL_DYNAMICS_BASIS.mdMINIMAL_STRUCTURAL_DEGREES.mdNUCLEUS_A_PRIME_LADDER_ATLAS.mdNUCLEUS_B_EQUIVARIANCE_OBSTRUCTIONS.mdPHYSICAL_REGIME_CORRESPONDENCES.mdREADME.mdREMESH_INFINITY_DERIVATION.mdSTRUCTURAL_CONSERVATION_THEOREM.mdSTRUCTURAL_OPERATORS.mdSTRUCTURAL_STABILITY_AND_DYNAMICS.mdTNFR_BSD_RESEARCH_NOTES.mdTNFR_HODGE_RESEARCH_NOTES.mdTNFR_NAVIER_STOKES_RESEARCH_NOTES.mdTNFR_NUMBER_THEORY.mdTNFR_P_VS_NP_RESEARCH_NOTES.mdTNFR_RIEMANN_RESEARCH_NOTES.mdTNFR_VARIATIONAL_PRINCIPLE.mdTNFR_YANG_MILLS_RESEARCH_NOTES.mdTNFR.pdfUNIFIED_GRAMMAR_RULES.md
factorization-lab
analysis
analyze_patterns.pycertificate_manifest.py
benchmarks
benchmark_analysis.pybenchmark_expansion_suite.pyfull_spectrum_factorization.pypaley_gap_extended.pypaley_gap_smoke.pytest_benchmark_suite.py
demos
experiment_contexts
exp_0b1663cd19b7.jsonexp_0bf0054b7474.jsonexp_75a4c8ca616a.jsonexp_848ee0fd1857.jsonexp_f6fe00562193.jsonexp_fdf3da424e1e.json
failure_telemetry_batch.pyfeedback_integration_demo.pyintegration_demo_snapshots.dbseed_management_integration_demo.pysnapshot_integration_demo.pytrajectory_143.jsontrajectory_77.jsontrajectory_89.jsontrajectory_91.jsontrajectory_97.json
docs
FACTORING_PLAYBOOK.mdFALSE_POSITIVE_TEST_SUITE.mdOPERATOR_CERTIFICATES.mdROADMAP.mdSPECTRAL_ROUTE.md
experiment_contexts
exp_cebe1d9e7d8e.json
notebooks
spectral_history.ipynb
scripts
run_false_positive_tests.py
tests
run_false_positive_test_suite.pytest_cli.pytest_false_positive_methodology.pytest_false_positive_verifier.pytest_feedback_integration.pytest_partitioning.pytest_seed_management.pytest_self_opt_support.pytest_snapshot_system.pytest_spectral_paley.pytest_verification_robustness.py
tnfr_factorization
__init__.pyapi.pycli.pyfailure_telemetry.pyfeedback_adapter.pyfeedback_integration.pypartitioning.pyself_opt_support.pyspectral_paley.py
demo_snapshots.dbLICENSE_SNAPSHOT.mdPACKAGE_SUMMARY.mdREADME.mdseed_management.pysnapshot_system.pytest_certificate_hashing.pytest_installation.pyverification_trajectory_77.json
benchmarks
analyze_tetrad_universality.pyb0star_alpha_canonical_product_graphs.pybenchmark_optimization_tracks.pybenchmark_utils.pyboundary_vibration.pybridge_primes_riemann.pychiral_involution.pycli_utils.pycoherence_projector_sense_index.pycommutant_bridge.pycomposition_arithmetic.pyconfinement_zones_test.pyconservation_law_validation.pydirected_paley_bridge.pyemergent_arithmetic_pulse.pyemergent_atom_dynamics.pyemergent_atomic_shells.pyemergent_base_dimension.pyemergent_dimension_dynamics.pyemergent_fractal_pulse.pyemergent_fractal_simplex_dimension.pyemergent_integers_symmetry.pyemergent_musical_nfr.pyemergent_nfr_geometry.pyemergent_nfr_where.pyemergent_rationals.pyemergent_rhythm.pyemergent_screening.pyemergent_shell_cardinals.pyemergent_shell_ordering.pyemergent_simplex_dimension.pyemergent_substrate_symmetry.pyequivariance_wall.pyexternal_phase_gate_validation.pyfield_methods_battery.pygolden_residue_remesh_bridge.pyintegrated_force_regime_study.pyinverse_spectrum_to_symmetry.pyk_phi_safety_demo.pykuramoto_farey_bridge.pymissing_piece_bridge.pymultichannel_interface_benchmark.pynavier_stokes_recipe_bridge.pynodal_propagator_residue_bridge.pyns_moment_hierarchy_cascade.pyoperational_irreducibility.pypaley_bridge.pyphase_curvature_investigation.pyphase_wall.pyphi_s_confinement_investigation.pyprimes_as_consequence.pypulse_phase_coherence_budget.pyREADME.mdremesh_infinity_riemann_baseline.pyremesh_infinity_riemann_composed.pyremesh_infinity_riemann_modified_graph.pyremesh_infinity_riemann_operator.pyremesh_infinity_riemann_spectral_basis.pyremesh_infinity_riemann_spectral_robustness.pyremesh_infinity_riemann_spectral.pyresidue_phase_vs_riemann.pystructural_interface_benchmark.pytemporal_interface_benchmark.pytetrad_results_aggregate.pyu2_destabilization_irreversibility.pyuniversality_clusters.pyxi_c_fast_experiment.py
primality-test
benchmarks
comprehensive_benchmark.py
docs
ADVANCED_INTEGRATION.mdmathematical_foundation.mdperformance_analysis.md
examples
advanced_examples.pybasic_usage.py
tnfr_primality
__init__.py__main__.pyadvanced_cli.pyadvanced_core.pycli.pyconstants.pycore.pyoptimized.py
MANIFEST.inPACKAGE_SUMMARY.mdREADME.mdRELEASE_NOTES_v1.0.mdsetup.pytest_installation.py
tests
core_physics
__init__.pytest_conservation_laws.pytest_delta_nfr_computation_paths.pytest_delta_nfr.pytest_dispersion_coherence_sign_invariance.pytest_emergent_constants_guard.pytest_lyapunov_operators.pytest_nodal_equation.pytest_structural_triad.py
data
replay_manifests
sample_run
_manifest_summary.json_manifest.json_partition_files.txt.gz
self_opt_validation
seed_alpha
paley.json
seed_beta
integration.json
seed_gamma
unknown.json
self_optimization
test_run
partitioned
test_run
test_run_p0.jsontest_run_p1.json
_manifest_summary.json_manifest.json
engines
test_pattern_discovery_manifest.pytest_self_optimization_engine.py
mathematics
__init__.pytest_autodiff.pytest_backends.pytest_dissipative_dynamics.pytest_epi.pytest_factory_patterns.pytest_metrics.pytest_navier_stokes_refounded.pytest_number_theory_canonical.pytest_operators.pytest_residue_networks.pytest_riemann_nodal_pulse.pytest_riemann_pulse_coherence.pytest_spaces.pytest_transforms.pytest_validator.py
operators
test_canonical_operators_modern.pytest_grammar_canon.pytest_grammar_canonical_consistency.pytest_grammar_dynamics.pytest_operator_contracts.pytest_operator_strategies.py
parallel
test_fractal_partition_manifest.py
physics
test_conservation_gauge_unification.pytest_dissipative_conservation.pytest_emergent_chemistry.pytest_field_cache_invalidation.pytest_gauge.pytest_phase_transition.pytest_signatures.pytest_spectral_conservation.pytest_structural_diffusion.pytest_structural_integrity.pytest_symplectic_substrate.pytest_tetrad_bounds.pytest_variational.pytest_yang_mills_closure.pytest_yang_mills_derivability.pytest_yang_mills_scaling.pytest_yang_mills_structural_gap.pytest_yang_mills_u6_sweep.py
scripts
test_run_self_opt_validation.pytest_run_self_optimization.py
sdk
__init__.pytest_simple_advanced.py
__init__.pyconftest.pyREADME.mdtest_breast_cancer_phase_gate_demo.pytest_classical_mechanics.pytest_distributed_fft.pytest_external_phase_gate_validation.pytest_factorization_entrypoint.pytest_multichannel_interface.pytest_nodal_optimizer.pytest_phase_gate_api.pytest_replay_register_manifest.pytest_signal_confrontation.pytest_structural_interface_api.pytest_structural_interface_baselines.pytest_structural_interface_benchmark.pytest_temporal_interface.pytest_vectorized_coherence_length_regression.pytest_wine_quality_phase_gate_demo.pyutils.py
examples
01_foundations
01_hello_world.py02_musical_resonance.py03_network_formation.py04_operator_sequences.py05_coherence_evolution.py06_network_topologies.py07_phase_transitions.py08_emergent_phenomena.py09_visualization_suite.py10_simplified_sdk_showcase.py
02_physics_regimes
11_classical_limit_comparison.py115_operator_contract_audit.py12_classical_mechanics_demo.py13_quantum_mechanics_demo.py14_uncertainty_and_interference.py15_train_crossing_demo.py17_conservation_law_demo.py26_gauge_structure_demo.py27_variational_principle_demo.py28_dissipative_systems_demo.py29_lyapunov_stability_demo.py30_self_optimization_demo.py31_mathematical_constants_basis.py33_complex_field_unification.py34_conservation_protocol_suite.py35_tetrad_irreducibility.py36_grammar_violation_detector.py37_operator_tetrad_synergy.py38_grammar_energy_landscape.py39_nodal_equation_decomposition.py
03_riemann_zeta
157_nodal_pulse_phase_attack.py41_von_mangoldt_zeta_demo.py42_riemann_zeros_as_resonances.py43_prime_ladder_hamiltonian_demo.py44_weil_explicit_formula_demo.py45_li_keiper_demo.py46_weil_tnfr_positivity_demo.py47_alpha_sweep_demo.py48_admissible_family_sweep_demo.py49_nodeaware_gauge_sweep_demo.py50_uniform_coercivity_demo.py51_adaptive_coercivity_demo.py52_paley_gap_coercivity_demo.py53_lyapunov_spectral_positivity_demo.py54_hilbert_polya_demo.py55_structural_zero_density_demo.py56_spectral_emergence_demo.py57_admissible_rescaling_demo.py58_oscillatory_correction_demo.py
04_riemann_L_twisted
59_dirichlet_l_function_demo.py60_dirichlet_l_continuation_demo.py61_dirichlet_l_hamiltonian_demo.py62_dirichlet_weil_explicit_formula_demo.py63_dirichlet_li_keiper_demo.py64_twisted_weil_positivity_demo.py65_twisted_alpha_sweep_demo.py66_twisted_admissible_family_sweep_demo.py67_twisted_nodeaware_gauge_sweep_demo.py68_twisted_hermite_family_demo.py69_twisted_coercivity_uniform_demo.py70_twisted_paley_gap_coercivity_demo.py71_twisted_lyapunov_spectral_demo.py72_twisted_hilbert_polya_demo.py73_twisted_structural_zero_density_demo.py74_twisted_spectral_emergence_demo.py75_twisted_admissible_rescaling_demo.py76_twisted_oscillatory_correction_demo.py
05_type_hygiene
77_remesh_infinity_residue_split_demo.py78_nuf_type_signature_demo.py79_epi_type_signature_demo.py80_phi_type_signature_demo.py81_dnfr_type_signature_demo.py82_remesh_window_type_signature_demo.py83_delta_phi_max_type_signature_demo.py84_coupling_weights_type_signature_demo.py85_tetrad_closure_signature_demo.py86_currents_closure_signature_demo.py87_aggregates_closure_signature_demo.py88_urules_consistency_signature_demo.py89_operator_catalog_discipline_signature_demo.py
06_navier_stokes
158_navier_stokes_two_face_refounded.py
07_number_theory
100_prime_families_orbits.py101_numbers_as_coupled_network.py102_nodal_flow_primes_equilibria.py116_nuf_emergent_prime_visibility.py146_primality_grammatical_inertness.py147_numbers_as_free_monoid_words.py148_capacity_arm_carries_von_mangoldt.py149_p14_is_the_capacity_arm_operator.py153_structural_frequency_rank_cyclotomy.py40_arithmetic_number_theory.py94_generative_number_construction.py95_primes_from_spectral_waves.py96_spectral_vibration_of_coherence.py97_goldbach_additive_multiplicative.pyemergent_chemistry_particles_demo.py
08_emergent_geometry
103_emergent_substrate_meets_riemann.py106_per_node_polarization_geometry.py107_orthogonal_structure_emergent_geometry.py108_emergent_field_generating_structure.py112_structure_predicts_coherence_flow.py113_overdamped_projection_bridge.py114_substrate_conserved_quantities.py117_emergent_geometry_residue_graph.py118_emergent_vs_classical_operator.py119_phase_sector_directed_residue.py120_symmetry_wall_substrate_vs_spectrum.py121_canonical_symmetry_break_negative.py122_factorization_phase_sector.py123_symmetry_sector_decomposition.py124_emergent_metric_fractal_consistency.py125_node_is_the_emergent_substrate.py126_two_layers_base_fiber.py127_base_is_emergent_not_imposed.py128_base_substrate_coemergence.py129_spectral_gap_base_fiber_clock.py130_operators_break_substrate_charges.py131_coemergent_loop_convergence.py132_geometric_phase_holonomy.py133_psi_topological_defects.py134_spectral_dimension_heat_kernel.py135_arrow_of_time_h_theorem.py136_heat_kernel_coefficients.py137_synchronization_transition.py138_structure_frequency_synchronization.py139_grammar_formal_language.py140_grammar_automaton.py141_grammar_rule_decomposition.py142_grammar_operator_quotient.py143_glyphic_function_sublanguage.py144_branching_combinator.py145_syntactic_monoid_starfree.py150_emergent_grammatical_pattern_parry.py151_grammar_in_emergent_geometry.py152_operator_contract_tetrahedron.py154_conductor_annotated_qr_spectrum.py155_ontological_position_of_numbers.py156_emergence_directness_law.py98_emergent_symplectic_substrate.py99_structural_diffusion.pyunified_fields_showcase.py
09_millennium
109_p_vs_np_coherence_synthesis.py110_bsd_rank_structural_pressure.py111_hodge_discrete_and_honest_gap.py
10_applications
159_empirical_confrontation_pipeline.py90_phase_gate_monitor_demo.py91_breast_cancer_phase_gate_demo.py92_wine_quality_phase_gate_demo.py93_structural_interface_demo.pypytorch_cuda_demo.py
README.md
scripts
replay
__init__.pyregister_manifest.py
__init__.pyREADME.mdrebuild_failure_manifest.pyrun_reproducible_benchmarks.pyrun_self_opt_validation.pyrun_self_optimization.pytnfr_is_prime.pyvalidate_conservation_law.pyverify_internal_references.py
src
core
__init__.pyevaluation.py
tnfr
backends
__init__.pyjax_backend.pynumpy_backend.pyoptimized_numpy.pyREADME.mdtorch_backend.py
cli
__init__.py__init__.pyiarguments.pyarguments.pyiexecution.pyexecution.pyiinteractive_validator.pyREADME.mdutils.pyutils.pyi
compat
__init__.pydataclass.pyjsonschema_stub.pymatplotlib_stub.pynumpy_stub.pyREADME.md
config
__init__.py__init__.pyiconstants.pyconstants.pyidefaults_core.pydefaults_init.pydefaults_metric.pydefaults.pyfeature_flags.pyfeature_flags.pyiglyph_constants.pyoperator_names.pyoperator_names.pyiphysics_derivation.pyprecision_modes.pypresets.pypresets.pyiREADME.mdsecurity.pythresholds.pytnfr_config.py
constants
__init__.py__init__.pyialiases.pyaliases.pyicanonical.pymetric.pymetric.pyioperational.py
core
__init__.pycontainer.pydefault_implementations.pyexceptions.pyinterfaces.pyREADME.md
dynamics
__init__.py__init__.pyiadaptation.pyadaptation.pyiadaptive_sequences.pyadaptive_sequences.pyiadelic.pyadvanced_cache_optimizer.pyadvanced_fft_arithmetic.pyaliases.pyaliases.pyibifurcation.pycache_aware_fft_engine.pycanonical.pycanonical.pyicomputational_hub.pycoordination.pycoordination.pyidistributed_fft.pydnfr.pydnfr.pyidynamic_limits.pyemergent_centralization.pyemergent_integration_engine.pyfeedback.pyfeedback.pyifft_backend.pyfft_cache_coordinator.pyfft_dispatchers.pyfft_engine.pyfft_workers.pyfused_dnfr.pyhomeostasis.pyhomeostasis.pyiintegrators.pyintegrators.pyilearning.pylearning.pyimetabolism.pymulti_modal_cache.pynbody_tnfr.pynbody.pynodal_optimizer.pyoptimization_orchestrator.pypropagation.pyREADME.mdruntime.pyruntime.pyisampling.pysampling.pyiselectors.pyselectors.pyiself_optimizing_engine.pyspectral_structural_fusion.pystructural_cache.pystructural_clip.pysymplectic.pyunified_backend.pyunified_mathematical_cache_orchestrator.py
engines
computation
__init__.pyfft_engine.pyunified_fft_engine.pyunified_gpu_system.py
constants
__init__.pycanonical.pyoperational.py
integration
__init__.pyemergent_integration.py
pattern_discovery
__init__.pymathematical_patterns.pymulti_modal_cache.py
self_optimization
__init__.pyengine.py
__init__.pyREADME.md
errors
__init__.pycontextual.py
factorization
__init__.py
flatten
README.md
gamma
README.md
glyph_history
README.md
glyph_runtime
README.md
immutable
README.md
initialization
README.md
io
README.md
math
__init__.pyfields_symbolic.pygrammar_validators.pyoptimizer.pyREADME.mdsymbolic.py
mathematics
__init__.pybackend.pybackend.pyidynamics.pydynamics.pyiepi.pyepi.pyigenerators.pygenerators.pyiliouville.pymetrics.pymetrics.pyinumber_theory.pyoperators_factory.pyoperators_factory.pyioperators.pyoperators.pyioptimized_primality.pyprojection.pyprojection.pyiREADME.mdruntime.pyruntime.pyispaces.pyspaces.pyispectral.pytransforms.pytransforms.pyiunified_cache.pyunified_numerical.pyzeta.py
metrics
__init__.py__init__.pyibuffer_cache.pybuffer_cache.pyicache_utils.pycoherence.pycoherence.pyicommon.pycommon.pyicore.pycore.pyidiagnosis.pydiagnosis.pyiemergence.pyexport.pyexport.pyiglyph_timing.pyglyph_timing.pyilearning_metrics.pylearning_metrics.pyilocal_coherence.pyphase_coherence.pyphase_compatibility.pyREADME.mdreporting.pyreporting.pyisense_index.pysense_index.pyitelemetry.pytetrad.pytrig_cache.pytrig_cache.pyitrig.pytrig.pyi
multiscale
__init__.pyhierarchical.pyREADME.md
navier_stokes
__init__.pyconservative_face.pyoperator.py
node
README.md
observers
README.md
operators
network_analysis
__init__.pysource_detection.py
postconditions
__init__.pymutation.py
preconditions
__init__.pycoherence.pydissonance.pyemission.pymutation.pyreception.pyresonance.py
strategies
__init__.pydefaults.pygpu_strategies.pystrategy.py
__init__.py__init__.pyialgebra.pycanonical_patterns.pycascade.pycoherence.pycontraction.pycoupling.pycycle_detection.pydefinitions_base.pydefinitions.pydefinitions.pyidissonance.pyemission.pyexpansion.pygrammar_application.pygrammar_canon.pygrammar_context.pygrammar_core.pygrammar_dynamics.pygrammar_error_factory.pygrammar_memoization.pygrammar_patterns.pygrammar_telemetry.pygrammar_types.pygrammar_u6.pygrammar_validate.pygrammar.pygrammar.pyihamiltonian.pyhealth_analyzer.pyintrospection.pyjitter.pyjitter.pyilifecycle.pymetabolism.pymetrics_basic.pymetrics_core.pymetrics_network.pymetrics_structural.pymetrics_u6.pymetrics.pymutation.pynodal_equation.pyoperator_contracts.pypattern_detection.pypatterns.pyREADME.mdreception.pyrecursivity.pyregistry.pyregistry.pyiremesh.pyremesh.pyiresonance.pyself_organization.pysilence.pystructural_units.pytransition.py
parallel
__init__.pyauto_scaler.pydistributed.pyengine.pymonitoring.pypartitioner.pyREADME.md
performance
guardrails.py
physics
__init__.py_helpers.pycalibration.pycanonical.pycell.pyclassical_mechanics.pyconservation_gauge_unification.pyconservation.pydissipative_conservation.pyemergent_chemistry.pyemergent_particles.pyextended.pyfields.pygauge.pyintegrity.pyinteractions.pylife.pylyapunov.pypatterns.pyphase_transition.pyquantum_mechanics.pyREADME.mdsignatures.pyspectral_conservation.pyspectral_metrics.pystructural_diffusion.pysymplectic_substrate.pytelemetry.pyunified.pyvariational.pyvectorized_ops.py
primality
__init__.py
recipes
__init__.pycookbook.pyREADME.md
riemann
__init__.pyadmissible_family_sweep.pyadmissible_rescaling.pyaggregates_closure_signature.pyalpha_sweep.pyanalytic_continuation_dirichlet.pyanalytic_continuation.pycoercivity_uniform.pycoupling_weights_type_signature.pycurrents_closure_signature.pydelta_phi_max_type_signature.pydirichlet_l.pydnfr_type_signature.pyepi_type_signature.pyhilbert_polya.pyli_keiper.pylyapunov_spectral_positivity.pynodal_pulse.pynodeaware_gauge_sweep.pynuf_type_signature.pyoperator_catalog_discipline_signature.pyoperator.pyoscillatory_correction.pypaley_gap_coercivity.pyphi_type_signature.pyprime_ladder_hamiltonian.pypulse_coherence.pyremesh_infinity_residue_split.pyremesh_window_type_signature.pyspectral_emergence.pystructural_zero_density.pytelemetry.pytetrad_closure_signature.pytwisted_admissible_family_sweep.pytwisted_admissible_rescaling.pytwisted_alpha_sweep.pytwisted_coercivity_uniform.pytwisted_hermite_family.pytwisted_hilbert_polya.pytwisted_li_keiper.pytwisted_lyapunov_spectral_positivity.pytwisted_nodeaware_gauge_sweep.pytwisted_oscillatory_correction.pytwisted_paley_gap_coercivity.pytwisted_prime_ladder_hamiltonian.pytwisted_spectral_emergence.pytwisted_structural_zero_density.pytwisted_weil_explicit_formula.pytwisted_weil_positivity.pyurules_consistency_signature.pyvon_mangoldt.pyweil_explicit_formula.pyweil_positivity.py
schemas
__init__.pygrammar.jsonREADME.md
sdk
__init__.py__init__.pyiadaptive_system.pyadaptive_system.pyibuilders.pybuilders.pyifluent.pyfluent.pyiREADME.mdself_opt.pysimple.pytemplates.pytemplates.pyiutils.py
security
__init__.pycrypto.pydatabase.pyREADME.mdsubprocess.pyvalidation.py
sequencing
__init__.pypatterns.pyREADME.md
services
__init__.pyorchestrator.pyREADME.md
sparse
__init__.pyREADME.mdrepresentations.py
structural
README.md
telemetry
__init__.pycache_metrics.pycache_metrics.pyiconstants.pynu_f.pynu_f.pyiREADME.mdunified_telemetry_system.pyverbosity.pyverbosity.pyi
tools
__init__.pydomain_templates.pyREADME.mdsequence_generator.pytnfr_is_prime_cli_optimized.pytnfr_is_prime_cli.py
topology
__init__.pyasymmetry.pyREADME.md
utils
cache_layers.pycache.pycache.pyicallbacks.pycallbacks.pyichunks.pychunks.pyidata.pydata.pyifast_diameter.pygraph.pygraph.pyiinit.pyinit.pyiio.pyio.pyinumeric.pynumeric.pyiREADME.mdtopology.pyunified_cache.py
validation
__init__.py__init__.pyiaggregator.pybase.pycompatibility.pycompatibility.pyiconfig.pygraph.pygraph.pyihealth.pyinput_validation.pyinterface_baselines.pyinvariants.pymultichannel_interface.pyphase_gate.pyREADME.mdrules.pyrules.pyiruntime.pyruntime.pyisequence_validator.pysignal_confrontation.pysoft_filters.pysoft_filters.pyispectral.pyspectral.pyistructural_interface.pytemporal_interface.pyunified_validation_system.pyvalidator.pywindow.pywindow.pyi
visualization
__init__.pycascade_viz.pyhierarchy.pyREADME.mdsequence_plotter.py
yang_mills
__init__.pyclosure.pyderivability.pyscaling.pystructural_gap.pyu6_sweep.py
__init__.py__init__.pyi_compat.py_version.py_version.pyialias.pyalias.pyibackend_config.pycache.pycache.pyiexecution.pyexecution.pyiflatten.pyflatten.pyigamma.pygamma.pyiglyph_history.pyglyph_history.pyiglyph_runtime.pyglyph_runtime.pyiimmutable.pyimmutable.pyiinitialization.pyinitialization.pyiio.pyio.pyilocking.pylocking.pyinode.pynode.pyiobservers.pyobservers.pyiontosim.pyontosim.pyipy.typedrng.pyrng.pyisecure_config.pyselector.pyselector.pyisense.pysense.pyistructural.pystructural.pyitokens.pytokens.pyitrace.pytrace.pyitypes.pytypes.pyiunits.pyunits.pyi
tetrad_evaluator.py
.pre-commit-config.yaml.semgrep.yaml.zenodo.jsonARCHITECTURE.mdbandit.yamlCHANGELOG.mdCITATION.cffCONTRIBUTING.mdEMERGENT_CANON_AUDIT.mdEMERGENT_DERIVATION_PLAN.mdLICENSE.mdMakefileMANIFEST.inpyproject.tomlpyrightconfig.jsonPYTORCH_CUDA_INTEGRATION.mdREADME.mdSECURITY.mdTESTING.mdTNFR_Website_Content_Brief.md
FILE: scripts/run_self_optimization.py

run_self_optimization.py

Command-line runner for TNFR self-optimization over partition manifests.

Source Code

python
"""Command-line runner for TNFR self-optimization over partition manifests."""

from __future__ import annotations

import argparse
import json
import sys
import threading
import time
from concurrent.futures import Future, ThreadPoolExecutor, as_completed
from dataclasses import dataclass
from datetime import datetime, timezone
from pathlib import Path
from statistics import fmean
from typing import Any, Dict, Iterable, List, Optional, Sequence

import networkx as nx

REPO_ROOT = Path(__file__).resolve().parents[1]
FACTOR_LAB_ROOT = REPO_ROOT / "factorization-lab"
if (
    FACTOR_LAB_ROOT.exists()
):  # Ensure tnfr_factorization is importable without installation
    sys.path.insert(0, str(FACTOR_LAB_ROOT))

from tnfr_factorization.spectral_paley import (  # type: ignore  # noqa: E402
    _annotate_graph_for_fft,
    _build_paley_graph,
)

import tnfr.dynamics.self_optimizing_engine as _engine_module  # noqa: E402
from tnfr.engines.self_optimization import TNFRSelfOptimizingEngine  # noqa: E402

if not hasattr(_engine_module.datetime, "UTC"):

    class _DateTimeCompat(datetime):
        UTC = timezone.utc

    _engine_module.datetime = _DateTimeCompat

DEFAULT_OUTPUT_DIR = REPO_ROOT / "results" / "self_optimization"
DEFAULT_OPERATION = "paley_partition"
DEFAULT_MAX_WORKERS = 1


@dataclass
class PartitionWorkItem:
    partition_id: str
    path: Path
    manifest_entry: Dict[str, Any]


class PaleyGraphCache:
    """Caches annotated Paley graphs keyed by modulus."""

    def __init__(self) -> None:
        self._cache: Dict[int, nx.Graph] = {}
        self._lock = threading.Lock()

    def get(self, modulus: int) -> nx.Graph:
        with self._lock:
            cached = self._cache.get(modulus)
            if cached is not None:
                return cached
            graph = _build_paley_graph(modulus)
            _annotate_graph_for_fft(graph)
            self._cache[modulus] = graph
            return graph


def parse_args(argv: Optional[Sequence[str]] = None) -> argparse.Namespace:
    parser = argparse.ArgumentParser(description=__doc__)
    parser.add_argument(
        "--manifest", required=True, type=Path, help="Path to partition _manifest.json"
    )
    parser.add_argument(
        "--manifest-summary", type=Path, help="Optional manifest summary path"
    )
    parser.add_argument(
        "--partition-dir",
        type=Path,
        help="Override partition directory (defaults to manifest parent or embedded path)",
    )
    parser.add_argument(
        "--partitions",
        nargs="*",
        help="Optional list of partition IDs to process (default processes all entries)",
    )
    parser.add_argument(
        "--max-partitions", type=int, help="Maximum number of partitions to process"
    )
    parser.add_argument(
        "--seed", type=int, help="Base random seed; partition index offsets are added"
    )
    parser.add_argument(
        "--output-dir",
        type=Path,
        default=DEFAULT_OUTPUT_DIR,
        help="Directory for dry-run payloads and telemetry snapshots",
    )
    parser.add_argument(
        "--operation-type",
        default=DEFAULT_OPERATION,
        help="Operation label passed to TNFRSelfOptimizingEngine",
    )
    parser.add_argument(
        "--max-workers",
        type=int,
        default=DEFAULT_MAX_WORKERS,
        help="Maximum worker threads for partition processing",
    )
    parser.add_argument(
        "--apply",
        action="store_true",
        help="Apply optimization instead of dry-run mode",
    )
    parser.add_argument(
        "--capture-snapshots",
        action="store_true",
        help="Force telemetry snapshot capture even when not in dry-run mode",
    )
    parser.add_argument(
        "--summary",
        type=Path,
        help="Optional path to write aggregated summary JSON (defaults to stdout only)",
    )
    parser.add_argument(
        "--quiet",
        action="store_true",
        help="Suppress per-partition status logs (errors are still reported)",
    )
    return parser.parse_args(argv)


def run(args: argparse.Namespace) -> Dict[str, Any]:
    start = time.perf_counter()
    manifest = _load_json(args.manifest)
    manifest_summary = (
        _load_json(args.manifest_summary) if args.manifest_summary else None
    )
    items = _collect_partition_entries(manifest, args.manifest, args.partition_dir)

    if args.partitions:
        allowed = {pid.strip() for pid in args.partitions if pid}
        items = [item for item in items if item.partition_id in allowed]
        if not items:
            raise ValueError("No manifest entries matched the requested partition IDs")

    if args.max_partitions is not None:
        if args.max_partitions <= 0:
            raise ValueError("--max-partitions must be positive when provided")
        items = items[: args.max_partitions]

    if not items:
        raise ValueError("Manifest did not provide any partition entries")

    output_dir = args.output_dir or DEFAULT_OUTPUT_DIR
    output_dir.mkdir(parents=True, exist_ok=True)

    graph_cache = PaleyGraphCache()
    engine = TNFRSelfOptimizingEngine()
    processor = PartitionProcessor(
        engine=engine,
        graph_cache=graph_cache,
        args=args,
    )

    results = processor.process(items)
    duration = time.perf_counter() - start

    summary = _build_summary(
        manifest=manifest,
        manifest_summary=manifest_summary,
        args=args,
        results=results,
        duration=duration,
    )

    if args.summary:
        _write_json(args.summary, summary)

    return summary


class PartitionProcessor:
    """Handles TNFR self-optimization execution for manifest entries."""

    def __init__(
        self,
        engine: TNFRSelfOptimizingEngine,
        graph_cache: PaleyGraphCache,
        args: argparse.Namespace,
    ) -> None:
        self._engine = engine
        self._graph_cache = graph_cache
        self._args = args

    def process(self, items: Sequence[PartitionWorkItem]) -> List[Dict[str, Any]]:
        max_workers = max(1, int(self._args.max_workers or DEFAULT_MAX_WORKERS))
        results: List[tuple[int, Dict[str, Any]]] = []
        if max_workers == 1:
            for index, item in enumerate(items):
                result = self._process_single(index, item)
                results.append((index, result))
        else:
            with ThreadPoolExecutor(max_workers=max_workers) as executor:
                future_map: Dict[
                    Future[Dict[str, Any]], tuple[int, PartitionWorkItem]
                ] = {}
                for index, item in enumerate(items):
                    future = executor.submit(self._process_single, index, item)
                    future_map[future] = (index, item)
                for future in as_completed(future_map):
                    index, _ = future_map[future]
                    try:
                        result = future.result()
                    except (
                        Exception
                    ) as exc:  # pragma: no cover - logged via _process_single
                        result = {
                            "partition_id": future_map[future][1].partition_id,
                            "error": str(exc),
                            "success": False,
                        }
                    results.append((index, result))
        results.sort(key=lambda pair: pair[0])
        return [result for _, result in results]

    def _process_single(self, index: int, item: PartitionWorkItem) -> Dict[str, Any]:
        try:
            partition_payload = _load_json(item.path)
            modulus_value = partition_payload.get("modulus")
            if modulus_value is None:
                raise ValueError("Partition file is missing modulus")
            modulus = int(modulus_value)
            partition_data = partition_payload.get("partition") or {}
            node_indices = partition_data.get("node_indices") or []
            if not node_indices:
                raise ValueError("Partition file is missing node indices")
            base_graph = self._graph_cache.get(modulus)
            subgraph = base_graph.subgraph(node_indices).copy()
            operator_sequence = _extract_operator_sequence(partition_data)
            seed_value = None if self._args.seed is None else self._args.seed + index
            dry_run = not bool(self._args.apply)
            capture_snapshots = self._args.capture_snapshots or dry_run
            result = self._run_optimizer(
                subgraph=subgraph,
                partition_id=item.partition_id,
                dry_run=dry_run,
                capture_snapshots=capture_snapshots,
                seed_value=seed_value,
                operator_sequence=operator_sequence,
            )
            success = "error" not in result
            telemetry = _extract_telemetry(item.manifest_entry, partition_payload)
            telemetry_deltas = _compute_telemetry_deltas(
                telemetry,
                result.get("telemetry_snapshots"),
            )
            for key, value in telemetry_deltas.items():
                telemetry.setdefault(key, value)
            engine_payload = {
                k: v for k, v in result.items() if k not in {"telemetry_snapshots"}
            }
            summary = {
                "partition_id": item.partition_id,
                "path": str(item.path),
                "success": success,
                "engine": _json_safe(engine_payload),
                "telemetry_snapshots": result.get("telemetry_snapshots"),
                "telemetry": telemetry,
                "telemetry_deltas": telemetry_deltas,
                "candidate_factors": partition_payload.get("candidate_factors"),
            }
            if not self._args.quiet:
                status = "ok" if success else "error"
                print(f"[self-opt] partition={item.partition_id} status={status}")
            return summary
        except Exception as exc:
            if not self._args.quiet:
                print(f"[self-opt] partition={item.partition_id} error={exc}")
            return {
                "partition_id": item.partition_id,
                "path": str(item.path),
                "success": False,
                "error": str(exc),
            }

    def _run_optimizer(
        self,
        *,
        subgraph: nx.Graph,
        partition_id: str,
        dry_run: bool,
        capture_snapshots: bool,
        seed_value: Optional[int],
        operator_sequence: Optional[List[str]],
    ) -> Dict[str, Any]:
        try:
            return self._engine.optimize_automatically(
                subgraph,
                self._args.operation_type or DEFAULT_OPERATION,
                dry_run=dry_run,
                seed=seed_value,
                node=partition_id,
                operator_sequence=operator_sequence,
                output_dir=self._args.output_dir or DEFAULT_OUTPUT_DIR,
                capture_snapshots=capture_snapshots,
            )
        except AttributeError as exc:
            if capture_snapshots and "UTC" in str(exc):
                if not self._args.quiet:
                    print(
                        "[self-opt] partition="
                        f"{partition_id} snapshot capture unavailable; retrying without telemetry",
                    )
                return self._engine.optimize_automatically(
                    subgraph,
                    self._args.operation_type or DEFAULT_OPERATION,
                    dry_run=dry_run,
                    seed=seed_value,
                    node=partition_id,
                    operator_sequence=operator_sequence,
                    output_dir=self._args.output_dir or DEFAULT_OUTPUT_DIR,
                    capture_snapshots=False,
                )
            raise


def _collect_partition_entries(
    manifest: Dict[str, Any],
    manifest_path: Path,
    override_partition_dir: Optional[Path],
) -> List[PartitionWorkItem]:
    entries = manifest.get("entries")
    if not entries:
        raise ValueError("Manifest JSON is missing 'entries'")
    manifest_dir = manifest_path.parent
    partition_dir = override_partition_dir or manifest_dir / manifest.get(
        "partition_directory", ""
    )
    resolved_items: List[PartitionWorkItem] = []
    for entry in entries:
        partition_id = entry.get("partition_id") or entry.get("id")
        if not partition_id:
            raise ValueError("Manifest entry is missing partition_id")
        relative_path = entry.get("relative_path") or entry.get("path")
        candidate_paths = _candidate_paths(
            relative_path=relative_path,
            manifest_dir=manifest_dir,
            partition_dir=partition_dir,
            partition_id=partition_id,
        )
        partition_path = _select_existing(candidate_paths)
        if partition_path is None:
            raise FileNotFoundError(
                f"Unable to resolve partition file for {partition_id}; tried: "
                + ", ".join(str(path) for path in candidate_paths)
            )
        resolved_items.append(
            PartitionWorkItem(
                partition_id=partition_id, path=partition_path, manifest_entry=entry
            )
        )
    return resolved_items


def _candidate_paths(
    *,
    relative_path: Optional[str],
    manifest_dir: Path,
    partition_dir: Optional[Path],
    partition_id: str,
) -> List[Path]:
    candidates: List[Path] = []
    potential = []
    if relative_path:
        rel_path = Path(relative_path)
        potential.append(rel_path)
    if partition_dir:
        potential.append(partition_dir / f"{partition_dir.name}_{partition_id}.json")
    potential.append(manifest_dir / f"{manifest_dir.name}_{partition_id}.json")
    for path in potential:
        if path.is_absolute():
            candidates.append(path)
        else:
            candidates.append((manifest_dir / path).resolve())
            candidates.append((REPO_ROOT / path).resolve())
    if relative_path:
        candidates.append((manifest_dir / relative_path).resolve())
    unique: List[Path] = []
    seen: set[str] = set()
    for path in candidates:
        key = str(path)
        if key not in seen:
            seen.add(key)
            unique.append(path)
    return unique


def _select_existing(candidates: Iterable[Path]) -> Optional[Path]:
    for path in candidates:
        if path.is_file():
            return path
    return None


def _extract_operator_sequence(partition_data: Dict[str, Any]) -> Optional[List[str]]:
    metadata = partition_data.get("metadata") or {}
    nodal_state = metadata.get("nodal_state") or {}
    sequence = nodal_state.get("sequence") or metadata.get("sequence")
    if not sequence:
        return None
    if isinstance(sequence, str):
        return [sequence]
    return list(sequence)


def _extract_telemetry(
    manifest_entry: Dict[str, Any],
    partition_payload: Dict[str, Any],
) -> Dict[str, Any]:
    telemetry: Dict[str, Any] = {}
    manifest_tel = manifest_entry.get("telemetry") or {}
    partition_tel = (partition_payload.get("partition") or {}).get("telemetry") or {}
    telemetry.update(manifest_tel)
    for key, value in partition_tel.items():
        telemetry.setdefault(key, value)
    return telemetry


def _mean_numeric(values: Iterable[float]) -> Optional[float]:
    data = [float(v) for v in values if isinstance(v, (int, float))]
    if not data:
        return None
    try:
        return fmean(data)
    except Exception:
        return float(sum(data) / len(data))


def _snapshot_field(snapshot: Optional[Dict[str, Any]], key: str) -> Optional[float]:
    if not snapshot:
        return None
    value = snapshot.get(key)
    if isinstance(value, (int, float)):
        return float(value)
    return None


def _snapshot_phi_mean(snapshot: Optional[Dict[str, Any]]) -> Optional[float]:
    if not snapshot:
        return None
    telemetry = snapshot.get("telemetry") or {}
    canonical = telemetry.get("canonical") or {}
    phi_map = canonical.get("phi_s")
    if isinstance(phi_map, dict) and phi_map:
        return _mean_numeric(phi_map.values())
    return None


def _compute_telemetry_deltas(
    telemetry: Dict[str, Any],
    snapshots: Optional[Dict[str, Any]],
) -> Dict[str, float]:
    if not snapshots:
        return {}
    before = snapshots.get("before") or {}
    after = snapshots.get("after") or {}
    deltas: Dict[str, float] = {}

    baseline_phi = telemetry.get("phi_s")
    snapshot_phi = _snapshot_phi_mean(before)
    if baseline_phi is not None and snapshot_phi is not None:
        delta_phi = float(snapshot_phi) - float(baseline_phi)
        telemetry["phi_s_snapshot"] = snapshot_phi
        deltas["delta_phi_s"] = delta_phi

    baseline_coherence = telemetry.get("coherence")
    snapshot_coherence = _snapshot_field(before, "coherence")
    if baseline_coherence is not None and snapshot_coherence is not None:
        deltas["delta_c"] = float(snapshot_coherence) - float(baseline_coherence)

    baseline_si = telemetry.get("sense_index")
    snapshot_si = _snapshot_field(before, "sense_index")
    if baseline_si is not None and snapshot_si is not None:
        deltas["delta_sense_index"] = float(snapshot_si) - float(baseline_si)

    phi_after = _snapshot_phi_mean(after)
    if snapshot_phi is not None and phi_after is not None:
        deltas["delta_phi_s_snapshot"] = float(phi_after) - float(snapshot_phi)

    coherence_after = _snapshot_field(after, "coherence")
    if snapshot_coherence is not None and coherence_after is not None:
        deltas["delta_c_snapshot"] = float(coherence_after) - float(snapshot_coherence)

    sense_after = _snapshot_field(after, "sense_index")
    if snapshot_si is not None and sense_after is not None:
        deltas["delta_sense_snapshot"] = float(sense_after) - float(snapshot_si)

    return deltas


def _load_json(path: Path) -> Dict[str, Any]:
    with path.open("r", encoding="utf-8") as handle:
        return json.load(handle)


def _write_json(path: Path, payload: Dict[str, Any]) -> None:
    path.parent.mkdir(parents=True, exist_ok=True)
    with path.open("w", encoding="utf-8") as handle:
        json.dump(payload, handle, indent=2)


def _json_safe(value: Any) -> Any:
    if value is None or isinstance(value, (str, int, float, bool)):
        return value
    if isinstance(value, Path):
        return str(value)
    if isinstance(value, dict):
        return {str(k): _json_safe(v) for k, v in value.items()}
    if isinstance(value, (list, tuple, set)):
        return [_json_safe(item) for item in value]
    if hasattr(value, "_asdict"):
        return _json_safe(value._asdict())
    if hasattr(value, "__dict__"):
        return _json_safe(vars(value))
    return str(value)


def _aggregate_telemetry(results: Sequence[Dict[str, Any]]) -> Dict[str, float]:
    fields = ["phi_s", "phase_gradient", "phase_curvature", "coherence_length"]
    aggregates: Dict[str, float] = {}
    for field in fields:
        values = [
            res.get("telemetry", {}).get(field)
            for res in results
            if res.get("telemetry", {}).get(field) is not None
        ]
        if values:
            aggregates[f"{field}_mean"] = sum(values) / len(values)
            aggregates[f"{field}_min"] = min(values)
            aggregates[f"{field}_max"] = max(values)
    return aggregates


def _build_summary(
    *,
    manifest: Dict[str, Any],
    manifest_summary: Optional[Dict[str, Any]],
    args: argparse.Namespace,
    results: Sequence[Dict[str, Any]],
    duration: float,
) -> Dict[str, Any]:
    success_count = sum(1 for result in results if result.get("success"))
    failure_count = len(results) - success_count
    summary = {
        "manifest": str(args.manifest),
        "manifest_summary": (
            str(args.manifest_summary) if args.manifest_summary else None
        ),
        "operation_type": args.operation_type or DEFAULT_OPERATION,
        "dry_run": not bool(args.apply),
        "apply": bool(args.apply),
        "partitions_requested": len(results),
        "success_count": success_count,
        "failure_count": failure_count,
        "duration_seconds": duration,
        "partition_results": results,
        "manifest_aggregation": manifest.get("aggregation"),
        "manifest_summary_payload": manifest_summary,
        "telemetry_summary": _aggregate_telemetry(results),
    }
    return summary


def main(argv: Optional[Sequence[str]] = None) -> None:
    args = parse_args(argv)
    summary = run(args)
    json.dump(summary, sys.stdout, indent=2)
    sys.stdout.write("\n")


if __name__ == "__main__":
    main()