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: src/tnfr/config/tnfr_config.py

tnfr_config.py

Canonical TNFR configuration system with structural invariant validation.

This module provides the TNFRConfig class that consolidates all TNFR configuration with explicit semantic mapping to TNFR invariants (νf, θ, ΔNFR).

Source Code

python
"""Canonical TNFR configuration system with structural invariant validation.

This module provides the TNFRConfig class that consolidates all TNFR
configuration with explicit semantic mapping to TNFR invariants (νf, θ, ΔNFR).
"""

from __future__ import annotations

import copy
from collections.abc import Mapping
from typing import Any, TypeVar, cast

from ..immutable import _is_immutable
from ..types import GraphLike, TNFRConfigValue

T = TypeVar("T")

# TNFR Canonical State Tokens
STATE_STABLE = "stable"
STATE_TRANSITION = "transition"
STATE_DISSONANT = "dissonant"

CANONICAL_STATE_TOKENS = frozenset({STATE_STABLE, STATE_TRANSITION, STATE_DISSONANT})

# Canonical TNFR keys with Unicode symbols
VF_KEY = "νf"  # Structural frequency (Hz_str)
THETA_KEY = "theta"  # Phase
DNFR_KEY = "ΔNFR"  # Internal reorganization operator

# Node attribute aliases for canonical TNFR variables
ALIASES: dict[str, tuple[str, ...]] = {
    "VF": (VF_KEY, "nu_f", "nu-f", "nu", "freq", "frequency"),
    "THETA": (THETA_KEY, "phase"),
    "DNFR": (DNFR_KEY, "delta_nfr", "dnfr"),
    "EPI": ("EPI", "psi", "PSI", "value"),
    "EPI_KIND": ("EPI_kind", "epi_kind", "source_glyph"),
    "SI": ("Si", "sense_index", "S_i", "sense", "meaning_index"),
    "DEPI": ("dEPI_dt", "dpsi_dt", "dEPI", "velocity"),
    "D2EPI": ("d2EPI_dt2", "d2psi_dt2", "d2EPI", "accel"),
    "DVF": ("dνf_dt", "dvf_dt", "dnu_dt", "dvf"),
    "D2VF": ("d2νf_dt2", "d2vf_dt2", "d2nu_dt2", "B"),
    "DSI": ("δSi", "delta_Si", "dSi"),
    "EMISSION_TIMESTAMP": ("emission_timestamp", "emission_t", "t_al"),
}


class TNFRConfigError(Exception):
    """Raised when TNFR configuration violates structural invariants."""


