Algoritmos aleatorizados
|
|
|
- Alejandro Paz Moreno
- hace 9 años
- Vistas:
Transcripción
1 Algoritmos aleatorizados IIC2283 IIC2283 Algoritmos aleatorizados 1/109
2 Algoritmos aleatorizados Vamos a permitir a los algoritmos tener una componente aleatoria I En general esto significa que un algoritmo toma algunas decisiones dependiendo de valores escogidos al azar (según una distribución de probabilidades) IIC2283 Algoritmos aleatorizados 2/109
3 Algoritmos aleatorizados Vamos a permitir a los algoritmos tener una componente aleatoria I En general esto significa que un algoritmo toma algunas decisiones dependiendo de valores escogidos al azar (según una distribución de probabilidades) Hablamos entonces de algoritmos aleatorizados IIC2283 Algoritmos aleatorizados 2/109
4 Algoritmos aleatorizados La ejecución de un algoritmo aleatorizado depende entonces de valores escogidos al azar I Distintas ejecuciones pueden dar resultados distintos IIC2283 Algoritmos aleatorizados 3/109
5 Algoritmos aleatorizados La ejecución de un algoritmo aleatorizado depende entonces de valores escogidos al azar I Distintas ejecuciones pueden dar resultados distintos Vamos a considerar dos tipos de algoritmos aleatorizados: IIC2283 Algoritmos aleatorizados 3/109
6 Algoritmos aleatorizados La ejecución de un algoritmo aleatorizado depende entonces de valores escogidos al azar I Distintas ejecuciones pueden dar resultados distintos Vamos a considerar dos tipos de algoritmos aleatorizados: I Monte Carlo: el algoritmo siempre entrega un resultado, pero hay una probabilidad de que sea incorrecto IIC2283 Algoritmos aleatorizados 3/109
7 Algoritmos aleatorizados La ejecución de un algoritmo aleatorizado depende entonces de valores escogidos al azar I Distintas ejecuciones pueden dar resultados distintos Vamos a considerar dos tipos de algoritmos aleatorizados: I Monte Carlo: el algoritmo siempre entrega un resultado, pero hay una probabilidad de que sea incorrecto I Las Vegas: si el algoritmo entrega un resultado es correcto, pero hay una probabilidad de que no entregue resultado IIC2283 Algoritmos aleatorizados 3/109
8 Cuáles son las ventajas de los algoritmos aleatorizados? IIC2283 Algoritmos aleatorizados 4/109
9 Cuáles son las ventajas de los algoritmos aleatorizados? Existen problemas para los cuales los algoritmos aleatorizados son más eficientes que los algoritmos usuales (sin una componente aleatoria) I Por ejemplo, el problema de verificar si un número es primo IIC2283 Algoritmos aleatorizados 4/109
10 Cuáles son las ventajas de los algoritmos aleatorizados? Existen problemas para los cuales los algoritmos aleatorizados son más eficientes que los algoritmos usuales (sin una componente aleatoria) I Por ejemplo, el problema de verificar si un número es primo Existen problemas para los cuales los únicos algoritmos eficientes conocidos son aleatorizados I Por ejemplo, el problema de verificar si dos polinomios en varias variables son equivalentes IIC2283 Algoritmos aleatorizados 4/109
11 Cuáles son las ventajas de los algoritmos aleatorizados? Existen problemas para los cuales los algoritmos aleatorizados son más eficientes que los algoritmos usuales (sin una componente aleatoria) I Por ejemplo, el problema de verificar si un número es primo Existen problemas para los cuales los únicos algoritmos eficientes conocidos son aleatorizados I Por ejemplo, el problema de verificar si dos polinomios en varias variables son equivalentes Vamos a ver en detalle estos ejemplos... IIC2283 Algoritmos aleatorizados 4/109
12 Un primer ejemplo: equivalencia de polinomios Consideramos polinomios en Q Suponemos inicialmente que un polinomio es una expresión de la forma: donde cada a i,j 2 Q p(x) = kx Y`i (x + a i,j ) i=1 j=1 La forma canónica de p(x) es una expresión de la forma: p(x) = donde cada c i 2 Q y ` =máx{`1,...,`k} `X c i x i i=0 El grado de p(x) es`. IIC2283 Algoritmos aleatorizados 5/109
13 Un primer ejemplo: equivalencia de polinomios Evaluamos los polinomios sobre elementos de Q I La operación más cara en este proceso es la multiplicación de números en Q, poresonosconcentramosenella IIC2283 Algoritmos aleatorizados 6/109
14 Un primer ejemplo: equivalencia de polinomios Evaluamos los polinomios sobre elementos de Q I La operación más cara en este proceso es la multiplicación de números en Q, poresonosconcentramosenella Ejercicio 1. De un algoritmo que, dado un polinomio p(x) ya 2 Q, calculep(a) 2. De un algoritmo que, dado un polinomio p(x) en su forma canónica y a 2 Q, calculep(a) Los dos algoritmos deben realizar O( p(x) ) multiplicaciones,donde p(x) es el largo de p(x) considerado como una palabra sobre un cierto alfabeto. IIC2283 Algoritmos aleatorizados 6/109
15 Un primer ejemplo: equivalencia de polinomios Dados dos polinomios p(x) y q(x), queremos verificar si son idénticos. I Para cada a 2 Q, setienequep(a) =q(a) IIC2283 Algoritmos aleatorizados 7/109
16 Un primer ejemplo: equivalencia de polinomios Dados dos polinomios p(x) y q(x), queremos verificar si son idénticos. I Para cada a 2 Q, setienequep(a) =q(a) Cómo podemos resolver este problema? IIC2283 Algoritmos aleatorizados 7/109
17 Un algoritmo para la equivalencia de polinomios EquivPol(p(x), q(x)) determine el grado k de p(x) determine el grado ` de q(x) if k 6= ` then return no else transforme p(x) es su forma canónica P k i=0 c ix i transforme q(x) es su forma canónica P k i=0 d ix i for i := 0 to k do if c i 6= d i then return no return sí IIC2283 Algoritmos aleatorizados 8/109
18 Un algoritmo para la equivalencia de polinomios Ejercicio Muestre que el algoritmo anterior en el peor caso es O(n 2 ), donde n = p(x) + q(x) I Recuerde que la operación básica a contar es la multiplicación de números racionales IIC2283 Algoritmos aleatorizados 9/109
19 Un algoritmo para la equivalencia de polinomios Ejercicio Muestre que el algoritmo anterior en el peor caso es O(n 2 ), donde n = p(x) + q(x) I Recuerde que la operación básica a contar es la multiplicación de números racionales Es posible resolver este problema utilizando un menor número de multiplicaciones? IIC2283 Algoritmos aleatorizados 9/109
20 Un algoritmo aleatorizado para la equivalencia de polinomios EquivPolAleatorizado(p(x), q(x)) determine el grado k de p(x) determine el grado ` de q(x) if k 6= ` then return no else escoja al azar y con distribución uniforme un elemento a del conjunto de números naturales {1,...,100 k} if p(a) =q(a) then return sí else return no IIC2283 Algoritmos aleatorizados 10 / 109
21 Un algoritmo aleatorizado para la equivalencia de polinomios El algoritmo sólo necesita realizar O(n) multiplicaciones, donde n = p(x) + q(x) I Ya que necesita calcular p(a) y q(a) IIC2283 Algoritmos aleatorizados 11 / 109
22 Un algoritmo aleatorizado para la equivalencia de polinomios El algoritmo sólo necesita realizar O(n) multiplicaciones, donde n = p(x) + q(x) I Ya que necesita calcular p(a) y q(a) Pero el algoritmo puede dar una respuesta equivocada I Cuál es la probabilidad de error? IIC2283 Algoritmos aleatorizados 11 / 109
23 Calculando la probabilidad de error Sean p(x) y q(x) dos polinomios de grado k I Si los polinomios p(x) y q(x) son equivalentes, entonces el algoritmo responde sí sin cometer error I Si los polinomios p(x) y q(x) no son equivalentes, el algoritmo puede responder sí al sacar al azar un elemento a 2{1,...,100 k} tal que p(a) =q(a) Esto significa que a es una raíz del polinomio r(x) =p(x) q(x) IIC2283 Algoritmos aleatorizados 12 / 109
24 Calculando la probabilidad de error r(x) no es el polinomio nulo y es de grado a lo más k I Por lo tanto r(x) tienealomásk raíces en Q IIC2283 Algoritmos aleatorizados 13 / 109
25 Calculando la probabilidad de error r(x) no es el polinomio nulo y es de grado a lo más k I Por lo tanto r(x) tienealomásk raíces en Q Concluimos que: Pr(a sea una raíz de r(x)) apple = k 100 k IIC2283 Algoritmos aleatorizados 13 / 109
26 Un mejor algoritmo aleatorizado La probabilidad de error del algoritmo está acotada por I Es aceptable esta probabilidad? IIC2283 Algoritmos aleatorizados 14 / 109
27 Un mejor algoritmo aleatorizado La probabilidad de error del algoritmo está acotada por I Es aceptable esta probabilidad? Ejercicio De un algoritmo que resuelva el problema de equivalencia de polinomios, que en el peor caso sea O(n) y que tenga una probabilidad de error acotada por IIC2283 Algoritmos aleatorizados 14 / 109
28 Un mejor algoritmo aleatorizado La probabilidad de error del algoritmo está acotada por I Es aceptable esta probabilidad? Ejercicio De un algoritmo que resuelva el problema de equivalencia de polinomios, que en el peor caso sea O(n) y que tenga una probabilidad de error acotada por Confiaría en este algoritmo lineal? IIC2283 Algoritmos aleatorizados 14 / 109
29 Un mejor algoritmo aleatorizado La probabilidad de error del algoritmo está acotada por I Es aceptable esta probabilidad? Ejercicio De un algoritmo que resuelva el problema de equivalencia de polinomios, que en el peor caso sea O(n) y que tenga una probabilidad de error acotada por Confiaría en este algoritmo lineal? I Para qué probabilidad estaría dispuesto a confiar? IIC2283 Algoritmos aleatorizados 14 / 109
30 Un segundo ejemplo: una definición general de polinomios Consideramos polinomios en varias variables en Q Un monomio es una expresión de la forma cx `1 1 cada `i 2 N x `n n, donde c 2 Q y Un monomio cx `1 1 I No es nulo si c 6= 0 x `n n es nulo si c =0 El grado de un monomio cx `1 1 x `n n no nulo es `1 + + `n IIC2283 Algoritmos aleatorizados 15 / 109
31 Un segundo ejemplo: una definición general de polinomios Un polinomio es una expresión de la forma: p(x 1,...,x n ) = `X i=1 Ym i j=1 donde cada a i,j,k 2 Q ycadaa i,j,n+1 2 Q nx a i,j,k x k + a i,j,n+1 k=1 IIC2283 Algoritmos aleatorizados 16 / 109
32 Un segundo ejemplo: una definición general de polinomios La forma canónica de un polinomio p(x 1,...,x n )esúnica,yesiguala0oa una suma de monomios que satisface las siguiente propiedades: I cada monomio en la forma canónica es de la forma cx `1 1 x `n n con c 6= 0 I si cx `1 `n 1 xn y dx m 1 1 x m n n son dos monomios distintos en la forma canónica, entonces `i 6= m i para algún i 2{1,...,n} Un polinomio p(x 1,...,x n ) es nulo si su forma canónica es 0 El grado de un polinomio p(x 1,...,x n )nonuloeselmayorgradodelos monomios en su forma canónica. IIC2283 Algoritmos aleatorizados 17 / 109
33 Equivalencia de polinomios en varias variables Dos polinomios p(x 1,...,x n )yq(x 1,...,x n ) son idénticos si para cada secuencia a 1,...,a n 2 Q se tiene que: p(a 1,...,a n ) = q(a 1,...,a n ) IIC2283 Algoritmos aleatorizados 18 / 109
34 Equivalencia de polinomios en varias variables Dos polinomios p(x 1,...,x n )yq(x 1,...,x n ) son idénticos si para cada secuencia a 1,...,a n 2 Q se tiene que: p(a 1,...,a n ) = q(a 1,...,a n ) Nuevamente queremos verificar si dos polinomios son idénticos. IIC2283 Algoritmos aleatorizados 18 / 109
35 Equivalencia de polinomios en varias variables Podemos verificar en tiempo polinomial si dos polinomios en varias variables son equivalentes? IIC2283 Algoritmos aleatorizados 19 / 109
36 Equivalencia de polinomios en varias variables Podemos verificar en tiempo polinomial si dos polinomios en varias variables son equivalentes? I Consideramos ahora todas las operaciones, no sólo la multiplicación de números racionales IIC2283 Algoritmos aleatorizados 19 / 109
37 Equivalencia de polinomios en varias variables Podemos verificar en tiempo polinomial si dos polinomios en varias variables son equivalentes? I Consideramos ahora todas las operaciones, no sólo la multiplicación de números racionales Tenemos un problema: calcular la forma canónica de un polinomio toma tiempo exponencial IIC2283 Algoritmos aleatorizados 19 / 109
38 Equivalencia de polinomios en varias variables Podemos verificar en tiempo polinomial si dos polinomios en varias variables son equivalentes? I Consideramos ahora todas las operaciones, no sólo la multiplicación de números racionales Tenemos un problema: calcular la forma canónica de un polinomio toma tiempo exponencial I Incluso si sólo consideramos la multiplicación de números racionales IIC2283 Algoritmos aleatorizados 19 / 109
39 Equivalencia de polinomios en varias variables Podemos verificar en tiempo polinomial si dos polinomios en varias variables son equivalentes? I Consideramos ahora todas las operaciones, no sólo la multiplicación de números racionales Tenemos un problema: calcular la forma canónica de un polinomio toma tiempo exponencial I Incluso si sólo consideramos la multiplicación de números racionales Pero existe un algoritmo aleatorizado eficiente para este problema. IIC2283 Algoritmos aleatorizados 19 / 109
40 Equivalencia de polinomios en varias variables Podemos verificar en tiempo polinomial si dos polinomios en varias variables son equivalentes? I Consideramos ahora todas las operaciones, no sólo la multiplicación de números racionales Tenemos un problema: calcular la forma canónica de un polinomio toma tiempo exponencial I Incluso si sólo consideramos la multiplicación de números racionales Pero existe un algoritmo aleatorizado eficiente para este problema. I Esto no es trivial ya que un polinomio p(x 1,...,x n )puedeteneruna cantidad infinita de raíces I Por ejemplo: p(x 1, x 2 )=(x 1 1)(x 2 3) IIC2283 Algoritmos aleatorizados 19 / 109
41 Equivalencia de polinomios en varias variables Podemos verificar en tiempo polinomial si dos polinomios en varias variables son equivalentes? I Consideramos ahora todas las operaciones, no sólo la multiplicación de números racionales Tenemos un problema: calcular la forma canónica de un polinomio toma tiempo exponencial I Incluso si sólo consideramos la multiplicación de números racionales Pero existe un algoritmo aleatorizado eficiente para este problema. I Esto no es trivial ya que un polinomio p(x 1,...,x n )puedeteneruna cantidad infinita de raíces I Por ejemplo: p(x 1, x 2 )=(x 1 1)(x 2 3) I El ingrediente principal es el lema de Schwartz-Zippel IIC2283 Algoritmos aleatorizados 19 / 109
42 El ingrediente principal Lema de Schwartz-Zippel Sea p(x 1,...,x n ) un polinomio no nulo de grado k, yseaa un subconjunto finito y no vacío de Q. Sia 1,...,a n son elegidos de manera uniforme e independiente desde A, entonces Pr(p(a 1,...,a n ) = 0) apple k A IIC2283 Algoritmos aleatorizados 20 / 109
43 El ingrediente principal Lema de Schwartz-Zippel Sea p(x 1,...,x n ) un polinomio no nulo de grado k, yseaa un subconjunto finito y no vacío de Q. Sia 1,...,a n son elegidos de manera uniforme e independiente desde A, entonces Pr(p(a 1,...,a n ) = 0) apple k A Demostración: Por inducción en n Ya habíamos considerado el caso n =1 Suponemos que la propiedad se cumple para todo polinomio en n variables, y consideramos un polinomio p(x 1, x 2,...,x n+1 ) de grado k IIC2283 Algoritmos aleatorizados 20 / 109
44 Demostración del lema de Schwartz-Zippel Si p(x 1, x 2,...,x n+1 ) en su forma canónica es igual a c 2 (Qr{0}), entonces el lema se cumple trivialmente ya que Pr(p(a 1, a 2,...,a n+1 ) = 0) = 0 Suponemos entonces que p(x 1, x 2,...,x n+1 ) en su forma canónica no es igual a c 2 Q. I Puesto que además sabemos que p(x 1, x 2,...,x n+1 )noesnulo IIC2283 Algoritmos aleatorizados 21 / 109
45 Demostración del lema de Schwartz-Zippel Tenemos que p(x 1, x 2,...,x n+1 ) en su forma canónica contiene un monomio de la forma: cx `1 1 x `2 2 x `n+1 n+1 donde c 6= 0y`i > 0paraalgúni 2{1,...,n +1} Sin perdida de generalidad suponemos que en el monomio anterior `1 > 0 Tenemos que: p(x 1, x 2,...,x n+1 ) = kx x1p i i (x 2,...,x n+1 ) i=0 donde cada p i (x 2,...,x n+1 )esunpolinomioyalmenosunodeellosnoesnulo IIC2283 Algoritmos aleatorizados 22 / 109
46 Demostración del lema de Schwartz-Zippel Sea ` =máx{i 2{0,...,k} p i (x 2,...,x n+1 )noesnulo} I Tenemos que `>0yaquesupusimosque`1 > 0 Dado que el grado de p(x 1, x 2,...,x n+1 )esk, tenemosqueelgradode p`(x 2,...,x n+1 )esm con m apple k ` IIC2283 Algoritmos aleatorizados 23 / 109
47 Demostración del lema de Schwartz-Zippel Sea ` =máx{i 2{0,...,k} p i (x 2,...,x n+1 )noesnulo} I Tenemos que `>0yaquesupusimosque`1 > 0 Dado que el grado de p(x 1, x 2,...,x n+1 )esk, tenemosqueelgradode p`(x 2,...,x n+1 )esm con m apple k ` Sea A un subconjunto finito y no vacío de Q, yseaa 1,...,a n+1 una secuencia de números elegidos de manera uniforme e independiente desde A IIC2283 Algoritmos aleatorizados 23 / 109
48 Demostración del lema de Schwartz-Zippel Por hipótesis de inducción tenemos que: Pr(p`(a 2,...,a n+1 )=0) apple m A apple k ` A Si p`(a 2,...,a n+1 ) 6= 0,entoncespordefiniciónde` tenemos que q(x 1 )=p(x 1, a 2,...,a n+1 )esunpolinomiodegrado`. Por lo tanto: Pr(p(a 1, a 2,...,a n+1 )=0 p`(a 2,...,a n+1 ) 6= 0) apple ` A IIC2283 Algoritmos aleatorizados 24 / 109
49 Demostración del lema de Schwartz-Zippel Concluimos que: Pr(p(a 1, a 2,...,a n+1 )=0) = Pr(p(a 1, a 2,...,a n+1 )=0 p`(a 2,...,a n+1 )=0) Pr(p`(a 2,...,a n+1 )=0)+ Pr(p(a 1, a 2,...,a n+1 )=0 p`(a 2,...,a n+1 ) 6= 0) Pr(p`(a 2,...,a n+1 ) 6= 0) apple Pr(p`(a 2,...,a n+1 )=0)+Pr(p(a 1, a 2,...,a n+1 )=0 p`(a 2,...,a n+1 ) 6= 0) apple k ` A + ` A = k A IIC2283 Algoritmos aleatorizados 25 / 109
50 Un algoritmo aleatorizado para la equivalencia de polinomios en varias variables Vamos a dar un algoritmo aleatorizado eficiente para el problema de verificar si dos polinomios en varias variables son equivalentes IIC2283 Algoritmos aleatorizados 26 / 109
51 Un algoritmo aleatorizado para la equivalencia de polinomios en varias variables Vamos a dar un algoritmo aleatorizado eficiente para el problema de verificar si dos polinomios en varias variables son equivalentes Suponga que la entrada del algoritmo está dada por los siguientes polinomios: `X Ym i nx p(x 1,...,x n ) = a i,j,k x k + a i,j,n+1 q(x 1,...,x n ) = i=1 j=1 rx Ys i i=1 j=1 k=1 nx b i,j,k x k + b i,j,n+1 k=1 IIC2283 Algoritmos aleatorizados 26 / 109
52 Un algoritmo aleatorizado para la equivalencia de polinomios en varias variables EquivPolAleatorizado(p(x 1,...,x n ), q(x 1,...,x n )) k := máx {m 1,...,m`, s 1,...,s r } A := {1,...,100 k} sea a 1,...,a n una secuencia de números elegidos de manera uniforme e independiente desde A if p(a 1,...,a n )=q(a 1,...,a n ) then return sí else return no IIC2283 Algoritmos aleatorizados 27 / 109
53 Utilizando el lema de Schwartz-Zippel Antes de analizar la complejidad del algoritmo vamos a calcular su probabilidad de error. IIC2283 Algoritmos aleatorizados 28 / 109
54 Utilizando el lema de Schwartz-Zippel Antes de analizar la complejidad del algoritmo vamos a calcular su probabilidad de error. I Si los polinomios p(x 1,...,x n )yq(x 1,...,x n )sonequivalentes,entonces el algoritmo responde sí sin cometer error IIC2283 Algoritmos aleatorizados 28 / 109
55 Utilizando el lema de Schwartz-Zippel Antes de analizar la complejidad del algoritmo vamos a calcular su probabilidad de error. I Si los polinomios p(x 1,...,x n )yq(x 1,...,x n )sonequivalentes,entonces el algoritmo responde sí sin cometer error I Si los polinomios p(x 1,...,x n )yq(x 1,...,x n )nosonequivalentes,el algoritmo puede responder sí al escoger una secuencia de números a 1,...,a n desde A tales que p(a 1,...,a n )=q(a 1,...,a n ) I Donde A = {1,...,100 k} IIC2283 Algoritmos aleatorizados 28 / 109
56 Utilizando el lema de Schwartz-Zippel Antes de analizar la complejidad del algoritmo vamos a calcular su probabilidad de error. I Si los polinomios p(x 1,...,x n )yq(x 1,...,x n )sonequivalentes,entonces el algoritmo responde sí sin cometer error I Si los polinomios p(x 1,...,x n )yq(x 1,...,x n )nosonequivalentes,el algoritmo puede responder sí al escoger una secuencia de números a 1,...,a n desde A tales que p(a 1,...,a n )=q(a 1,...,a n ) I Donde A = {1,...,100 k} Esto significa que (a 1,...,a n )esunaraízdelpolinomio r(x 1,...,x n )=p(x 1,...,x n ) q(x 1,...,x n ) IIC2283 Algoritmos aleatorizados 28 / 109
57 Utilizando el lema de Schwartz-Zippel r(x 1,...,x n )noeselpolinomionuloyesdegradot con t apple k I Dado que k =máx{m 1,...,m`, s 1,...,s r } IIC2283 Algoritmos aleatorizados 29 / 109
58 Utilizando el lema de Schwartz-Zippel r(x 1,...,x n )noeselpolinomionuloyesdegradot con t apple k I Dado que k =máx{m 1,...,m`, s 1,...,s r } Utilizando el lema de Schwartz-Zippel obtenemos: Pr(r(a 1,...,a n )=0) apple t A apple k A = k 100 k = IIC2283 Algoritmos aleatorizados 29 / 109
59 Utilizando el lema de Schwartz-Zippel r(x 1,...,x n )noeselpolinomionuloyesdegradot con t apple k I Dado que k =máx{m 1,...,m`, s 1,...,s r } Utilizando el lema de Schwartz-Zippel obtenemos: Pr(r(a 1,...,a n )=0) apple t A apple k A = k 100 k = La probabilidad de error del algoritmo está entonces acotada por IIC2283 Algoritmos aleatorizados 29 / 109
60 Un mejor algoritmo aleatorizado para el problema general Ejercicio De un algoritmo aleatorizado que resuelva el problema de equivalencia de polinomios en varias variables. I La probabilidad de error del algoritmo debe estar acotada por I Debe existir una constante c tal que el algoritmo en el peor caso es O(m c ), donde m es el tamaño de la entrada I Si consideramos p(x 1,...,x n )yq(x 1,...,x n )comopalabrassobre un cierto alfabeto, entonces m = p(x 1,...,x n ) + q(x 1,...,x n ) IIC2283 Algoritmos aleatorizados 30 / 109
61 Una solución para el ejercicio EquivPolAleatorizado(p(x 1,...,x n ), q(x 1,...,x n )) k := máx {m 1,...,m`, s 1,...,s r } A := {1,...,100 k} for i := 1 to 10 do sea a 1,...,a n una secuencia de números elegidos de manera uniforme e independiente desde A if p(a 1,...,a n ) 6= q(a 1,...,a n ) then return no else return sí IIC2283 Algoritmos aleatorizados 31 / 109
Algoritmos en teoría de números
Algoritmos en teoría de números IIC2283 IIC2283 Algoritmos en teoría de números 1 / 92 Para recordar: aritmética modular Dados dos números a, b Z, si b > 0 entonces existen α, β Z tales que 0 β < b y a
Un tercer ejemplo: verificación de primalidad
Un tercer ejemplo: verificación de primalidad Vamos a ver un algoritmo aleatorizado para verificar si un número es primo. I Este algoritmo es más eficiente que los algoritmos sin componentes aleatorias
Multiplicación de matrices simétricas
Multiplicación de matrices simétricas La traspuesta de una matriz A n n es definida como una matriz A T n n tal que A T [i, j] =A[j, i] paracadai, j 2{1,...,n} Además, una matriz A es simétrica si A =
Muchas de las ecuaciones de recurrencia que vamos a usar en este curso tienen la siguiente forma: ( c n =0 T (n) = a T (b n b.
El Teorema Maestro Muchas de las ecuaciones de recurrencia que vamos a usar en este curso tienen la siguiente forma: ( c n =0 T (n) = a T (b n b c)+f (n) n 1 donde a, b y c son constantes, y f (n) es una
Análisis de Algoritmos
Análisis de Algoritmos IIC1253 IIC1253 Análisis de Algoritmos 1 / 36 Complejidad de un algoritmo Un algoritmo A puede ser pensado como una función A : {0,1} {0,1} Qué tan general es esta representación?
Cardinalidad IIC1253. IIC1253 Cardinalidad 1 / 23
Cardinalidad IIC1253 IIC1253 Cardinalidad 1 / 23 Conjuntos con la misma cardinalidad Definición Decimos que dos conjuntos A y B son equinumerosos, denotado como A B, si existe una biyección f : A B. IIC1253
Cardinalidad IIC1253. IIC1253 Cardinalidad 1 / 23
Cardinalidad IIC1253 IIC1253 Cardinalidad 1 / 23 Conjuntos con la misma cardinalidad Definición Decimos que dos conjuntos A y B son equinumerosos, denotado como A B, si existe una biyección f : A B. Ejemplo
Fracciones Parciales. Ramón Espinoza Armenta AVC APOYO VIRTUAL PARA EL CONOCIMIENTO
Ramón Espinoza Armenta AVC APOYO VIRTUAL PARA EL CONOCIMIENTO Una expresión racional con coeficientes en un campo K, es una expresión de la forma ax ( ) bx ( ) donde ax ( ), bx ( ) K[ x] ax ( ) cx ( )
TEMA 5. FACTORIZACIÓN DE POLINOMIOS.
TEMA 5. FACTORIZACIÓN DE POLINOMIOS. 1. SACAR FACTOR COMÚN Cuando todos los términos de un polinomio, P(x), son múltiplos de un mismo monomio, M(x), podemos extraer M(x) como factor común. Por ejemplo:
Definición 1.2. Sea (K, +, ) un dominio de integridad. Un polinomio de grado n sobre K es una expresión de la forma
Polinomios Definición 1.1. Un conjunto K junto con dos operaciones definidas en él que denotaremos por + : K K K : K K K para las cuales se cumplen las siguientes propiedades: Asociatividad Conmutatividad
IV Taller de Olimpiadas Matemáticas para Profesores 2014
IV Taller de Olimpiadas Matemáticas para Profesores 204 Polinomios Jorge Tipe Villanueva. Polinomios Un polinomio es una expresión de la forma a n x n +a n x n + +a x+a 0, donde los números a i son complejos.
Ejercicio. Usando la formulación del principio de inducción mostrada en la transparencia anterior, demuestre que: 2 2 n 1esdivisiblepor3. =2 n.
Ejercicio Usando la formulación del principio de inducción mostrada en la transparencia anterior, demuestre que: n 1esdivisiblepor3 n i=0 ( ) n i = n IIC153 Inducción 18 / 30 Inducción estructural La forma
Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 45
Máquinas de Turing IIC3242 IIC3242 Máquinas de Turing 1 / 45 Complejidad Computacional Objetivo: Medir la complejidad computacional de un problema. Vale decir: Medir la cantidad de recursos computacionales
4.1 Anillo de polinomios con coeficientes en un cuerpo
Tema 4 Polinomios 4.1 Anillo de polinomios con coeficientes en un cuerpo Aunque se puede definir el conjunto de los polinomios con coeficientes en un anillo, nuestro estudio se va a centrar en el conjunto
Anillo de polinomios con coeficientes en un cuerpo
Capítulo 2 Anillo de polinomios con coeficientes en un cuerpo En el conjunto Z se ha visto cómo la relación ser congruente módulo m para un entero m > 1, es compatible con las operaciones suma y producto.
Álgebra I Práctica 7 - Polinomios
FCEyN - UBA - 2do cuatrimestre 2016 Generalidades Álgebra I Práctica 7 - Polinomios 1. Calcular el grado y el coeficiente principal de f Q[X] en los casos i) f = (4X 6 2X 5 + 3X 2 2X + 7) 77. ii) f = (
Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 42
Máquinas de Turing IIC3242 IIC3242 Máquinas de Turing 1 / 42 Complejidad Computacional Objetivo: Medir la complejidad computacional de un problema. Vale decir: Medir la cantidad de recursos computacionales
R no es enumerable. Por contradicción, supongamos que existe una biyección f : N! R. diagonalización de Cantor. Para cada i 2 N:
R no es enumerable Por contradicción, supongamos que existe una biyección f : N! R. I Vamos a obtener una contradicción usando el método de diagonalización de Cantor. Para cada i 2 N: f (i) = n i.d i,0
ALGEBRA y ALGEBRA LINEAL. Primer Semestre CAPITULO 6. POLINOMIOS DE UNA VARIABLE.
ALGEBRA y ALGEBRA LINEAL 520142 Primer Semestre CAPITULO 6. POLINOMIOS DE UNA VARIABLE. DEPARTAMENTO DE INGENIERIA MATEMATICA Facultad de Ciencias Físicas y Matemáticas 1 Definición: Polinomio Sea K (Q,
Clase 4 Funciones polinomiales y racionales
Clase 4 Instituto de Ciencias Básicas Facultad de Ingeniería Universidad Diego Portales Marzo de 2014 Polinomios Definición Se llama polinomio en x a toda expresión de la forma p(x) = a 0 + a 1x+ +a n
El teorema de los ceros de Hilbert (primera lección)
El teorema de los ceros de Hilbert (primera lección) Alexey Beshenov ([email protected]) Universidad de El Salvador. 6 de marzo de 2018 En estos apuntes voy a revisar un par de resultados básicos de la
TALLER DE MATEMÁTICAS NOTAS. Toda expresión algebraica del tipo. a n x n + a n 1 x n a 1 x + a 0. es un polinomio de grado n, si a n 0.
NOTAS Toda expresión algebraica del tipo es un polinomio de grado n, si a n 0. a n x n + a n 1 x n 1 +... + a 1 x + a 0 RELACIONES DE DIVISIBILIDAD 1) x n a n = (x a)(x n 1 + ax n 2 + a 2 x n 3 +... +
ALGEBRA LINEAL - Práctica N 1 - Segundo cuatrimestre de 2017 Espacios Vectoriales
Departamento de Matemática - Facultad de Ciencias Exactas y Naturales - UBA 1 ALGEBRA LINEAL - Práctica N 1 - Segundo cuatrimestre de 2017 Espacios Vectoriales Ejercicio 1. Resolver los siguientes sistemas
SOLUCIONES A LOS EJERCICIOS DE LA UNIDAD. a) Grado 2 b) Grado 3 c) Grado 2 d)grado 1 e) Grado 1 f) Grado 3 g) Grado 0 h) Grado 2 i) Grado 0
Pág. Página 8 PRACTICA Monomios Indica cuál es el grado de los siguientes monomios y di cuáles son semejantes: a) x b) x c) x d) x e) x f) x g) h) x i) a) Grado b) Grado c) Grado d)grado e) Grado f) Grado
Álgebra I Práctica 5 - Polinomios
Álgebra I Práctica 5 - Polinomios 1. Para los siguientes z C, hallar Rez), Imz), z, Rez 1 ), Imz 1 ), Re i z) e Imi z). i) z = 2 + i)1 + 3 i). ii) z = 5 i1 + i) 4. iii) z = 2 + 3 i) 2 1 3 i). iv) z = i
El Teorema Fundamental del Álgebra
El Teorema Fundamental del Álgebra 1. Repaso de polinomios Definiciones básicas Un monomio en una indeterminada x es una expresión de la forma ax n que representa el producto de un número, a, por una potencia
RSA: Implementación. Ya resolvimos (3), ahora vamos a resolver (2). IIC3242 Complejidad Probabiĺıstica 28 / 77
RSA: Implementación Para poder implementar RSA necesitamos algoritmos eficientes para los siguientes problemas: (1) Generar primos P y Q (2) Generar números e y d tales que e d modφ(n) = 1 (3) Calcular
GUÍA DE EJERCICIOS. Área Matemática - Polinomios
GUÍA DE EJERCICIOS Área Matemática - Polinomios Resultados de aprendizaje. Realizar operaciones entre polinomios. Aplicar Regla de Ruffini, para determinar raíces de un polinomio. Aplicar los procedimientos
Algebra y Trigonometría Grupo: 1
Guía No 4 Algebra y Trigonometría Grupo: 1 UNAD Escuela de Ciencias Básicas Tecnología e Ingeniería Algebra Trigonometría y Geometría Analítica Definición: FUNCIONES POLINOMIALES Una función polinomial
Semana 14 [1/19] Polinomios. 8 de junio de Polinomios
Semana 14 [1/19] 8 de junio de 2007 División Semana 14 [2/19] Teorema de la División Al ser (K[x], +, ) un anillo, ocurre un fenómeno similar al de : Las divisiones deben considerar un posible resto. Teorema
CURSO CERO DE MATEMATICAS. Apuntes elaborados por Domingo Pestana Galván. y José Manuel Rodríguez García
INGENIEROS INDUSTRIALES Y DE TELECOMUNICACIONES CURSO CERO DE MATEMATICAS Apuntes elaborados por Domingo Pestana Galván y José Manuel Rodríguez García UNIVERSIDAD CARLOS III DE MADRID Escuela Politécnica
AMPLIACIÓN DE MATEMÁTICAS. DIVISIBILIDAD DE NÚMEROS ENTEROS. En el conjunto de los números enteros
AMPLIACIÓN DE MATEMÁTICAS DIVISIBILIDAD DE NÚMEROS ENTEROS. En el conjunto de los números enteros Z = {..., n,..., 2, 1, 0, 1, 2, 3,..., n, n + 1,...} tenemos definidos una suma y un producto para los
3.1 Polinomios Polinomio: Expresión algebraica formada por la suma y/o resta de varios monomios.
Tema : Polinomios, Ecuaciones y Sistemas de ecuaciones..1 Polinomios Polinomio: Expresión algebraica formada por la suma y/o resta de varios monomios. Ejemplo: P(x) = x 4 x + x + 5 Terminología: Ejemplo:
ALGEBRA 1- GRUPO CIENCIAS- TURNO TARDE- Polinomios
Resumen teoría Prof. Alcón ALGEBRA 1- GRUPO CIENCIAS- TURNO TARDE- Polinomios Sea (A, +,.) un anillo conmutativo. Indicamos con A[x] al conjunto de polinomios en una indeterminada x con coeficientes en
Polinomios CLAVES PARA EMPEZAR VIDA COTIDIANA. a) 3x b) c) d) x 2 3. a) iii b) ii c) i. a) 7 (4 2) c) 9x (x 4) 9x 2 36x
CLAVES PARA EMPEZAR a) 3x b) c) d) x 2 3 a) iii b) ii c) i a) 7 (4 2) 28 14 42 c) 9x (x 4) 9x 2 36x b) 3 (x ) 3x 1 d) ( 2x) (3x 2 4x 7) 6x 3 8x 2 14x VIDA COTIDIANA Largo de página x Ancho de página 2x
Álgebra I Práctica 5 - Polinomios
Números complejos Álgebra I Práctica 5 - Polinomios 1. Para los siguientes z C, hallar Re(z), Im(z), z, Re(z 1 ), Im(z 1 ), Re( i z) e Im(i z). i) z = (2 + i)(1 + 3 i). ii) z = 5 i(1 + i) 4. iii) z = (
Examen Final - soluciones
Algebra Lineal 2, FAMAT-UG, agsto-dic, 2009 PARTE A (60 puntos). Cierto o Falso. Examen Final - soluciones 9 dic, 2009 1. Para todo operador ortogonal T en R n, det(t ) = 1. Falso. T : (x 1,..., x n )
ALGEBRA III Práctica 1
1 er cuatrimestre 2002 ALGEBRA III Práctica 1 Nota: En esta práctica anillo significa anillo conmutativo con 1 0. 1. Sea A un anillo. Probar que: (i) A tiene ideales maximales y todo ideal propio I está
Anexo: El anillo de polinomios K[x].
El anillo de polinomios K[x] 1 Anexo: El anillo de polinomios K[x]. 1. Construcción del anillo de polinomios K[x]. Dado un cuerpo K, se define m K[x] = { a i x i a i K, i = 0,..., m, m N {0}}, i=0 donde
5 REPASO Y APOYO OBJETIVO 1
5 REPASO Y APOYO OBJETIVO 1 RECONOCER EL GRADO, LOS TÉRMINOS Y EL TÉRMINO INDEPENDIENTE DE UN POLINOMIO Nombre: Curso: echa: Un monomio es una expresión algebraica formada por el producto de un número,
IN34A - Optimización
IN34A - Optimización Complejidad Leonardo López H. [email protected] Primavera 2008 1 / 33 Contenidos Problemas y Procedimientos de solución Problemas de optimización v/s problemas de decisión Métodos,
Método de integración por fracciones parciales
Método de integración por fracciones parciales Temas Fracciones parciales. Método de integración por fracciones parciales. Capacidades Descomponer una fracción en suma de fracciones parciales. Conocer
Tema 2: Bases de Gröbner
Tema 2: Bases de Gröbner Miguel Ángel Olalla Acosta [email protected] Departamento de Álgebra Universidad de Sevilla Febrero de 2018 Olalla (Universidad de Sevilla) Tema 2: Bases de Gröbner Febrero de
Transformaciones Lineales y Espacio Dual
Transformaciones Lineales y Espacio Dual Juan Pablo De Rasis 22 de abril de 2018 El presente artículo tiene como objetivo la exposición de soluciones a problemas de Álgebra Lineal concernientes a transformaciones
Anillo de Polinomios.
Capítulo 6 Anillo de Polinomios. Una forma de definir los polinomios en forma intuitiva es la siguiente: Sea (K,+, ) un cuerpo, entonces un polinomio con coeficiente en K es de la siguiente forma p(x)
Álgebra y Álgebra II - Segundo Cuatrimestre 2017 Práctico 4 - Espacios Vectoriales
Álgebra y Álgebra II - Segundo Cuatrimestre 2017 Práctico 4 - Espacios Vectoriales (1) Sea n N. Mostrar que el conjunto de polinomios sobre R de grado menor que n es un subespacio vectorial de R[x]. Este
TRABAJO PRÁCTICO Nº 4: POLINOMIOS
TRABAJO PRÁCTICO Nº : POLINOMIOS EJERCICIOS A DESARROLLAR Clase ) Dados los polinomios reales P(x) =.x ; Q(x) = 3x3 x + y los polinomios complejos R(x) = i.x ; S(x) = x + ( + i).x i, calcular: a) 3x. P(x)
Semana02[1/23] Conjuntos. 9 de marzo de Conjuntos
Semana02[1/23] 9 de marzo de 2007 Introducción Semana02[2/23] La teoría de conjuntos gira en torno a la función proposicional x A. Los valores que hacen verdadera la función proposicional x A son aquellos
Exámenes de álgebra básica de enero de Grupos 1 y 3.
Exámenes de álgebra básica de enero de 2019. Grupos 1 y 3. GRUPOS 1. Calcular razonadamente todos los subgrupos normales de S 4. Un subgrupo H de un grupo G es normal si y solamente si para cada g G se
Departamento de Ingeniería Matemática - Universidad de Chile
Ingeniería Matemática FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS UNIVERSIDAD DE CHILE Álgebra Lineal 08-2 SEMANA 7: ESPACIOS VECTORIALES 3.5. Generadores de un espacio vectorial Sea V un espacio vectorial
FACTORIZACIÓN I # DE FACTORES PRIMOS POLINOMIO FACTORIZADO. multiplicación (x + 1) (x + 3) = x 2 + 4x + 3. P(x, y, z) = (x + y)(x - y)z 2 x 3
I Es el proceso que consiste en transportar un polinomio racional entero en una multiplicación de dos o mas polinomios de grados mayores o iguales a uno, llamado factores: multiplicación (x + 1) (x + 3)
Tema 4: Funciones. Límites de funciones
Tema 4: Funciones. Límites de funciones 1. Concepto de función Una aplicación entre dos conjuntos A y B es una transformación que asocia a cada elemento del conjunto A un único elemento del conjunto B.
520142: ALGEBRA y ALGEBRA LINEAL
520142: ALGEBRA y ALGEBRA LINEAL Segundo Semestre 2008, Universidad de Concepción CAPITULO 10: Espacios Vectoriales DEPARTAMENTO DE INGENIERIA MATEMATICA Facultad de Ciencias Físicas y Matemáticas 1 Definición
AMPLIACIÓN DE MATEMÁTICAS
AMPLIACIÓN DE MATEMÁTICAS RAÍCES MÚLTIPLES. Dado un polinomio con coeficientes en un cuerpo existirá siempre un elemento del cuerpo que anula el polinomio? Siempre existe un cuerpo donde podamos encontrar
Espacios vectoriales
Espacios vectoriales [Versión preliminar] Prof. Isabel Arratia Z. Algebra Lineal 1 En el estudio de las matrices y, en particular, de los sistemas de ecuaciones lineales realizamos sumas y multiplicación
Generación de variables aleatorias continuas Método de rechazo
Generación de variables aleatorias continuas Método de rechazo Georgina Flesia FaMAF 18 de abril, 2013 Método de Aceptación y Rechazo Repaso Se desea simular una v. a. X discreta, con probabilidad de masa
ALGEBRA I, ALGEBRA Y TRIGONOMETRIA , Segundo Semestre CAPITULO 6: POLINOMIOS.
ALGEBRA I, ALGEBRA Y TRIGONOMETRIA 520135, 522115 Segundo Semestre CAPITULO 6: POLINOMIOS. DEPARTAMENTO DE INGENIERIA MATEMATICA Facultad de Ciencias Físicas y Matemáticas 1 Definición: Polinomio Sea K
1. El Teorema de Rolle Generalizado.
Proyecto III: Los Teoremas de Rolle y del valor Medio Objetivos: Profundizar el estudio de algunos teoremas del cálculo diferencial 1 El Teorema de Rolle Generalizado La formulación más común del Teorema
La lógica de segundo orden: Sintaxis
La lógica de segundo orden: Sintaxis Dado: Vocabulario L Definición La lógica de segundo orden (LSO) sobre L es definida como la extensión de LPO que incluye las siguientes reglas: Si t 1,..., t k son
Álgebra y Álgebra II - Primer Cuatrimestre 2018 Práctico 4 - Espacios Vectoriales
Álgebra y Álgebra II - Primer Cuatrimestre 2018 Práctico 4 - Espacios Vectoriales (1) Decidir si los siguientes conjuntos son R-espacios vectoriales con las operaciones abajo denidas. (a) R n con v w =
Desde la secundaria estamos acostumbrados a trabajar con polinomios, los cuales identificamos con expresiones de la forma
Polinomios Desde la secundaria estamos acostumbrados a trabajar con polinomios, los cuales identificamos con expresiones de la forma p(x) = a 0 + a 1 x +... + a n x n (1) donde x es la variable y a 0,
4. Complejidad computacional
Fundamentos de Programación Entera 4. Complejidad computacional Carlos Testuri Germán Ferrari Departamento de Investigación Operativa Instituto de Computación Facultad de Ingeniería Universidad de la República
4.2 Producto escalar.
Producto escalar. 147 Este resultado tiene su recíproco, es decir, cualquier matriz cuadrada A define la forma bilineal b(x, y) =x T Ay Si b es simétrica, la matriz A es simétrica. Si b es definida positiva,
Complejidad computacional. Algoritmos y Estructuras de Datos I. Complejidad computacional. Notación O grande
Complejidad computacional Algoritmos y Estructuras de Datos I Segundo cuatrimestre de 2014 Departamento de Computación - FCEyN - UBA Algoritmos - clase 10 Introducción a la complejidad computacional y
RECONOCER EL GRADO, EL TÉRMINO Y LOS COEFICIENTES DE UN POLINOMIO
OBJETIVO RECONOCER EL GRADO, EL TÉRMINO Y LOS COEICIENTES DE UN POLINOMIO NOMBRE: CURSO: ECHA: Un polinomio es una expresión algebraica formada por la suma de monomios, que son los términos del polinomio.
TEMA 5 EXPRESIONES ALGEBRAICAS
5.1 Monomios TEMA 5 EXPRESIONES ALGEBRAICAS Di si las siguientes expresiones matemáticas son monomios o no. En caso de serlo, determina su parte literal, su coeficiente y su grado. 6x 4 6 1 x 4 6 x 4 no
2. Problemas. Espacios Vectoriales. Álgebra Lineal- Propedéutico Mayo de 2012
2. Problemas. Espacios Vectoriales. Álgebra Lineal- Propedéutico Mayo de 2012 1. En R 2 se define la suma: (a 1, b 1 ) + (a 2, b 2 ) = (a 1 + a 2, b 1 + b 2 ) y el producto por un escalar: λ(a, b) = (0,
Tema 01: Fundamentos del Análisis Asintótico de Algoritmos
Tema 01: Fundamentos del Análisis Asintótico de Algoritmos Noviembre, 2003 CS0218: Algoritmos y Programación II Introducción En Ciencias de la Computación se presenta con frecuencia la situación de analizar
Formulando con modelos lineales enteros
Universidad de Chile 19 de marzo de 2012 Contenidos 1 Forma de un problema Lineal Entero 2 Modelando con variables binarias 3 Tipos de Problemas Forma General de un MILP Problema de optimización lineal
