Números naturales y recursividad

Documentos relacionados
Números naturales y recursividad

COMPLEMENTO DEL TEÓRICO

Guía N 1 Introducción a las Matemáticas

UN CONJUNTO QUEDA DETERMINADO POR SUS ELEMENTOS QUE PERTENECEN A ÉL.. 2) PARA QUE UN CONJUNTO EXISTA ES NECESARIO QUE SUS ELEMENTOS

Capítulo 2: Inducción y recursión Clase 3: Definiciones recursivas e Inducción estructural

Solución Primer Parcial Matemática

Lógica Instituto de Computación. 27 de febrero

Teoría de Números. Divisibilidad. Olimpiada de Matemáticas en Tamaulipas

Tema 1 Aritmética entera

ALGEBRA 1- GRUPO CIENCIAS- TURNO TARDE- Enteros

CENTRO UNIVERSITARIO UAEM ZUMPANGO INGENIERO EN COMPUTACION TEMA: TEORIA DE NÚMEROS

CURSO CERO DE MATEMATICAS. Apuntes elaborados por Domingo Pestana Galván. y José Manuel Rodríguez García

DE LOS NÚMEROS NATURALES Y ENTEROS

Cálculo Diferencial: Enero 2016

Lógica - Conjuntos inductivos

Capítulo III. Inducción y Recursión

14/02/2017. TEMA 3: EL CUERPO DE LOS NUMEROS REALES Esp. Prof. Liliana N. Caputo

Catedrático: I.S.C. Iván de J. Moscoso Navarro Contenido:

Univ. Nacional de Colombia, Medellín Escuela de Matemáticas Matemáticas Discretas Marzo 8, Soluciones Taller 5

Este documento es de distribución gratuita y llega gracias a El mayor portal de recursos educativos a tu servicio!

Capítulo I ELEMENTOS PREVIOS

Índice general. Introducción Cuestionario del módulo cero Soluciones del cuestionario

Los Números Enteros. 1.1 Introducción. 1.2 Definiciones Básicas. Capítulo

Semana 14. Carlos Hernandez. Helena de Oteyza. Alfredo.

Teorema de Lagrange. En esta sección demostramos algunos hechos básicos sobre grupos, que se pueden deducir de la definición

INDUCCIÓN MATEMÁTICA 1. INTRODUCCIÓN

1. NÚMEROS PRIMOS Y COMPUESTOS.

DEPARTAMENTO DE MATEMATICAS Y FISICA Matemáticas Discreta

ALGEBRA y ALGEBRA LINEAL. Primer Semestre INDUCCION MATEMATICA

Matemáticas números reales

ESCUELA PREPARATORIA OFICIAL NO.16 MATERÍA: PENSAMIENTO NUMÉRICO Y ALGEBRAICO I

Aritmética Entera MATEMÁTICA DISCRETA I. F. Informática. UPM. MATEMÁTICA DISCRETA I () Aritmética Entera F. Informática.

Semana 07[1/21] Sumatorias. 12 de abril de Sumatorias

Criterios de divisibilidad y Congruencias

DIVISIBILIDAD NÚMEROS NATURALES

Departamento de Matemáticas Facultad de Química UNAM. Febrero de 2011

1. Ecuaciones lineales en cuerpos finitos

Resumen de aritmética de Peano

Matemática Discreta. Números, inducción y recursión. Números, inducción y recursión: principio de inducción

Sucesiones, inducción y sumatorias

El ente básico de la parte de la matemática conocida como ANÁLISIS, lo constituye el llamado sistema de los número reales.

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.

Anillo de polinomios con coeficientes en un cuerpo

Capítulo 11. Progresiones aritméticas y geométricas

Inducción Matemática Conjuntos Funciones. Matemática Discreta. Agustín G. Bonifacio UNSL. Repaso de Inducción, Conjuntos y Funciones

Números primos y compuestos

ÁLGEBRA LINEAL I Algunas soluciones a la Práctica 3

Principio de inducción y Sumatorias

Definiciones generales. Alfabeto de la lógica proposicional. Conectivos. Conectivos

