Cap´ıtulo 2 Divisibilidad en Z - IMERL

Cap´ıtulo 2 Divisibilidad en Z - IMERL Cap´ıtulo 2 Divisibilidad en Z - IMERL

imerl.fing.edu.uy
from imerl.fing.edu.uy More from this publisher
07.05.2013 Views

42 CAPÍTULO 2. DIVISIBILIDAD EN Z Problema 2.5 .- Para cada uno de los pares de enteros siguientes, calcular el máximo común divisor utilizando el algoritmo de Euclides: (i) 34, 21; (ii) 136, 51; (iii) 481, 325; (iv) 8711, 3206; (v) 1134, 1221; En cada uno de los casos, resuelve la correspondiente identidad de Bézout. Problema 2.6 .- El algoritmo de Euclides puede hacerse ligeramente más rápido si permitimos restos negativos en la forma que sigue ri−1 = riqi + ri+1 con − |ri/2| < ri+1 ≤ |ri/2|. Por ejemplo, si aplicamos este método para calcular el máximo común divisor de 59 y 49, se tiene mcd(59, 49) = mcd(49, 10) = mcd(10, −1) = mcd(−1, 0) = 1. Utilizar este algoritmo, conocido como del mínimo resto, para calcular los máximos comunes divisores del ejercicio anterior y resolver las correspondientes identidades de Bézout. Problema 2.7 .- Demostrar las siguientes propiedades del máximo común divisor. 1. a b Si a y b son pares, mcd(a, b) = 2mcd , 2 2 2. a Si a es par y b es impar, mcd(a, b) = mcd , b 2 3. |a − b| Si a y b son impares, mcd(a, b) = mcd , b 2 A partir de las propiedades anteriores, construir un algoritmo para calcular el máximo común divisor de dos enteros realizando únicamente divisiones por 2. (Nota: Este algoritmo se conoce como algoritmo binario para el cálculo del mcd y es debido a J. Stein que publicó su resultado en 1967). Problema 2.8 .- Considérese la siguiente variante del algoritmo binario para el cómputo de mcd(a, b). Asumamos que a y b no son los dos pares. 1) Si a es par, sustituimos (a, b) por (a/2, b). 2) Si b es par, sustituimos (a, b) por (a, b/2). 3) Si a y b son impares, sustituimos (a, b) por a+b 2 a−b , . 2

2.6. PROBLEMAS PROPUESTOS 43 El algoritmo consiste en repetir los pasos (1)-(3) en ese orden. Si a o b es cero, paramos y devolvemos como mcd(a, b) el otro número en valor absoluto. Por ejemplo, para calcular mcd(15, 6) utilizando este algoritmo, se tendría: (15, 6) → (15, 3) → (9, 6) → (9, 3) → (6, 3) → (3, 3) → (3, 0) Demostrar que este algoritmo siempre acaba y que la respuesta es correcta. (Indicación: Para probar que el algoritmo termina, considera la aplicación f(a, b) = a 2 +b 2 y comprueba que cada vez que se da un paso en el algoritmo su valor decrece). Problema 2.9 .- Probar las siguientes propiedades de la sucesión de Fibonacci: Dos términos consecutivos de la sucesión son coprimos, es decir, mcd(Fn−1, Fn) = 1 para n ≥ 1 El mayor natural menor que Fn+2/Fn+1 (escrito ⌊Fn+2/Fn+1⌋) es 1. El resto de la división de Fn+1 por Fn es Fn−1. Problema 2.10 .- Descomponer de todas las formas posibles el número racional 100/273 en suma de dos fracciones positivas con denominadores 21 y 13. Problema 2.11 .- (Algoritmo extendido de Euclides para t enteros) Basándose en la interpretación matricial del algoritmo extendido de Euclides, diseñar un algoritmo para calcular, dados enteros a1, . . . , at, una identidad de Bézout del tipo a1x1 + a2x2 + · · · + atxt = mcd(a1, . . . , at). Aplicar dicho algoritmo a la resolución de ecuaciones diofánticas de la forma a1X1 + a2X2 + · · · + anXn = b. Problema 2.12 .- Para cada una de las ecuaciones diofánticas siguientes, estudiar si tienen solución y, en su caso, calcular todas las soluciones: 25X + 36Y = 10 ; 40X + 50Y = 3 ; 200X − 1768Y = 8 ; 213X + 1123Y = 18 ; 30X + 1107Y + 3030303Z = 25 ; 10X + 11Y + 20Z = 10 ; 3X + 7Y + 12Z + 21T = 22 ; 2200X + 1221Y − 2332Z + 101101T = 12.

42 CAPÍTULO 2. DIVISIBILIDAD EN Z<br />

Problema 2.5 .- Para cada uno de los pares de <strong>en</strong>teros sigui<strong>en</strong>tes, calcular el<br />

máximo común divisor utilizando el algoritmo de Euclides:<br />

(i) 34, 21; (ii) 136, 51; (iii) 481, 325; (iv) 8711, 3206; (v) 1134, 1221;<br />

En cada uno de los casos, resuelve la correspondi<strong>en</strong>te id<strong>en</strong>tidad de Bézout.<br />

Problema 2.6 .- El algoritmo de Euclides puede hacerse ligeram<strong>en</strong>te más rápido<br />

si permitimos restos negativos <strong>en</strong> la forma que sigue<br />

ri−1 = riqi + ri+1 con − |ri/2| < ri+1 ≤ |ri/2|.<br />

Por ejemplo, si aplicamos este método para calcular el máximo común divisor de 59<br />

y 49, se ti<strong>en</strong>e<br />

mcd(59, 49) = mcd(49, 10) = mcd(10, −1) = mcd(−1, 0) = 1.<br />

Utilizar este algoritmo, conocido como del mínimo resto, para calcular los máximos<br />

comunes divisores del ejercicio anterior y resolver las correspondi<strong>en</strong>tes id<strong>en</strong>tidades<br />

de Bézout.<br />

Problema 2.7 .- Demostrar las sigui<strong>en</strong>tes propiedades del máximo común divisor.<br />

1.<br />

<br />

a b<br />

Si a y b son pares, mcd(a, b) = 2mcd ,<br />

2 2<br />

2.<br />

<br />

a<br />

<br />

Si a es par y b es impar, mcd(a, b) = mcd , b<br />

2<br />

3.<br />

<br />

|a − b|<br />

Si a y b son impares, mcd(a, b) = mcd , b<br />

2<br />

A partir de las propiedades anteriores, construir un algoritmo para calcular el máximo<br />

común divisor de dos <strong>en</strong>teros realizando únicam<strong>en</strong>te divisiones por 2. (Nota:<br />

Este algoritmo se conoce como algoritmo binario para el cálculo del mcd y es debido<br />

a J. Stein que publicó su resultado <strong>en</strong> 1967).<br />

Problema 2.8 .- Considérese la sigui<strong>en</strong>te variante del algoritmo binario para el<br />

cómputo de mcd(a, b). Asumamos que a y b no son los dos pares.<br />

1) Si a es par, sustituimos (a, b) por (a/2, b).<br />

2) Si b es par, sustituimos (a, b) por (a, b/2).<br />

3) Si a y b son impares, sustituimos (a, b) por a+b<br />

2<br />

<br />

a−b , .<br />

2

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!