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/dynamics/fused_dnfr.py

fused_dnfr.py

Fused ΔNFR computation kernels for optimized backend.

This module provides optimized implementations of ΔNFR computation that fuse multiple operations to reduce memory traffic and improve cache locality.

The fused kernels maintain exact TNFR semantics while achieving better performance through:

  1. Combined gradient computation (phase + EPI + topology in single pass)
  2. Reduced intermediate array allocations
  3. Better cache locality through sequential memory access
  4. Optional Numba JIT compilation for critical loops

All implementations preserve TNFR structural invariants:

  • ΔNFR = w_phase·g_phase + w_epi·g_epi + w_vf·g_vf + w_topo·g_topo
  • Isolated nodes receive ΔNFR = 0
  • Deterministic results with fixed topology

Source Code

python
# -*- coding: utf-8 -*-
"""Fused ΔNFR computation kernels for optimized backend.

This module provides optimized implementations of ΔNFR computation that fuse
multiple operations to reduce memory traffic and improve cache locality.

The fused kernels maintain exact TNFR semantics while achieving better
performance through:

1. Combined gradient computation (phase + EPI + topology in single pass)
2. Reduced intermediate array allocations
3. Better cache locality through sequential memory access
4. Optional Numba JIT compilation for critical loops

All implementations preserve TNFR structural invariants:
- ΔNFR = w_phase·g_phase + w_epi·g_epi + w_vf·g_vf + w_topo·g_topo
- Isolated nodes receive ΔNFR = 0
- Deterministic results with fixed topology
"""

from __future__ import annotations

import math
from typing import Any, Mapping

from ..mathematics.unified_numerical import np
from ..utils import get_logger

logger = get_logger(__name__)

# Try to import Numba for JIT acceleration
_NUMBA_AVAILABLE = False
_numba = None
try:
    import numba

    _numba = numba
    _NUMBA_AVAILABLE = True
    logger.debug("Numba JIT available for fused gradient acceleration")
except ImportError:
    logger.debug("Numba not available, using pure NumPy implementation")


def _compute_canonical_gradients_jit_kernel(
    edge_src,
    edge_dst,
    phase,
    epi,
    vf,
    w_phase: float,
    w_epi: float,
    w_vf: float,
    w_topo: float,
    n_nodes: int,
    symmetric: bool,
    delta_nfr,
):
    """Numba JIT kernel for canonical TNFR gradient computation.

    This function implements the exact TNFR nodal equation logic:
    1. Accumulate neighbor sums (cos, sin, epi, vf, count)
    2. Compute means (circular for phase, arithmetic for others)
    3. Compute gradients (mean - value)
    4. Apply weights

    It supports both directed and undirected (symmetric) graphs.
    """
    # Allocations (Numba handles these efficiently in nopython mode)
    cos_sum = np.zeros(n_nodes, dtype=np.float64)
    sin_sum = np.zeros(n_nodes, dtype=np.float64)
    epi_sum = np.zeros(n_nodes, dtype=np.float64)
    vf_sum = np.zeros(n_nodes, dtype=np.float64)
    count = np.zeros(n_nodes, dtype=np.float64)

    n_edges = edge_src.shape[0]

    # Pass 1: Accumulate neighbor statistics
    for i in range(n_edges):
        u = edge_src[i]
        v = edge_dst[i]

        # u -> v (v receives from u)
        cos_sum[v] += math.cos(phase[u])
        sin_sum[v] += math.sin(phase[u])
        epi_sum[v] += epi[u]
        vf_sum[v] += vf[u]
        count[v] += 1.0

        if symmetric:
            # v -> u (u receives from v)
            cos_sum[u] += math.cos(phase[v])
            sin_sum[u] += math.sin(phase[v])
            epi_sum[u] += epi[v]
            vf_sum[u] += vf[v]
            count[u] += 1.0

    # Pass 2: Compute gradients
    for i in range(n_nodes):
        if count[i] > 0:
            # Phase: g = (theta_mean - theta_node) / pi
            # theta_mean = atan2(sum_sin, sum_cos)
            theta_mean = math.atan2(sin_sum[i], cos_sum[i])

            # angle_diff(a, b) = (a - b + pi) % 2pi - pi
            # We want (theta_mean - phase[i])
            diff = (theta_mean - phase[i] + math.pi) % (2 * math.pi) - math.pi
            g_phase = diff / math.pi

            # EPI/VF: g = mean - value
            g_epi = (epi_sum[i] / count[i]) - epi[i]
            g_vf = (vf_sum[i] / count[i]) - vf[i]

            delta_nfr[i] = w_phase * g_phase + w_epi * g_epi + w_vf * g_vf

    # Pass 3: Topology (if needed)
    if w_topo != 0.0:
        deg_sum = np.zeros(n_nodes, dtype=np.float64)
        for i in range(n_edges):
            u = edge_src[i]
            v = edge_dst[i]

            # Accumulate neighbor degrees (degree = count)
            deg_sum[v] += count[u]
            if symmetric:
                deg_sum[u] += count[v]

        for i in range(n_nodes):
            if count[i] > 0:
                deg_mean = deg_sum[i] / count[i]
                g_topo = deg_mean - count[i]
                delta_nfr[i] += w_topo * g_topo