Clase 2: Algoritmo de Euclídes

Tema 1: El cuerpo de los números reales

Anillos. a + (b + c) = (a + b) + c. 3) Existe un elemento 0 en R, el cual llamaremos cero, tal que. a + 0 = 0 + a = a para todo a en R.

(n, a)(m, b) = (nm, ma + nb) (a, b) + (c, d) = (a + c, b + d) y (a, b)(c, d) = (ac, bd)

10. Series de potencias

Seminario de problemas Curso Estrategias matemáticas: recurrencias.

Conjuntos. Un conjunto es una colección de objetos. Si a es un objeto y R es un conjunto entonces por. a R. se entiende que a pertenece a R.

El Algoritmo de Euclides

CONJUNTO DE LOS NÚMEROS NATURALES

Departamento de Ingeniería Matemática - Universidad de Chile

LOS NÚMEROS NATURALES

Gu ıa Departamento. Matem aticas U.V.

MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS

TALLER DE MATEMÁTICAS 1 ECUACIONES POLINÓMICAS

INDUCCIÓN. Inducción - 2

INDUCCIÓN Instituto de Computación Lógica Inducción - 1

Aritmética entera. AMD Grado en Ingeniería Informática. AMD Grado en Ingeniería Informática (UM) Aritmética entera 1 / 15

a b 2 a 2 2ab b 2 a b 3 a 3 3a 2 b 3ab 2 b 3 a b 4 a 4 4a 3 b 6a 2 b 2 4ab 3 b 4 a b 5 a 5 5a 4 b 10a 3 b 2 10a 2 b 3 5ab 4 b 5

PRIMER CURSO AÑO LECTIVO El módulo de la multiplicación es el 0 V F. 4. La división de Z si cumple la propiedad conmutativa V F

Olimpiada de Matemáticas en Chiapas

Capítulo II. Pruebas en Matemáticas

Tema 3: Multiplicación y división.

Introducción. El uso de los símbolos en matemáticas.

Álgebra I Práctica 3 - Números enteros (Parte 1)

Matemáticas Discretas

Números Reales. El conjunto de los números naturales. Concepto intuitivo de número natural

Modalidad virtual. Matemática

UNIDAD 1 NUMEROS COMPLEJOS

UNIDAD DE APRENDIZAJE II

Álgebra Básica. Departamento de Álgebra.

TEMA 1.- POLINOMIOS Y FRACCIONES ALGEBRAICAS

Los números naturales. Definición y propiedades

TEMA 1: NÚMEROS NATURALES. SISTEMA DE NUMERACIÓN

7. ( ) Describe una máquina de Turing que acepte el siguiente lenguaje: L = {a n b n n>0}. L = {a n b n c n n>0}. L = {xcx x {a, b} + }.

En un anillo la operación de multiplicación no siempre tiene un elemento como el 0 de la adición.

RADICALES. CONCEPTO Y OPERACIONES. Concepto de raíz. - La raíz cuadrada de un número a es otro número b, que al elevarlo al cuadrado te da a

ARITMÉTICA ENTERA LOS NÚMEROS ENTEROS. = {..., n,..., 3, 2, 1, 0, 1, 2, 3,..., n,...} (Zahlen, en alemán, números)

Departamento de Ingeniería Matemática - Universidad de Chile

El ejercicio de la demostración en matemáticas

Taller: Introducción a las Relaciones de Recurrencia.

La recursividad forma parte del repertorio para resolver problemas en Computación y es de los métodos más poderosos y usados.

EL CUERPO ORDENADO REALES

Guia para el exámen parcial 1 - unas soluciones

CONJUTOS NÚMERICOS NÚMEROS NATURALES

ÁLGEBRA LINEAL I Algunas soluciones a la Práctica 3

AMPLIACIÓN DE MATEMÁTICAS. a = qm + r

Transcripción:

