Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CONTENIDO
Funciones: propiedades, comparacin del tamao de
propiedades de funciones
Sea f: AB una funcin. Diremos que f es inyectiva si
y slo si
x,yA xy f(x) f(y).
Es decir, a elementos distintos del conjunto de partida
le corresponden elementos distintos del codominio,
Propiedades de Funciones
Sea f: AB una funcin. Diremos que f es sobreyectiva
si y slo si y B x A : f(x) = y.
Es decir, la imagen de f es igual al codominio de la
funcin.
Propiedades de Funciones
Una funcin es biyectiva si es inyectiva y
sobreyectiva a la vez.
Propiedades de Funciones
Ejemplo:
La funcin f : R Z definida como f(x) = x+1
- es sobreyectiva porque para cualquier y Z existe un
nmero en R, y 1 tal que f(y 1) = y.
- Pero, f no es inyectiva porque, por ejemplo,
f(2.5) = f(2.6).
Propiedades de Funciones
Ejemplo:
La funcin f : Z Z definida como
f(x) = x+1
Es sobreyectiva porque para cualquier y Z existe un
nmero en Z, y 1 tal que f(y 1) = y.
Adems, f es inyectiva porque, x,y A
xy f(x) f(y).
Por lo tanto, Concluimos que f es biyectiva.
La inversa de f, f-1: Z Z se define como f -1 (y) = y-1.
Funciones de cifrado
Funcin de cifrado para traducir letras de un alfabeto,
Funciones de cifrado
Preguntas:
Es f una biyeccin?
Cmo decodificamos el mensaje?
f1(x) = (x 5) mod 27.
Sabemos f(26)=4
f 1(4) = (4 5) mod 27 =(1) mod 27 =26
Criptoanlisis
Criptoanlisis (del griego krypts,
Funciones de cifrado
La funcin f(x)=(x+5) mod 27 es un ejemplo de funcin
de cifrado aditiva.
Las funciones de cifrado aditivas son monoalfabtica:
un caracter del alfabeto es siempre reemplazado por
un mismo caracter del alfabeto.
Dado mtpf podemos deducir fcilmente que codifica
la palabra hola.
Otras funciones de cifrado monoalfabticas son las
funciones de cifrado multiplicativas.
Ejemplo: g(x) = 3x mod 27
Es g una biyeccin?
Funciones de cifrado
Otro ejemplo de funciones de cifrado monoalfabticas
Funciones Hash
Una funcin hash es una funcin que mapea un
Funciones Hash
Ejemplo:
Mapear las abreviaturas de los meses del ao
utilizando la funcin de hash f:
S {0,1,,11}
f(XYZ) = (ord(X)+ord(Y)+ord(Z)) mod 12,
donde ord(X) es el cdigo ASCII de X.
Funciones Hash
Colisiones:
libre:
(k + 1) mod n, (k + 2) mod n, , (k + n) mod n.
Funciones Hash
Preguntas:
Es posible encontrar una funcin inyectiva de tal manera
Funciones Hash
Sondeo lineal utilizando huecos (gaps)
Funciones Hash
Aplicaciones de las funciones hash:
prod(n,0) = 0
prod(m, n+1) = suma (m,prod(m, n))
Definicin recursiva de exponenciacin:
exp(m,0) = 1
exp(m, n+1) = prod(m,exp(m, n))
Nota: usaremos +,* y para denotar suma,
f(n)=1 + 3 + + (2n + 1)
=(1 + 3 + + (2n 1)) + (2n + 1)
=(1 + 3 + + 2(n 1) + 1) + (2n +1)
= f (n 1) + 2n + 1.
Definicin recursiva de f
f (0) = 1,
f (n + 1) = f (n) + 2n + 3.
fib(0) = 0,
fib(1) = 1,
fib(n+2) = fib(n+1) + fib(n)
comp(a.w) = b.comp(w)
comp(b.w) = a.comp(w)
elemento) x y cola T.
Definicin recursiva de longitud
longitud ([] ) = 0
longitud (a::T) = 1 + longitud (T) .
pares ([ ] ,[ ] ) =[ ] ,
pares (a :: T, b :: T) = (a, b) :: pares(T,T) .
no vaco de smbolos.
Una cadena sobre es una secuencia finita de
smbolos de .
* es el conjunto de todas las cadenas sobre .
Un lenguajes sobre es un subconjunto de *.
Una gramtica para un lenguaje puede ser descripta
definiendo su proceso generativo.
derivaciones
Sea G=(VN,VT, S, P) y sean w1 y w2 cadenas sobre VN
U V T.
Decimos que w1 deriva directamente w2, y lo
notamos w1 w2 si
es una produccin en P,
w1 contiene una instancia de ,
w2 es obtenida a partir de w1 reemplazando esa
instancia de con .
derivaciones
Si w1,w2,...,wn son cadenas sobre VN UV T y w1 w2, w2
Lenguaje formal
Dada una gramtica G, el lenguaje L generado por G,
Ejemplo de derivacin
Sea L = {0n1n | n 1}. Una gramtica para L es
Ejemplo de derivacin
Sea L = {anbncn | n 1}. Una gramtica para L es
Ejemplo de derivacin
Podemos generar la cadena a2b2c2 como sigue
S aSBC
aaBCBC
aaBBCC
aabBCC
aabbCC
aabbcC
aabbcc