Implementación de algoritmos de teoría de números/Logaritmo discreto

De testwiki
Ir a la navegación Ir a la búsqueda

El logaritmo discreto de y en base g, donde g e y son elementos de un grupo cíclico finito G, a la solución x de la ecuación gx = y. Los logaritmos discretos son análogos en teoría de grupos a los logaritmos ordinarios en análisis. Mientras que el cálculo de su inversa — la exponenciación discreta — es una tarea muy sencilla en términos computacionales, el cálculo del logaritmo discreto no es sencillo en muchos grupos.

Definición

Sea (G,·) un grupo cíclico finito de orden n — con n elementos —, es decir, G={e,g,g2,...,gn-1} para cierto elemento g de G. Dado h perteneciente a G existe un k perteneciente a Z tal que h = gk. Este valor de k es el logaritmo discreto de h en base g.

Más formalmente, se define:

logg:G/n

como la función que asigna valores de la siguiente manera:

logg(x)=k tal que x=gk.

Propiedades

Algunas de las propiedades de esta función son:

  • logg(xy)=logg(x)+logg(y)
  •  t,logg(ct)=tlogg(c)
  • logg(1)=0
  • logg(g)=1

Aquí sigue vigente la fórmula del cambio de base de los logaritmos continuos siempre que c sea otro generador:

  • logc(x)=logc(g)logg(x)