Números naturales y recursividad Rafael F. Isaacs G. Sonia M. Sabogal P. * Fecha: 8 de marzo de 2005 Números naturales Se sabe que los números naturales constituyen la estructura básica de la Matemática; así el camino usual que se recorre es, partiendo de los naturales (N) pasar a los enteros (Z), de estos a los racionales (Q), luego a los reales (R) y finalmente a los complejos (C); el paso de un conjunto numérico a otro se da por la necesidad de ampliar cada conjunto a otro (que lo contenga) y en el cual se puedan resolver ciertos problemas que no tienen solución en el conjunto dado. Una aproximación intuitiva de los números naturales asegura que son los números que nos sirven para contar (0,1,2,3,4,...). A nosotros nos interesa dos propiedades: que empiezan en 0 y que de uno en uno los podemos recorrer todos. Estas propiedades de los números naturales se explotan en el sistema universalmente aceptado de axiomas propuesto por el matemático italiano Giusseppe Peano (1858-1932), que usan solo tres términos técnicos: Número natural Primer número natural La función el siguiente de. En los axiomas de Peano se establece la esencia de los números naturales que corresponde a la idea intuitiva que tenemos de ellos: empiezan en algún momento (existe el primero) y van en fila (uno enseguida de otro). Los axiomas son 5: N1. El 1 es un número natural (Aquí puede ser 1 o 0, o cualquier otro símbolo, en realidad lo que importa es que existe al menos un natural). N2. El siguiente de todo número natural es también un número natural. N3. Si los siguientes de dos números naturales son iguales, entonces los números son iguales. N4. No existe un número natural cuyo siguiente es 1 (aquí nuevamente puede ser 1 o 0, o cualquier otro símbolo lo que importa es que existe un primer elemento ). N5. Si S es una colección de números naturales que cumple: * UIS 1

Figura 1: Giussepe Peano Notas (i) 0 S (ii) Cada vez que un natural está en S, también el siguiente de él está en S. Entonces S es el conjunto de todos los naturales. 1. El conjunto de los número naturales se simboliza N, así la expresión k N significa que k es un número natural. 2. Si k N, el siguiente o sucesor de k se simboliza k + 1. 3. Como convención entenderemos los números naturales empezando por 0, así N = {0, 1, 2, 3,...}. Cuando se empiece por 1 hablaremos de enteros positivos que se notarán Z + = {1, 2, 3,...} De los 5 axiomas de Peano queremos destacar el axioma N5. llamado el Principio de inducción matemática (Algunas veces el conjunto N se define como el conjunto más pequeño de R que satisface las condiciones (i) y (ii) de N5). El principio de Inducción Matemática constituye la base de las demostraciones que trabajaremos en la siguiente sección. Ejercicios 1. Si N es el conjunto de los naturales, Z el conjunto de los enteros, Q el de los números racionales, I el conjunto de irracionales y R son los reales,cuál de las siguientes proposiciones NO es cierta? a) Z contiene a N b) Q contiene a N y a Z c) I contiene a N d) R contiene a N 2

e) R contiene a I. f) R contiene a Q. 2. No existe un número natural mayor que todos los demás. Por qué? 3. Cuál es el menor subconjunto A de los reales que cumple: i) 0 A ii) Si x A entonces (x + 2) A 4. Cuál es el menor subconjunto A de los reales que cumple: i) 0 A ii) Si x A entonces (x + 2) A y (x 2) A Demostraciones por inducción matemática. Es posible que el estudiante alguna vez se haya encontrado con afirmaciones como las siguientes: Para todo natural n, n 2 + n es par. Si r R, r > 1 entonces 1 + r + r 2 +... + r n = (1 r n+1 )/(1 r) para todo n natural. 2 n > n, para todo natural n. Para todo natural n se tiene que 1 + 2 + 3 +... + n = n(n + 1)/2. Las afirmaciones anteriores tienen en común la expresión: para todo natural ; en todas se afirma que algo es válido para todo número natural, es decir todos ellos son de la forma: p(n), para todo n N, donde p(n) es una proposición relativa al natural n. Es fácil verificar que cada afirmación es válida por ejemplo para 1, 2, 3, u otros valores particulares, pero cómo probar que en efecto p(n) es válida para todo número natural? La idea es la siguiente: Si llamamos S al conjunto de números naturales que hacen cierta la proposición p(n), o sea S = {n N : p(n) es verdadera}, entonces bastaría probar que S = N; para ésto, usamos el principio de inducción matemática, es decir debemos probar: i) Que 0 S, o lo que es lo mismo que p(1) es verdadera. ii) Que si k S entonces k + 1 S, es decir que asumimos que para algún k, p(k) es verdadera (Hipótesis de Inducción) entonces se debe demostrar que p(k + 1) es verdadera. Al demostrar (i) y (ii), por el P.I.M. se concluye que S = N, es decir, que p(n) es verdadera para todo n. 3