# Create JIT-compiled version if Numba is available
if _NUMBA_AVAILABLE:
    try:
        _compute_canonical_gradients_jit = _numba.njit(
            _compute_canonical_gradients_jit_kernel,
            parallel=False,
            fastmath=True,
            cache=True,
        )
        logger.debug("Numba JIT compilation successful for fused gradients")
    except Exception as e:
        logger.warning(f"Numba JIT compilation failed: {e}")
        _compute_canonical_gradients_jit = _compute_canonical_gradients_jit_kernel
else:
    _compute_canonical_gradients_jit = _compute_canonical_gradients_jit_kernel


def compute_fused_gradients(
    *,
    edge_src: Any,
    edge_dst: Any,
    phase: Any,
    epi: Any,
    vf: Any,
    weights: Mapping[str, float],
    use_jit: bool = True,
) -> Any:
    """Compute all ΔNFR gradients in a fused kernel (Directed).

    This function delegates to `compute_fused_gradients_symmetric` with
    `accumulate_both_directions=False` to support directed graphs using
    the canonical TNFR formula (neighbor means).

    Parameters
    ----------
    edge_src : array-like
        Source node indices for each edge (shape: [E])
    edge_dst : array-like
        Destination node indices for each edge (shape: [E])
    phase : array-like
        Phase values for each node (shape: [N])
    epi : array-like
        EPI values for each node (shape: [N])
    vf : array-like
        Structural frequency νf for each node (shape: [N])
    weights : Mapping[str, float]
        ΔNFR component weights (w_phase, w_epi, w_vf, w_topo)
    np : module
        NumPy module
    use_jit : bool, default=True
        Whether to use JIT compilation if available

    Returns
    -------
    ndarray
        Fused gradient vector (shape: [N])
    """
    return compute_fused_gradients_symmetric(
        edge_src=edge_src,
        edge_dst=edge_dst,
        phase=phase,
        epi=epi,
        vf=vf,
        weights=weights,
        accumulate_both_directions=False,
        use_jit=use_jit,
    )