class TNFRConfig:
    """Canonical TNFR configuration with structural invariant validation.

    This class consolidates all TNFR configuration and provides validation
    against the canonical TNFR invariants defined in AGENTS.md.

    TNFR Structural Invariants Enforced:
    -------------------------------------
    1. νf (structural frequency) must be in Hz_str units, > 0
    2. θ (phase) must be in [-π, π] if THETA_WRAP enabled
    3. ΔNFR magnitude bounds define reorganization stability
    4. EPI coherent form bounds define valid state space
    5. Configuration parameters maintain operator closure

    Parameters
    ----------
    defaults : Mapping[str, TNFRConfigValue], optional
        Base configuration defaults to use.
    validate_invariants : bool, default=True
        Whether to validate TNFR structural invariants.

    Examples
    --------
    >>> config = TNFRConfig()
    >>> config.validate_vf_bounds(vf_min=0.0, vf_max=10.0)
    True

    >>> config.get_param_with_fallback({}, "DT", default=1.0)
    1.0
    """

    def __init__(
        self,
        defaults: Mapping[str, TNFRConfigValue] | None = None,
        validate_invariants: bool = True,
    ) -> None:
        """Initialize TNFR configuration."""
        self._defaults = defaults or {}
        self._validate_invariants = validate_invariants

    def validate_vf_bounds(
        self,
        vf_min: float | None = None,
        vf_max: float | None = None,
        vf: float | None = None,
    ) -> bool:
        """Validate νf (structural frequency) bounds.

        TNFR Invariant: νf must be expressed in Hz_str (structural hertz)
        and must be > 0 to maintain node existence.

        Parameters
        ----------
        vf_min : float, optional
            Minimum structural frequency bound.
        vf_max : float, optional
            Maximum structural frequency bound.
        vf : float, optional
            Specific frequency value to validate.

        Returns
        -------
        bool
            True if bounds are valid.

        Raises
        ------
        TNFRConfigError
            If bounds violate TNFR invariants.
        """
        if not self._validate_invariants:
            return True

        # Invariant 5: Structural Metrology - νf in Hz_str, must be positive
        if vf_min is not None and vf_min < 0.0:
            raise TNFRConfigError(f"VF_MIN must be >= 0 (Hz_str units), got {vf_min}")

        if vf_max is not None and vf_min is not None and vf_max < vf_min:
            raise TNFRConfigError(f"VF_MAX ({vf_max}) must be >= VF_MIN ({vf_min})")

        if vf is not None:
            if vf < 0.0:
                raise TNFRConfigError(f"νf must be >= 0 (Hz_str units), got {vf}")
            if vf_min is not None and vf < vf_min:
                raise TNFRConfigError(f"νf ({vf}) below VF_MIN ({vf_min})")
            if vf_max is not None and vf > vf_max:
                raise TNFRConfigError(f"νf ({vf}) above VF_MAX ({vf_max})")

        return True

    def validate_theta_bounds(
        self,
        theta: float | None = None,
        theta_wrap: bool = True,
    ) -> bool:
        """Validate θ (phase) bounds.

        TNFR Invariant: Phase must be properly bounded to ensure
        valid network synchrony measurements.

        Parameters
        ----------
        theta : float, optional
            Phase value to validate.
        theta_wrap : bool, default=True
            Whether phase wrapping is enabled.

        Returns
        -------
        bool
            True if phase is valid.

        Raises
        ------
        TNFRConfigError
            If phase violates TNFR invariants.
        """
        if not self._validate_invariants:
            return True

        import math

        # Invariant 2: Phase-Coherent Coupling - valid synchrony requires bounded phase
        if theta is not None and not theta_wrap:
            if not (-math.pi <= theta <= math.pi):
                raise TNFRConfigError(
                    f"θ (phase) must be in [-π, π] when THETA_WRAP=False, got {theta}"
                )

        return True

    def validate_epi_bounds(
        self,
        epi_min: float | None = None,
        epi_max: float | None = None,
        epi: float | None = None,
    ) -> bool:
        """Validate EPI (Primary Information Structure) bounds.

        TNFR Invariant: EPI as coherent form must remain within
        valid bounds to maintain structural coherence.

        Parameters
        ----------
        epi_min : float, optional
            Minimum EPI bound.
        epi_max : float, optional
            Maximum EPI bound.
        epi : float, optional
            Specific EPI value to validate.

        Returns
        -------
        bool
            True if bounds are valid.

        Raises
        ------
        TNFRConfigError
            If bounds violate TNFR invariants.
        """
        if not self._validate_invariants:
            return True

        # Invariant 1: Nodal Equation Integrity (EPI as coherent form) - must have valid bounds
        if epi_max is not None and epi_min is not None and epi_max < epi_min:
            raise TNFRConfigError(f"EPI_MAX ({epi_max}) must be >= EPI_MIN ({epi_min})")

        if epi is not None:
            if epi_min is not None and epi < epi_min:
                raise TNFRConfigError(f"EPI ({epi}) below EPI_MIN ({epi_min})")
            if epi_max is not None and epi > epi_max:
                raise TNFRConfigError(f"EPI ({epi}) above EPI_MAX ({epi_max})")

        return True

    def validate_dnfr_semantics(
        self,
        dnfr: float | None = None,
        context: str = "",
    ) -> bool:
        """Validate ΔNFR (reorganization operator) semantics.

        TNFR Invariant: ΔNFR semantics must not be reinterpreted as
        classical ML "error" or "loss gradient". It modulates
        reorganization rate.

        Parameters
        ----------
        dnfr : float, optional
            ΔNFR value to validate.
        context : str, optional
            Context description for validation.

        Returns
        -------
        bool
            True if ΔNFR semantics are preserved.

        Raises
        ------
        TNFRConfigError
            If ΔNFR semantics are violated.
        """
        if not self._validate_invariants:
            return True

        # Invariant 1: Nodal Equation Integrity (ΔNFR semantics) - modulates reorganization rate
        # Sign and magnitude are semantically significant
        # This validation ensures we don't reinterpret ΔNFR incorrectly

        # No specific numeric bounds - ΔNFR can be any real value
        # The semantic check is about usage context, not numeric range

        return True

    def validate_config(
        self,
        config: Mapping[str, Any],
    ) -> bool:
        """Validate complete configuration against TNFR invariants.

        Parameters
        ----------
        config : Mapping[str, Any]
            Configuration to validate.

        Returns
        -------
        bool
            True if configuration is valid.

        Raises
        ------
        TNFRConfigError
            If configuration violates TNFR invariants.
        """
        if not self._validate_invariants:
            return True

        # Validate νf bounds
        vf_min = config.get("VF_MIN")
        vf_max = config.get("VF_MAX")
        if vf_min is not None or vf_max is not None:
            self.validate_vf_bounds(vf_min=vf_min, vf_max=vf_max)

        # Validate θ bounds
        theta_wrap = config.get("THETA_WRAP", True)
        init_theta_min = config.get("INIT_THETA_MIN")
        init_theta_max = config.get("INIT_THETA_MAX")
        if init_theta_min is not None:
            self.validate_theta_bounds(theta=init_theta_min, theta_wrap=theta_wrap)
        if init_theta_max is not None:
            self.validate_theta_bounds(theta=init_theta_max, theta_wrap=theta_wrap)

        # Validate EPI bounds
        epi_min = config.get("EPI_MIN")
        epi_max = config.get("EPI_MAX")
        if epi_min is not None or epi_max is not None:
            self.validate_epi_bounds(epi_min=epi_min, epi_max=epi_max)

        # Validate DT (time step) is positive for temporal coherence
        dt = config.get("DT")
        if dt is not None and dt <= 0:
            raise TNFRConfigError(
                f"DT (time step) must be > 0 for temporal coherence, got {dt}"
            )

        return True

    def get_param_with_fallback(
        self,
        G_graph: Mapping[str, Any],
        key: str,
        default: TNFRConfigValue | None = None,
    ) -> TNFRConfigValue:
        """Retrieve parameter from graph or defaults with fallback.

        Parameters
        ----------
        G_graph : Mapping[str, Any]
            Graph configuration dictionary.
        key : str
            Parameter key to retrieve.
        default : TNFRConfigValue, optional
            Fallback default value.

        Returns
        -------
        TNFRConfigValue
            Configuration value.
        """
        if key in G_graph:
            return G_graph[key]
        if key in self._defaults:
            value = self._defaults[key]
            # Deep copy mutable values to avoid shared state
            if not _is_immutable(value):
                return cast(TNFRConfigValue, copy.deepcopy(value))
            return value
        if default is not None:
            return default
        raise KeyError(f"Parameter '{key}' not found in graph or defaults")

    def inject_defaults(
        self,
        G: GraphLike,
        defaults: Mapping[str, TNFRConfigValue] | None = None,
        override: bool = False,
    ) -> None:
        """Inject defaults into graph with TNFR invariant validation.

        Parameters
        ----------
        G : GraphLike
            Graph to inject configuration into.
        defaults : Mapping[str, TNFRConfigValue], optional
            Configuration to inject. Uses instance defaults if not provided.
        override : bool, default=False
            Whether to override existing values.

        Raises
        ------
        TNFRConfigError
            If configuration violates TNFR invariants.
        """
        config_to_inject = defaults or self._defaults

        # Validate before injection
        if self._validate_invariants:
            self.validate_config(config_to_inject)

        G.graph.setdefault("_tnfr_defaults_attached", False)
        for k, v in config_to_inject.items():
            if override or k not in G.graph:
                G.graph[k] = (
                    v if _is_immutable(v) else cast(TNFRConfigValue, copy.deepcopy(v))
                )
        G.graph["_tnfr_defaults_attached"] = True

        # Ensure node offset map if available
        try:
            from ..utils import ensure_node_offset_map

            ensure_node_offset_map(G)
        except ImportError:
            pass