Ejemplo 1. Un ejemplo muy interesante son las Torres de Hanoi. Tenemos n discos con radios crecientes y 3 estacas verticales (A, B y C) en donde se incrustan los discos. Los discos están inicialmente por orden de tamaño en la estaca A. Se pueden mover un disco de una estaca a cualquier otra desde que ningún disco quede encima de uno más pequeño. Notemos T n el número de pasos requeridos para mover n discos y aseguramos que T n = 2 n 1 para n N. Como T 0 = 0 = 2 0 1, el resultado es cierto para n = 0. Sea k > 0 y supongamos que se tienen k discos. Ahora la única manera de mover el disco mayor es mover los otros k 1 discos a C (en T k 1 movimientos). Ponemos el disco mayor en B (en 1 movimiento) y movemos los k 1 discos menores encima de él (en T k 1 movimientos de nuevo). Asumamos que T k 1 = 2 k 1 1. Tenemos que T k = 2T k 1 + 1 = 2 k 1. Por tanto el resultado se ha probado por el principío de inducción. Ejercicios 1. Demostrar por inducción sobre n: a) 1 + 2 +... + n = n(n + 1)/2 b) a + (a + d) + (a + 2d) +... + (a + (n 1)d) = n[2a + (n 1)d]/2 (suma de una progresión aritmética). c) 1 + x + x 2 + x 3 +... + x n = (1 x n+1 )/(1 x) (suma de una progresión geométrica, x no es 1). d) 1 + 2 2 + 3 2 +... + n 2 = n(n + 1)(2n + 1)/6 e) 1 4 + 9 16 +... + ( 1) n+1 n 2 = ( 1) n+1 n(n + 1)/2 f) 1 2 + 3 4 + 5 6 +... + (2n 1)(2n) = n(n + 1)(4n 1)/3 g) Si r > 1 entonces r n > 1. h) 1 + 2 3 + 3 3 +... + n 3 = [n2(n + 1)2]/4 i) 1 + 2 n < 3 n con n > 1. j) n < 2 n con n > 1. 2. Si b 1, b 2, b 3,..., bn y r son números reales demostrar por inducción que: a) r(b 1 + b 2 + b 3 +... + b n ) = rb 1 + rb 2 +... + rb n b) b 1 + b 2 +... + b n b 1 + b 2 +... + b n. 3. Probar que n rectas en el plano, tales que dos cualesquiera de ellas no son paralelas y tres cualesquiera de ellas no tienen un punto en común, determinan (n 2 + n + 2)/2 regiones diferentes. 4. Sea x > 0. Probar que para todo entero n 3 se tiene que (1 + x) n > 1 + nx + nx 2 4

