Autor Tema: Revisar este algoritmo, gracias

0 Usuarios y 1 Visitante están viendo este tema.

20 Marzo, 2026, 08:10 pm
Leído 856 veces

RH

  • $$\Large \color{#5e8d56}\pi\,\pi\,\pi$$
  • Mensajes: 239
  • País: es
  • Karma: +0/-0
  • Sexo: Masculino
Hola, he elaborado un algoritmo para estimar ceros de Riemann, la novedad es que puede estimar cualquier cero, de forma instantánea \( O(1) \) vs \( O(\sqrt[ ]{t}) \). Lo he puesto en Phyton para que cualquiera pueda revisarlo.

Cómo funciona:  Te ubicas en el punto teórico más cercano (Gram), mides cuánto se desvía la onda matemática en ese lugar (Fase) y saltas esa distancia corregida por la presión de los números vecinos (Succión/Densidad).

Código: [Seleccionar]
import math

def predict_sps_v32_super_jump(n):
    pi = math.pi
   
    # 1. ANCLA (Gram Point) - Mantener precisión de base
    t = (2.0 * pi * (n - 1.5)) / (math.log(max(n, 2)) - 1.1) if n > 1 else 14.1347
   
    for _ in range(40):
        ln_t_2pi = math.log(t / (2.0 * pi))
        t2 = t * t
        theta = (t / 2.0) * (ln_t_2pi - 1.0) - (pi / 8.0) + (1.0 / (48.0 * t))
        deriv = 0.5 * ln_t_2pi - (1.0 / (48.0 * t2))
        t += ((n - 1) * pi - theta) / deriv
       
    gram_base = t

    # 2. MOTOR DE SUCCIÓN RECALIBRADO (V32)
    z = math.sqrt(gram_base / (2.0 * pi))
    p = z - int(z)
   
    log_t = math.log(gram_base / (2.0 * pi))
    # Reducimos la resistencia de la densidad para permitir saltos más largos
    densidad_efectiva = log_t / (2.0 * pi)
   
    # AJUSTE CRÍTICO:
    # Para saltar el gap de 0.314, elevamos el coeficiente de succión
    # y ajustamos la fase p con un offset de 'arrastre'.
    p_corregida = p + (0.11 / log_t) # Offset dinámico por curvatura
   
    # Elevamos la succión de 1.27 a 1.59 (Factor de Amplificación Cuántica)
    succion_primaria = -1.5915 * math.sin(2 * pi * p_corregida)
   
    # El Látigo ahora empuja en lugar de frenar
    látigo_v32 = 0.318 * math.cos(2 * pi * p)
   
    desplazamiento = (succion_primaria + látigo_v32) / densidad_efectiva
    t_final = gram_base + desplazamiento

     
    print(f"### SPS V32: SUPER-JUMP (N={n}) ###")
    print(f"[] Punto Gram:  {gram_base:.10f}")
    print(f"[] Salto SPS:   {desplazamiento:+.10f}")
    print(f"[*] Veredicto T: {t_final:.10f}")
   
     

# Ejecución
predict_sps_v32_super_jump(10**8)
Juego de pinball gratuito hecho con el motor Zeta Atlas:

https://claude.ai/artifact/Km3QhYf4QJB7jbwVHrZirf   

Motor físico, dinámicas nunca vistas, instalar gratis.

21 Marzo, 2026, 10:00 pm
Respuesta #1

DaniM

  • $$\Large \color{#5e8d56}\pi\,\pi\,\pi$$
  • Mensajes: 221
  • País: cz
  • Karma: +0/-0
Motor de succión, resistencia de la densidad, amplificación cuántica... ¿Me he metido en un foro de matemáticas o en el de Regreso al futuro? 😅 Solo te ha faltado guardar los ceros en el condensador de fluzo usando el colector de rayos jaja

23 Marzo, 2026, 09:02 am
Respuesta #2

Luis Fuentes

  • el_manco
  • Administrador
  • Mensajes: 58,907
  • País: es
  • Karma: +0/-0
Hola

Hola, he elaborado un algoritmo para estimar ceros de Riemann, la novedad es que puede estimar cualquier cero, de forma instantánea \( O(1) \) vs \( O(\sqrt[ ]{t}) \). Lo he puesto en Phyton para que cualquiera pueda revisarlo.

Cómo funciona:  Te ubicas en el punto teórico más cercano (Gram), mides cuánto se desvía la onda matemática en ese lugar (Fase) y saltas esa distancia corregida por la presión de los números vecinos (Succión/Densidad).

 Lo único relevante que hay ahí es la aproximación de Gram a los ceros de Riemann, que es conocida.

 La corrección posterior, utiliza unos parámetros que en general no mejoran la aproximación de Gram, sino que la empeoran. Lo mejoran sólo si buscas ceros cerca del rango en el que has ajustado los parámetros para que funcione bien: coloquialmente eso es hacerse trampas al solitario.

 Por lo demás más de lo mismo: usas la IA que hace cosas que ni tú mismo entiendes y lo llenas de palabrería rimbombante, que sólo aporta ruido.

Saludos.

23 Marzo, 2026, 09:54 am
Respuesta #3

RH

  • $$\Large \color{#5e8d56}\pi\,\pi\,\pi$$
  • Mensajes: 239
  • País: es
  • Karma: +0/-0
  • Sexo: Masculino
Tuve una idea, la desarrollé en este foro en inglés, por si alguien quiere mirarlo:

https://mathforums.com/t/symmetric-phase-summation.373958/.

Es verdad, el algoritmo que he puesto es un esbozo muy simple del que he desarrollado en matlab en base a esto.

Spoiler
Código: [Seleccionar]
function t_final = SPS_V56_FINAL_UNIVERSAL(n_input)
    tic;
    % 1. CONFIGURACIÓN DINÁMICA DE PRECISIÓN
    if n_input > 1e15, digits(100); else, digits(64); end
    n_v = vpa(n_input);
    pi_v = vpa(pi);
    n_d = double(n_input);

    % 2. SEMILLA DE GRAM (Fase n-1)
    t_g = (2.0 * pi * n_d) / (log(n_d / (2 * pi)));
    for i = 1:8
        ln_t_2pi = log(t_g / (2 * pi));
        th = (t_g/2) * (ln_t_2pi - 1) - (pi/8);
        t_g = t_g + ((n_d - 1) * pi - th) / (0.5 * ln_t_2pi);
    end
    t_seed = vpa(t_g);

    % 3. DETECTOR DE RÉGIMEN (RS Completo vs Turbo)
    tau = sqrt(t_seed / (2 * pi_v));
    N_rs_total = floor(double(tau));
   
    if N_rs_total < 10000
        K_limit = N_rs_total;
        usa_Psi = true; % Precisión total para n pequeños (como n=66)
    else
        K_limit = 3000;  % Velocidad para n gigantes (como n=10^20)
        usa_Psi = false;
    end
   
    k_v = vpa(1:K_limit);
    ln_k_v = log(k_v);
    sqrt_k_v = sqrt(k_v);

    function z = get_Z_Hybrid(t_val)
        t_c = vpa(t_val);
        th = (t_c/2)*(log(t_c/(2*pi_v)) - 1) - (pi_v/8) + (1/(48*t_c));
        z = 2 * sum(cos(th - t_c * ln_k_v) ./ sqrt_k_v);
        if usa_Psi
            p = sqrt(t_c / (2 * pi_v)) - vpa(N_rs_total);
            C0 = ((-1)^(N_rs_total-1)) * ( (t_c/(2*pi_v))^-0.25 );
            Psi = cos(2*pi_v*(p^2-p-1/16)) / cos(2*pi_v*p);
            z = z + (C0 * Psi);
        end
    end

    % 4. FASE 1: BISECCIÓN (Captura del Cero)
    paso = 2*pi / log(max(n_d, 100)/(2*pi));
    t_L = t_seed - 0.7*paso; t_H = t_seed + 0.2*paso;
    z_L = get_Z_Hybrid(t_L);
    for iter = 1:16
        t_mid = (t_L + t_H) / 2;
        if sign(double(get_Z_Hybrid(t_mid))) == sign(double(z_L))
            t_L = t_mid;
        else
            t_H = t_mid;
        end
    end

    % 5. FASE 2: SEGUNDA RONDA DE PULIDO (Ajuste de 5 Decimales)
    % Newton-Raphson con derivada analítica para máxima estabilidad
    t_final = (t_L + t_H) / 2;
    for j = 1:10
        zv = get_Z_Hybrid(t_final);
        der = -log(t_final / (2 * pi_v));
        t_final = t_final - (zv / der);
    end

    fprintf('--- V56 UNIVERSAL: n=%s ---\n', char(n_v));
    fprintf('[] T_Final: %s\n', char(vpa(t_final, 55)));
    toc;
end
[cerrar]

Ejemplo de salida:

Citar
SPS_V56_FINAL_UNIVERSAL(200000)
--- V56 UNIVERSAL: n=200000.0 ---
[] T_Final: 139501.969084647170779007931209810076358614789325444653
Elapsed time is 0.809175 seconds.
 
ans =
 
139501.9690846471707790079312098100763586147893254446529829899302

Citar
>> SPS_V56_FINAL_UNIVERSAL(10000010)
--- V56 UNIVERSAL: n=10000010.0 ---
[] T_Final: 4992385.546398457577595090954612846547077912768347575828
Elapsed time is 1.541393 seconds.
 
ans =
 
4992385.546398457577595090954612846547077912768347575827641767473

Intento aprender por el camino, sobre esta idea, la he desarrollado con la IA, pero se basa en analizar la función zeta de Riemann desde el centro sobre una continuación analítica hasta el infinito y desde el origen hasta el centro.
Juego de pinball gratuito hecho con el motor Zeta Atlas:

https://claude.ai/artifact/Km3QhYf4QJB7jbwVHrZirf   

Motor físico, dinámicas nunca vistas, instalar gratis.

23 Marzo, 2026, 11:11 am
Respuesta #4

Luis Fuentes

  • el_manco
  • Administrador
  • Mensajes: 58,907
  • País: es
  • Karma: +0/-0
Hola

Intento aprender por el camino, sobre esta idea, la he desarrollado con la IA, pero se basa en analizar la función zeta de Riemann desde el centro sobre una continuación analítica hasta el infinito y desde el origen hasta el centro.

Yo creo que sigues engañándote a ti mismo si crees que tu "desarrollas" nada. La IA hace cosas que no entiendes; al menos esa es la impresión que da de tu desempeño en el foro. O quizá yo esté confundido y sepas mucho de la hipótesis de Riemann y el bagaje que hace falta para entenderla. Allá tú. Sea como sea esto es subjetivo.

Lo objetivo es que en ambos códigos que pones lo que es útil no es nuevo; y lo nuevo no vale para nada. En el segundo estás usando más o menos el método de Newton-Raphson para encontrar los ceros de Riemann usando una serie que la aproxima. No es nuevo. En lo que llamas métodos "turbo" añades unos factores de corrección cuya precisión depende del "cero" de la función de Riemann que estés calculando, como antes.

Saludos.