def get_aliases(key: str) -> tuple[str, ...]:
    """Return alias tuple for canonical TNFR variable ``key``.

    Parameters
    ----------
    key : str
        Canonical variable key (e.g., "VF", "THETA", "DNFR").

    Returns
    -------
    tuple[str, ...]
        tuple of aliases for the variable.

    Examples
    --------
    >>> get_aliases("VF")
    ('νf', 'nu_f', 'nu-f', 'nu', 'freq', 'frequency')
    """
    return ALIASES[key]


# Primary aliases for common TNFR variables
VF_PRIMARY = get_aliases("VF")[0]  # νf
THETA_PRIMARY = get_aliases("THETA")[0]  # theta
DNFR_PRIMARY = get_aliases("DNFR")[0]  # ΔNFR
EPI_PRIMARY = get_aliases("EPI")[0]  # EPI
EPI_KIND_PRIMARY = get_aliases("EPI_KIND")[0]  # EPI_kind
SI_PRIMARY = get_aliases("SI")[0]  # Si
dEPI_PRIMARY = get_aliases("DEPI")[0]  # dEPI_dt
D2EPI_PRIMARY = get_aliases("D2EPI")[0]  # d2EPI_dt2
dVF_PRIMARY = get_aliases("DVF")[0]  # dνf_dt
D2VF_PRIMARY = get_aliases("D2VF")[0]  # d2νf_dt2
dSI_PRIMARY = get_aliases("DSI")[0]  # δSi