5. Cuál es el error en la siguiente demostración? Teorema:Todos los caballos tienen el mismo color. Demostración: Sea P n la proposición Todos los caballos de un conjunto de n caballos son del mismo color. a) P 1 es claramente verdadera. b) Supongamos que P k es verdadera. Veamos que P k+1 también es verdadera. Sean c 1, c 2, c 3,..., c k+1 los k + 1 caballos en un conjunto de k + 1 caballos. Consideremos el conjunto de k caballos {c 1, c 2, c 3,..., c k }. Por hipótesis de inducción todos estos caballos son del mismo color. En el conjunto anterior reemplacemos c k por c k+1. Luego el conjunto resultante {c 1, c 2, c 3,..., c k 1, c k+1 } de k caballos, por hipótesis de inducción, todos son del mismo color; como c 1 y c k al igual que c k+1 y c 1 son de igual color, todos los k + 1 caballos son del mismo color. Luego P k+1 es verdadera y por el principio de inducción se sigue que todos los caballos son del mismo color. 6. Demostrar que si un conjunto S tiene n elementos entonces S tiene 2 n subconjuntos. 7. Sin hacer las multiplicaciones de todos los términos muestre que: a) 10! = 6!7! b) 16! = 14!5!2! c) 10! = 7!5!3! d) 9! = 7!3!3!2! Otras formas del principio de Inducción A veces para demostrar una proposición P n necesitaremos que se cumpla no solamente en un primer elemento, sino en varios, digamos por ejemplo P 0,..., P r, y además para hacer el paso inductivo, para demostrar P k+1 es posible que requiramos que además de cumplirse en el anterior se cumpla en todos los anteriores es decir que se tenga P 0,..., P k. Este es el principio de inducción completa. Antes de formularlo presentemos un ejemplo del muy usado algoritmo de la división, para enteros positivos. Éste nos garantiza que dado un dividendo (por ejemplo 10) y un divisor (por ejemplo 3) existe un cociente (3) y un residuo (1). Teorema 1. Algoritmo de la división. Sea b un número entero positivo fijo. Entonces que para todo natural n existen q y r naturales tales que n = bq + r y 0 r < b. Demostración. Haremos inducción sobre n entonces suponemos fijo b 1. Base: Si n < b el cociente es 0 y el residuo es n y se cumple la proposición. Paso inductivo: Sea n b y supongamos que tenemos el resultado cuando el dividendo es menor que n. En especial se cumple para n b (pues (n b) N), por tanto existen q 1 y r 1 naturales tales que n b = bq 1 + r 1 y 0 r 1 < b. De esto se deduce que n = bq 1 + b + r 1 es decir, n = b(q 1 + 1) + r 1 con 0 r 1 < b o sea que la proposición se cumple para n. Ahora sí formalicemos esta versión del principio de inducción, que es equivalente. Teorema 2. Principio de Inducción Completa Si A N es tal que: 5

i) 0 A ii) Si {0,..., k 1} A se deduce que k A entonces A = N Otro principio equivalente al de inducción es el siguiente: Principio del Buen Orden Todo subconjunto no vacío de números naturales tiene primer elemento. Ejercicios 1. Demostrar que en el algoritmo de la división el cociente y el residuo son únicos. 2. Utilizando el principio del buen orden, demuestre el algoritmo de la división (Ayuda: considere el conjunto {bq a N : q N} demuestre que es no vacío y haga r su primer elemento). 3. Demostrar que fijo b un entero mayor que 1, cualquier natural se puede expresar en base b, es decir, para todo a N existen a 0,... a k (que son llamados los dígitos de a), tales que a = a 0 + a 1 b +... + a k b k y además 0 a i < b para cada i = 1,... k Definiciones Recursivas. Otra aplicación importante del principio de inducción matemática la encontramos en las definiciones recursivas. Un concepto se dice definido recursivamente, si se define explícitamente para el caso n = 1 (o n = 0, o en general para un primer caso, o primeros casos ) y se da una regla (o lista de reglas) que lo definen para el caso n-ésimo, en términos del caso anterior )o casos anteriores). Por ejemplo el concepto de potenciación se puede definir recursivamente así: Para a R definimos: a 1 =: a y a n =: a n 1 a, para todo n 2 ; de esta manera tendríamos por ejemplo que a 2 = a 2 1 a = a 1 a = aa, a 3 = a 3 1 a = a 2 a = aaa y así sucesivamente. Muchas sucesiones de números se pueden definir recursivamente: Sea por ejemplo (S n ) n N la sucesión definida por: S 1 =: 1 y S n+1 = 2S n + 1 entonces los 4 primeros términos de esta sucesión serán: 1, 3, 7, 15 En realidad, podemos afirmar que toda definición recursiva al fin y al cabo lo que siempre define es una sucesión en un determinado conjunto X, es decir una función f del dominio N y codominio X; así por ejemplo las potencias de una base fija a se pueden obtener con la función f : N R definida por f(1) =: a y f(n) =: f(n 1)a para n 2. 6