def compute_fused_gradients_symmetric(
    *,
    edge_src: Any,
    edge_dst: Any,
    phase: Any,
    epi: Any,
    vf: Any,
    weights: Mapping[str, float],
    accumulate_both_directions: bool = True,
    use_jit: bool = True,
) -> Any:
    """Compute ΔNFR gradients for undirected graphs using fused operations.

    This kernel fuses neighbor accumulation, mean computation, and gradient
    assembly into a single optimized pass. It is specifically designed for
    undirected graphs where interactions are symmetric.

    Parameters
    ----------
    edge_src : ndarray
        Source node indices (shape: [E])
    edge_dst : ndarray
        Destination node indices (shape: [E])
    phase : ndarray
        Phase values (shape: [N])
    epi : ndarray
        EPI values (shape: [N])
    vf : ndarray
        νf values (shape: [N])
    weights : Mapping[str, float]
        Component weights (w_phase, w_epi, w_vf, w_topo)
    accumulate_both_directions : bool, optional
        If True (default), each edge (u, v) contributes to both u and v.
        If False, each edge (u, v) only contributes to v (dst).
        set to False if edge_src/edge_dst already contain both (u,v) and (v,u).
    use_jit : bool, default=True
        Whether to use JIT compilation if available

    Returns
    -------
    ndarray
        ΔNFR gradient vector (shape: [N])
    """
    n_nodes = phase.shape[0]
    n_edges = edge_src.shape[0]

    w_phase = float(weights.get("w_phase", 0.0))
    w_epi = float(weights.get("w_epi", 0.0))
    w_vf = float(weights.get("w_vf", 0.0))
    w_topo = float(weights.get("w_topo", 0.0))

    delta_nfr = np.zeros(n_nodes, dtype=float)

    if n_edges == 0:
        return delta_nfr

    # JIT Path
    if use_jit and _NUMBA_AVAILABLE and n_edges > 100:
        _compute_canonical_gradients_jit(
            edge_src,
            edge_dst,
            phase,
            epi,
            vf,
            w_phase,
            w_epi,
            w_vf,
            w_topo,
            n_nodes,
            accumulate_both_directions,
            delta_nfr,
        )
        return delta_nfr

    # Pass 1: Accumulate neighbor statistics for computing means
    # For phase: accumulate cos/sin sums for circular mean
    # For EPI/vf: accumulate value sums for arithmetic mean
    neighbor_cos_sum = np.zeros(n_nodes, dtype=float)
    neighbor_sin_sum = np.zeros(n_nodes, dtype=float)
    neighbor_epi_sum = np.zeros(n_nodes, dtype=float)
    neighbor_vf_sum = np.zeros(n_nodes, dtype=float)
    neighbor_count = np.zeros(n_nodes, dtype=float)

    # For undirected graphs, each edge contributes to both endpoints
    # Extract neighbor values
    phase_src_vals = phase[edge_src]
    phase_dst_vals = phase[edge_dst]
    epi_src_vals = epi[edge_src]
    epi_dst_vals = epi[edge_dst]
    vf_src_vals = vf[edge_src]
    vf_dst_vals = vf[edge_dst]

    # Accumulate from src to dst (dst's neighbors include src)
    np.add.at(neighbor_cos_sum, edge_dst, np.cos(phase_src_vals))
    np.add.at(neighbor_sin_sum, edge_dst, np.sin(phase_src_vals))
    np.add.at(neighbor_epi_sum, edge_dst, epi_src_vals)
    np.add.at(neighbor_vf_sum, edge_dst, vf_src_vals)
    np.add.at(neighbor_count, edge_dst, 1.0)

    if accumulate_both_directions:
        # Accumulate from dst to src (src's neighbors include dst)
        np.add.at(neighbor_cos_sum, edge_src, np.cos(phase_dst_vals))
        np.add.at(neighbor_sin_sum, edge_src, np.sin(phase_dst_vals))
        np.add.at(neighbor_epi_sum, edge_src, epi_dst_vals)
        np.add.at(neighbor_vf_sum, edge_src, vf_dst_vals)
        np.add.at(neighbor_count, edge_src, 1.0)

    # Pass 2: Compute gradients from means
    # Avoid division by zero for isolated nodes
    has_neighbors = neighbor_count > 0

    # Compute circular mean phase for nodes with neighbors
    phase_mean = np.zeros(n_nodes, dtype=float)
    phase_mean[has_neighbors] = np.arctan2(
        neighbor_sin_sum[has_neighbors], neighbor_cos_sum[has_neighbors]
    )

    # Compute arithmetic means for EPI and νf
    epi_mean = np.zeros(n_nodes, dtype=float)
    vf_mean = np.zeros(n_nodes, dtype=float)
    epi_mean[has_neighbors] = (
        neighbor_epi_sum[has_neighbors] / neighbor_count[has_neighbors]
    )
    vf_mean[has_neighbors] = (
        neighbor_vf_sum[has_neighbors] / neighbor_count[has_neighbors]
    )

    # Compute gradients using TNFR canonical formula
    # Phase: g_phase = -angle_diff(θ_node, θ_mean) / π
    # angle_diff(a, b) = (a - b + π) % 2π - π (minimal angular difference)
    phase_diff = (phase_mean - phase + np.pi) % (2 * np.pi) - np.pi
    g_phase = phase_diff / np.pi
    g_phase[~has_neighbors] = 0.0  # Isolated nodes have no gradient

    # EPI/νf: g = mean - node_value
    g_epi = epi_mean - epi
    g_epi[~has_neighbors] = 0.0

    g_vf = vf_mean - vf
    g_vf[~has_neighbors] = 0.0

    # Topology: Canonical form is (mean_neighbor_degree - node_degree)
    if w_topo != 0.0:
        # For undirected graphs, degree is exactly neighbor_count
        degrees = neighbor_count
        neighbor_deg_sum = np.zeros(n_nodes, dtype=float)

        # We need a second pass over edges to accumulate neighbor degrees
        # because degrees are only known after the first pass.
        deg_src_vals = degrees[edge_src]
        deg_dst_vals = degrees[edge_dst]

        np.add.at(neighbor_deg_sum, edge_dst, deg_src_vals)
        if accumulate_both_directions:
            np.add.at(neighbor_deg_sum, edge_src, deg_dst_vals)

        deg_mean = np.zeros(n_nodes, dtype=float)
        deg_mean[has_neighbors] = (
            neighbor_deg_sum[has_neighbors] / neighbor_count[has_neighbors]
        )

        g_topo = deg_mean - degrees
        g_topo[~has_neighbors] = 0.0

        # Scale by weight
        g_topo *= w_topo
    else:
        g_topo = 0.0

    # Combine gradients
    delta_nfr = w_phase * g_phase + w_epi * g_epi + w_vf * g_vf + g_topo

    return delta_nfr


def apply_vf_scaling(
    *,
    delta_nfr: Any,
    vf: Any,
    np: Any,
) -> None:
    """Apply structural frequency scaling to ΔNFR in-place.

    Applies the fundamental TNFR transformation:
    Delta_NFR_final = nu_f * Delta_NFR_gradient

    This completes the nodal equation: dEPI/dt = nu_f * Delta_NFR(t)

    Parameters
    ----------
    delta_nfr : array-like
        Gradient vector to scale in-place (shape: [N])
    vf : array-like
        Structural frequency for each node (shape: [N])
    np : module
        NumPy module

    Notes
    -----
    Modified in-place to avoid allocating result array.

    Examples
    --------
    >>> import numpy as np
    >>> delta_nfr = np.array([1.0, 2.0, 3.0])
    >>> vf = np.array([0.5, 1.0, 1.5])
    >>> apply_vf_scaling(delta_nfr=delta_nfr, vf=vf, np=np)
    >>> delta_nfr
    array([0.5, 2. , 4.5])
    """
    np.multiply(delta_nfr, vf, out=delta_nfr)


__all__ = [
    "compute_fused_gradients",
    "compute_fused_gradients_symmetric",
    "apply_vf_scaling",
]