def normalise_state_token(token: str) -> str:
    """Return the canonical English token for node state.

    TNFR defines three canonical states: stable, transition, dissonant.

    Parameters
    ----------
    token : str
        State token to normalize.

    Returns
    -------
    str
        Canonical state token.

    Raises
    ------
    TypeError
        If token is not a string.
    ValueError
        If token is not a valid TNFR state.
    """
    if not isinstance(token, str):
        raise TypeError("state token must be a string")

    stripped = token.strip()
    lowered = stripped.lower()

    if stripped in CANONICAL_STATE_TOKENS:
        return stripped

    if lowered in CANONICAL_STATE_TOKENS:
        return lowered

    raise ValueError(
        "state token must be one of 'stable', 'transition', or 'dissonant'"
    )


__all__ = (
    "TNFRConfig",
    "TNFRConfigError",
    "ALIASES",
    "VF_KEY",
    "THETA_KEY",
    "DNFR_KEY",
    "VF_PRIMARY",
    "THETA_PRIMARY",
    "DNFR_PRIMARY",
    "EPI_PRIMARY",
    "EPI_KIND_PRIMARY",
    "SI_PRIMARY",
    "dEPI_PRIMARY",
    "D2EPI_PRIMARY",
    "dVF_PRIMARY",
    "D2VF_PRIMARY",
    "dSI_PRIMARY",
    "STATE_STABLE",
    "STATE_TRANSITION",
    "STATE_DISSONANT",
    "CANONICAL_STATE_TOKENS",
    "get_aliases",
    "normalise_state_token",
)