Que una sucesión definida recursivamente quede bien definida se debe al principio de inducción. La importancia de las definiciones recursivas radica en que se da un método constructivo para encontrar los términos de la sucesión. Es así, que se puede asegurar que los programas de cómputo en general son aplicaciones de definiciones recursivas. Como se ratificará más adelante, casi todas las cosas que hacemos en matemáticas tiene que ver con definiciones recursivas, por ejemplo la sumatoria y productoria, aunque se pueden y se deben entender de manera intuitiva, para programarse, encontrar y demostrar sus propiedades, deben ser definidos y tratados recursivamente. Algunas veces en las definiciones recursivas el elemento a k+1 no se define solamente en términos de a k sino que se usan además otros anteriores. Por ejemplo en la muy famosa sucesión de Fibonacci el término siguiente se obtiene sumando los dos anteriores y se empieza por 0, 1 así: 0, 1, 2, 3, 5, 8, 13, 21, 34,... La definición recursiva de f n es así: i) f 0 = 0;f 1 = 1 ii) f n+1 = f n + f n 1 También se puede definir sucesiones recursivas con varias variables. Por ejemplo, para la sucesión de Fibonacci podemos definir a n y b n así: f 1 = 1; g 1 = 0 f n+1 = f n + g n ; g n+1 = f n Nótese que en esta definición recursiva es realmente un algoritmo o programa para calcular paso a paso los términos de la sucesión. Ejercicios 1. El factorial de un número natural es el producto de él por todos sus anteriores hasta 1. Por ejemplo, 5! = 5x4x3x2 = 120. Para 0, se considera 0! = 1. Definir recursivamente factorial de n. 2. Demuestre utilizando la definición recursiva e inducción: a) (a.b) n = a n b n b) a n a m = a n+m c) 2n < n! para n > 3. 3. Sea S n una sucesión definida recursivamente así: i) Base: S 0 = 1 ii) Paso recursivo: S n+1 = S n + 1, para todo natural n > 0. 2 Encuentre el valor de S 100. Muestre una fórmula no recursiva para hallar S n. 7

4. Se define S n recursivamente así: S 1 = 2 S n+1 = S n + n + 1. Demostrar que S n = (n 2 + n + 2)/2 5. Si se define a n recursivamente así: a 0 = 0; b 0 = 1 a n+1 = a n + b n ; b n+1 = b n encuentre el valor de a 976. 6. Suponiendo conocida la sucesión a n defina recursivamente: a) S n = a 0 + a 1 +... + a n = n i=0 a i b) P n = a 0.a 1.....a n = n i=0 a i 7. Sea α = 1+ 5 y β = 1 5; demuestre por inducción que el n-ésimo término de la 2 2 sucesión de Fibonacci cumple: f n = 1 5 (α n β n ) ( ) 1 1 8. Sea A =, conjeture y demuestre por inducción una fórmula para A 1 0 n en términos de la sucesión de Fibonacci 9. Se define S n recursivamente así: S 0 = 1 S n+1 = xs n + 1. Demostrar que S n = 1 + x + x 2 + x 3 +... + x n 10. A continuación se define recursivamente la sucesión a n de diferentes maneras: a) a 0 = 0; b 0 = 1 a n+1 = a n + b n ; b n+1 = xb n b) a 0 = 0; b 0 = 0 a n+1 = a n + b n ; b n+1 = x + b n c) a 0 = 0; b 0 = 1 a n+1 = a n + b n ; b n+1 = b n + 1 d) a 0 = 1; b 0 = 1 a n+1 = a n b n ; b n+1 = b n + 1 8

e) a 0 = 0 : b 0 = 0 a n+1 = a n + 2b n + 1; b n+1 = b n + 1 f ) a 0 = 0; b 0 = 1; c 0 = 1 a n+1 = a n + b n ; b n+1 = bn c n ; z n+1 = z n + 1 enseguida están, en otro orden, las definiciones no recursivas de a n, halle las correspondientes: a) a n = n! b) a n = n 2 c) a n = n(n 1)/2 d) a n = n i=0 xi e) a n = n x i i=0 i! f ) a n = xn(n 1)/2 Aritmética recursiva El poder de la recursividad está basado en que sabiendo contar, es decir sabiendo sumar 1, podemos realizar los algoritmos más comunes de la aritmética: desde decidir de dos números cuál es mayor, sumar, restar, multiplicar, hallar cociente y residuo, máximo común divisor, hasta decidir si un número es primo. Ejemplo 2. La siguiente es la definición recursiva de suma de dos numeros naturales, a partir de sumar 1. a 0 = a a n+1 = a n + 1 entonces a n = a + n. Nótese que aplicamos la lógica de sumar con los dedos de la mano. Realmente tenemos una definición recursiva de la suma de dos números naturales, basada únicamente en saber sumar 1. Utilizando condicionales podemos definir recursivamente el producto solamente sumando 1, pero como ya sabemos sumar dos números naturales cualesquiera entonces, es sensato utilizar tal suma (como si fuera una subrutina). Ejemplo 3. Definición recursiva de producto de dos números naturales a partir de la suma a 0 = 0 a n+1 = a n + c entonces a n = cn. Estas dos definiciones las podemos traducir en algoritmos. Ejemplo 4. Algoritmo SUMA(a,b) Si b=0 entonces SUMA(a,b)=a si b 0 entonces SUMA(a,b)=SUMA(a,b-1)+1 FIN 9

Ejemplo 5. Algoritmo PRODUCTO(a,b) Si b=0 entonces PRODUCTO(a,b)=0 Si b 0 PRODUCTO(a,b)=PRODUCTO(a,b-1)+a FIN Ejemplo 6. Algoritmo COCIENTE(a,b) Si b>a entonces COCIENTE(a,b)=0 Si b a COCIENTE(a,b)=COCIENTE(a-b,b)+1 FIN Ejemplo 7. El algoritmo para el Cociente lo podemos traducir como definición recursiva a 0 = a; c 0 = 0 Si a n < b entonces c n+1 = c n Si a n b n entonces a n+1 = a n b; c n+1 = c n + 1 el cociente al dividir a entre b se obtiene como c n cuando a n < b Definición 1. Dados dos números naturales a y b se dice que a divide a b si existe un natural k tal que b = ak. Se nota a b. Definición 2. El máximo común divisor de dos naturales a y b es un número c tal que i) c a y c b ii) Si n a y n b entonces n c. se nota c = MCD(a, b) En primaria se aprende a hallar el máximo común divisor de dos números, generalmente descomponiendo los números en sus factores primos, este algoritmo es práctico para números muy pequeños, para números grandes descomponer en factores primos es un problema que puede requerir mucho tiempo y por lo tanto este algoritmo no es práctico. Existe una algoritmo muy antiguo llamado el algoritmo de Euclides que emplea sucesiones sucesivas (averiguar) y que se basa en el siguiente hecho: Proposición 1. Siendo a > b se tiene que MCD(a, b) = MCD(a b, b). Demostración. Sea c = MCD(a, b) y d = MCD(a b, b). Como c a y c b entonces c a b por tanto c es un divisor común de a b y b y tenemos que c d. Similarmente se ve que d c. Entonces c d y d c por tanto c = d Ejercicios 1. Expresar algoritmos (en seudocódigo o en su lenguaje preferido) para que solamente sabiendo sumar 1 y distinguiendo cuándo dos números son iguales: a) Determinar cuál de dos números es mayor (si no son iguales) b) Hallar la diferencia entre dos números. c) Duplicar un número. 10

d) Hallar el residuo y el cociente al dividir entre dos. 2. Expresar algoritmos (en seudocódigo o en su lenguaje preferido) para que solamente sabiendo sumar y restar dos naturales y decidir cuál es el mayor: a) Halle el residuo al dividir a entre b. b) Decidir si a divide a b. c) Elevar al cuadrado un número. d) Hallar el máximo común divisor entre dos números. 3. Expresar algoritmos (en seudocódigo o en su lenguaje preferido) para que solamente sabiendo sumar y restar y multiplicar dos naturales y decidir cuál es el mayor: a) Decida si un número es primo. b) Expresar un número por sus factores primos. c) Calcular los coeficientes binomiales. d) Hallar el máximo común divisor entre dos números. e) Expresar a en base b. 4. Sea S n una sucesión definida recursivamente así: i) Base: S 0 = 1 ii) Paso recursivo: S n+1 = S n + 1, para todo natural n > 0. 2 Encuentre el valor de S 100. Muestre una fórmula no recursiva para hallar S n. 5. Multiplicación campesina: Para multiplicar dos números (de manera relativamente ágil) no es necesario saber las tablas de multiplicar, basta con saber duplicar un número cualquiera y saber dividir entre 2. Se colocan los dos números uno al lado del otro y mientras uno se va dividiendo por dos el otro se va multiplicando por dos. Las divisiones se hacen, naturalmente enteras y los números no pares de esta columna se distinguen digamos con un. El proceso termina cuando en la columna de los números que se van dividiendo se encuentre 1. El resultado del producto se encuentra sumando los números correspondientes a en la columna de los números que se van multiplicando por 2. Vemos este proceso cuando se trata de multiplicar 312 por 45. 312 45 624 22 1248 11 2496 5 4992 2 9984 1 entonces 312 45 = 312 + 1248 + 2496 + 9984 = 14040. a) Multiplique 19 por 168 por éste método. 11

b) Observe la siguiente definición recursiva: a 0 = a; b 0 = b; s 0 = 0 a n+1 = 2a n ; b n+1 = COC(b n, 2); s n+1 = s n + RES(b n, 2)a n Explique por qué este proceso recursivo representa realmente el algoritmo campesino para multiplicar a y b. c) Demuestre por inducción que en la anterior recursión se tiene a n b n ab = s n. Recursión en las palabras Dado un conjunto finito Σ (denominado alfabeto) se construye un el conjunto Σ de las palabras con letras en Σ, conjunto de gran interés en la informática. Intuitivamente, una palabra es una sucesión finita de letras, no nos interesa para nada por ahora, que tengan sentido. Así, si Σ = {a, b} entonces las palabras con tres letras son exactamente aaa, aab, aba, abb, baa, bab, bba, bbb. Hay muchas formas de definir formalmente el conjunto de palabras, utilizaremos (por variar) un manera recursiva. Para ello, tendremos en cuenta dos cosas: la palabra más pequeña que se puede hacer sobre cualquier alfabeto es la palabra sin letras que notamos λ; por otra parte suponemos que sabemos agregar una letra a la derecha de una palabra dada. siendo así: Definición 3. Siendo Σ cualquier conjunto finito se define Σ recursivamente así: Base: λ Σ Paso Recursivo: Si w Σ y x Σ entonces wx Σ. Para cualquier Σ se tiene que Σ es un conjunto infinito. Así, si Σ = {a, b} entonces Σ = {λ, a, b, aa, ab, ba,...}. La definición recursiva es muy útil para formalizar conceptos alrededor de las palabras palabras y hacer demostraciones. La operación más importante entre palabras es la concatenación,que intuitivamente significa pegar palabras y que definimos a continuación. Definición 4. Se define en Σ la concatenación recursivamente así: Base: Si v Σ entonces vλ Σ Paso Recursivo: Si v, w Σ y x Σ entonces v(wx) = (vw)x Ejercicios 1. Definir recursivamente longitud de una palabra. 2. Si Σ tiene n letras cuántas palabras hay en Σ con longitud k? Demuestre por inducción sobre k su afirmación. 3. Se define w x, para w Σ, x Σ recursivamente así: i) Base: w x = 0 ii) Paso recursivo: wy x = w x, si y x y wy x = w x + 1, si y = x. Intuitivamente qué es w x? 4. Demostrar que la concatenación entre palabras es asociativa. 12

5. Sea Σ = {a, b}, para v, w Σ se entiende que v w se obtiene cuando reemplazamos en v todas las a s por w. Definir recursivamente esta operación. Demostrar en base a su definición que esta operación es asociativa. 13