matemáticas discretas - 4ta edición - richard jonhsonbaugh

Download Matemáticas Discretas - 4ta Edición - Richard Jonhsonbaugh

If you can't read please download the document

Upload: vidal-bravo

Post on 04-Aug-2015

1.545 views

Category:

Documents


131 download

TRANSCRIPT

MATEMTICASDISCRETASCuarta edicinRichard JohnsonbaughDePaulUniversity,ChicagofRADUCCIN:scar Alfredo Palmas VelascoDoctor en MatemticasInstituto de Matemticas~ E V I S I N TCNICA:Vctor Hugo Ibarra MercadoLic. en Fsica y Matemticas, ESFM-IPNCatedrtico de la Escuela de ActuaraUniversidad AnhuacPRENTICEHALLMXICO' NUEVA YORK' BOGOT' LONDRES' MADRIDMUNICH' NUEVA DELHI' PARS' RODEJANEIROSINGAPUR' SYDNEY' TOKIO' TaRaNTa' ZURICHhttp://libreria-universitaria.blogspot.comFormato: 20X 25.5 cm.JOHNSONBAUGH: MATEMATICAS DISCRETAS, 4a. ed.VIIE'56102637384'wmmE'Proposiciones 2Proposiciones condicionales y equivalencia lgica 8Cuantificadores 18Demostraciones 34Demostraciones por resolucin 42Induccin matemtica 46Rincn de solucin de problemas:Induccin matemticaNotas 59Conceptos bsicos del captulo 59Autoevaluacin del captulo 61Conjuntos 64Sucesiones y cadenasSistemas numricosRelaciones 91Rincnde solucin de problemas: RelacionesRelaciones de equivalencia 104Rincnde solucin de problemas: Relacionesde equivalencia 111Matrices de relaciones 114Basesde datos relacionales 118Funciones 125Notas 136Conceptos bsicos del captulo 137Autoevaluacin del captulo 139ELLENGUAJEDELASMATEMTICASLGICAy DEMOSTRACIONES2.12.22.32.42.51.11.21.31.4t 1.51.62.6t2.72.8m12CONTENIDOt Las secciones precedidas por un smbolo t puedenomitirsesin perderla continuidad de la lectura.Pginas: 720 U'OG!WUIHGIWr:.l,:iAOEc.\'CH 1y losnicos enteros po-sitivos que dividen a n sonI y el propio n. La afirmacin (a) es otra forma de decir que 7 esprimo.La afirmacin (b) esfalsa. Aunque Rebecca gan el Premio dela Academia comomejor pelcula en1940, John Fordgan el premioal mejor director por TheGrapes ofWrath. Es sorprendente, pero Alfred Hitchcock nunca gan un Premio de la Academia co-mo director.La afirmacin (e)esverdadera; esotra forma dedecir queexiste unainfinidad deprimos.Laafirmacin (d) puede ser verdadera o falsa (pero no.ambas), pero nadie podra de-cidir esto en'este momento.La afirmacin (e) no es verdadera ni falsa [en realidad es unaorden].Una afirmacin queesverdadera o falsa, pero noambas, esunaproposicin. Lasafirmaciones (a)-(d) son proposiciones, mientras que la afirmacin (e) no lo es. Engeneral,una proposicin se expresa como una afirmacin declarativa (y no como una pregunta, unainstruccin, etc.), Las proposiciones sonlosbloquesdeconstruccinbsicos paracual-quier teora dela lgica.Utilizaremos letrasminsculas, como p, q y r, para representar las proposiciones.Tambin utilizaremos la notacinEnla ltima partedel captalo analizaremos algunos mtodos generales para realizardemos-traciones, uno de los cuales, la induccin matemtica, se utiliza en matemticas y en compu-tacin. La induccin matemtica es particularmente til en las matemticas discretas.CAPITULO1I LOGJCA. y OEM,?,STRACIONES 2p:1+1=3para indicar que p es la proposicin I +I =3.Al hablar o escribir en forma ordinaria, combinamos las proposiciones mediante co-nectivos como y y o. Porejemplo, las proposiciones "Est lloviendo" y "Llevar mi para-guas" pueden combinarse paraformar unanica proposicin "Est lloviendo y llevar miparaguas". A continuacin se definen formalmente y yo.PEFINJCION1.1.t 'p q I p r.qVviVVFi FFViFF F FSean p y q proposiciones.La conjuncin de p y q, denotadap 1\ q, esla proppsicinpyq.Observe queenla tabla deverdad dela definicin1.1.3 aparecen las cuatro combi-naciones posibles delas asignaciones de verdad para p y q.La definicin1.1.3 establece que la conjuncin p 1\ q es verdadera si p y q son ambasverdaderas; en cualquier otro caso, p 1\ q es falsa.L.http://libreria-universitaria.blogspot.com,pITULO1I LGICAy OEMOSTRACIONES1. 1 IPROPOSICIONES 5E.JEMPL.O 1.1.4Sip: 1 +1 =3.q: Un decenio tiene 10 aos,entonces p es falsa, q esverdadera, y la conjuncinp 1\ q: I + 1 =3 Yun decenio tieneIDaoses falsa.E.JEMPL.O1.1.5SioEl o en la disyuncin p V q se utiliza en el sentido inclusivo; es decir,p V q es verdadera sip o q o ambas son verdaderas y p V q es falsaslosi p Yq son falsas. Existe tambin una oexclusiva (vase el ejercicio 31), donde p oex q esverdadera si p o q es verdadera, peronoocurre queambas seanverdaderas.E.JEMPLO 1.1.8Sip:1 +I =3,q:Un decenio tiene 10 aos.entonces p es falsa, q es verdadera, y la disyuncinp: Benny Goodman grab msica clsica,q: LosOrioles de Baltimore eran los Cafs de SanLuis,entonces p y q son verdaderas. Aunque Benny Goodman es mejor conocido por sus graba-ciones de jazz, grab mucha msica clsica (por ejemplo, los conciertos para clarinete deWeber, nmeros I y 2, conla Orquesta Sinfnica de Chicago). LosCafs de SanLuis semudaron a Baltimore en1954 y cambiaron su nombre por Orioles. La conjuncinp 1\ q: Benny Goodman grab msica clsica y los Oriolesde Baltimore eranlos Cafs de San Luisesverdadera.EJEMPLO 1.1.6Sip: 1+1 =3,q: Minnepolis es la capital de Minnesota,entonces p y q son falsas y la conjuncinp 1\ q: 1 +1 =3 YMinnepolis es la capital"de Minnesotaes falsa.DEFINICION1.1.7 .oop V q: I +1 = 3 o un decenio tiene10 aoses verdadera.E..JEMPL.O1.1.9Sip: Benny Goodman grab msica clsica,q: LosOrioles de Baltimore eranlos Cafs de San Luis,entonces p y q son ambasverdaderas y la disyuncinp V q: Benny Goodman grab msica clsica o los Orioles deBaltirnore eran los Cafs de SanLuistambin es verdadera.EJEMPLO 1.1.10SiooLa ltima operacin sobre unaproposicin p analizada en esta seccin esla nega-cindep.El valor de verdad de la proposicin compuestap V q se definemediante la tabla de verdad~V V 1 VIV F I VIF V ViF Fi Fp: 1 + I =3,q:Minnepolis es la capital de Minnesota,entoncesp y.q Son falsas y la disyuncinp V q: 1 +I=3 o Minnepolis es la capital de Minnesotaes falsa.ohttp://libreria-universitaria.blogspot.com

.... r

...

71 . 1 I PROPOSICIONESor =F.16.(jivq)Vp18. (p Aq) Aji20. (p 1\ q ) V( r /\ ji )10. jiVq12. jiV(ql\r)-'-----===14. (pVr)l\(qVr)V(rVp)q=V, p=F,(pAq)Vr=(V AV)VF=(V AF)vF=FvF=F.t Los ejercicios con nmeros en negritasindicanque tienenuna sugerencia o una solucin al final dellibro.en la seccinposterior a la Bibliografa.Primero observamos que p y q sonverdaderas y que r es falsa. (No fue sino hasta 1973 quese calcul 1 millnde cifrasdecimales de n: Posteriormente se han calculado ms de dosmil millones de cifrasdecimales.) Si reemplazamos cada smbolo por su valor de verdad,tenemos queEvale cada proposicin en los ejercicios 9-14 con los valoresde verdadPor tanto,la proposicin dada es falsa.Escriba la tablade verdad para cada una de las proposiciones de los ejercicios 15-22.

Ejercicios9. pVq11. ji\lq13. (p\lq)A(ji\lr)15. p 1\ q17. (pVq)Aji19. (pl\q)V(jivq)21. (p V q) A (ji V q) 1\ (p V q).1\ (ji V q)22. (p 1\ q ) \1 ( q Vr)Determinesi cada unadelas afirmaciones delos ejercicios 1-8 es unaproposicin. Si laafirmacin es una proposicin, escriba sunegacin. (No sele piden los valores de verdadde las afirmaciones que sonproposiciones.)t l. 2 + 5 =19.2. Mesero, puede traer las nueces? Es decir, puede servir las nuecesa los invitados?3. Para algn entero positivon, 19340=n ,17.4. Audrey Meadows fue la "Alicia" original en "The Honeyrnooners".5. Plame una uva.6. La frase"Hazlo de nuevo, Sam" aparece en la pelcula Casabianca.7. Todo entero par mayor que 4 es la suma de dosprimos.8. La diferencia de dos primos.o(pl\q)Vr.p: CaryGrant estelariz Rear Window,Cary Grant no estelariz RearWindow.ji: No es cierto queCary Granthaya estelarzado RearWindow.p: Bias Pascalinvent variasmquinas calculadoras,q: La primera computadora digital completamente electrnica fue construida en elsiglo xx.r:zrse calcul hasta1 milln de cifrasdecimales en ]954.EJEMPLO1. 1. 13 -,EJEMPLO1.1.12 'la negacin de p es la proposicinSeanSiComo p es falsa, ji es verdadera. (James Stewart interpret-el papel principal en la pelcu-la Rear Window.)La negacin se escribira normalmente:Representar la proposicinBIasPascal inventvarias mquinas calculadorasy noes ciertoque laprimeracomputadora digital completamente electrnica hayasidoconstruida en elsigloxx; o bien 7!'secalcul hasta I mill6nde cifras decimales enJ954,en forma simblica y determinar si es verdadera o falsa.La proposicin puede escribirse en formasimblica comoIDEFlN1C1ON1.1.11El valor de verdadde la proposicin ji se definemediante la tablade verdadnop.plVIFLa negacinde p, denotada por , es la proposicinCAPITULO1(LGICAy DEMOSTRACIONES 6etL..fIIrrea:r-L'

a:-..-.a:-.--

.-- ..-http://libreria-universitaria.blogspot.com1 .2 fPROPOSICIONES CONDICIONALESYEQUIVALENCIALGfCA 9CAPiTULO1I LOGICA. y DEMOSTRACIONES. .. 23-25 re"""""nte la proposicin dada demanera simblica conEn los eJerciCIOS ..... ---1.2 PROPOSICIONES CONDICIONALES Y EQUIVALENCIA LGICAEl decanoha anunciado queSi elDepartamentoMatemticasobtiene $20.000 adicionales.contratar un nuevomiembro.La afirmacin (1.2.1) establece que. bajo la condicin de que el Departamentode Matem-ticasobtenga $20.000 adicionales, entoncessepodrcontratar unnuevomiembro. Unaproposicin como (1.2.1) es una proposicin condicional.Enuncie cada proposicin en forma de una proposicin condicional (1.2.2).(a) Mara ser una buena estudiante si estudia mucho.(b) Juan puede cursar clculo slo si est en su segundo, tercer o cuarto ao de es-tudio de licenciatura.EJEMPt..Ot .aa(e) Cuando cantas, me duelen los odos.(d) Una condicin necesaria para que los Cachorros ganen la Serie Mundial es queconsigan un lanzador relevista derecho.(e) Una condicin. suficiente para queRafael visiteCalifornia esquevaya a Dis-neylandia.(a) La hiptesis es la clusula posterior al condicional si. de modo que una formu-lacin equivalente esSi Maria estudia mucho, entonces ser una buena estudiante.(b) La clusula slo si es la conclusin; es decir,es considerada desde el punto de vista lgico comoigual asi p entonces qSi definimosp:El Departamento de Matemticas obtiene 520.000 adicionales,q: El Departamento de Matemticas contrata un nuevo miembro.entonces la afirmacin (1.2.1) tienela forma(1.2.2). La hiptesis es la afirmacin "El De-partamento de Matemticas obtiene $20.000 adicionales". y la conclusin es la afirmacin"El Departamento de Matemticas contrata un nuevomiembro". OAlgunas afirmaciones queno tienenla forma (1.2.2)pueden formularse comopro-posiciones condicionales, comoen el siguiente ejemplo.'. 1, entonces x+ l > 1EJEMPLO 1.3.5,EJEMPLO 1.3.6para alguna x en D, P (x) .'esunaafirmacin cuantificada universalmente. El dominio de discurso esel conjunto denmeros reales. La afirmacin es verdadera, pues para cada nmero real x, es cierto que elcuadrado de x es positivo o cero. Osi x > 1, entonces x+ 1 > 1para toda x en D. P (x),six> I,entoncesx+ 1>1El smbolo 3 se lee "para algn". "para al menos un"o "existe".A veces, para especificar el dominio de discurso D, escribimos una afirmacin cuan-tificada universalmente comoy una afirmacin cuantificada existencialmente comoexiste x tal queP (x) -,La afirmacinLa afirmacinpara alguna x, P (x)o comopara al menos una x, P (x)tambin puede escribirse comoLa afirmacin cuantificada universalmentees verdadera. Esta vez debemos verificar quela afirmacinseaverdadera paracada nmero real x.Seax cualquier nmero real.Es cierto que para cualquier nmero real x,xos; l ox >1.Si x os; 1, la proposicin condicionalesverdadera, puesla hiptesis x > 1 es falsa. (Recuerde que cuando la hiptesis es falsa,la proposicin condicional esverdadera, sinimportar la conclusinseaverdadera ofalsa.)CAPITUL.O1I LOGICAy DEMOSTRAC'ONES 22CAPiTULO1I LOGICAy DEMOSTRACiONES1 .3 I CUANTIFICADORES 25Para mostrarque 1";tinnacin cuantificada universalmente. EJEMPLO 1.3.9para cada x, P(x)La afirmacin cuantificada existencialmentees falsa, es suficiente determinar un valor x en el domini? de discurso para el cual la propo-sicin p(x) sea falsa. Elm.:todo pararefutar la afirmacinpara algn nmero real x,x 2x2+1=5'para cada .r, P(x)es verdadera, pues es posible determinar al menosun nmero real x para el cual la propo-sicinesun poco diferente del mtodo utilizado parademostrar quela afirmacin esverdadera.Paraprobar quepara cada x, P(x)es verdadera. hayque examinar todos los valores dex en el dominio de discurso y mostrarque para cada .r, P (x) es verdadera.EJEMPLO' .3.8La afirmacin cuantific"da uni versal mentesea verdadera. Por ejemplo, si x =2, obtenemos la proposicin verdadera2 222+1 =5'No es cierto que todovalor de x produzca unaproposicin verdadera. Por ejemplo, la pro-posicinpara cada entero positivo n, si n es par, entonces n2+ n + 19 es primoes falsa. oEJEMPLO1.3. I Oes falsa; obtenemos un cllntr.lejemplo al considerar n =38. La proposicin condicionalsi 38 es par. entonces 382+38 + 19 esprimoes falsa, puesla hiptesis38 es parLa afirmacin cuantificadaexistencialmentepara algn entero positivo n, si n es primo, entonces n + 1, n +2, n +3 y n+4 nosonprimoses verdadera. pues podemos determinar al menos un entero n que haga la proposicin con-dicionales verdadera, perola conclusinparaalguna x en D, P(x)382+ 38+ 19esprimoAhora analizaremos las :J.firmaciones cuantificadas existencialmente. Segn la defi-nicin1.3.4, la arirmacicn cuanuticada existencialmenteosi n esprimo. entonces n +1, n +2, n + 3 y n + 4 no. son primosverdadera. Por ejemplo, si n =23, obtenemos la proposicin verdaderasi 23 es primo, entonces 24, 25, 26Y27 no sonprimos.(Esta proposicin condicional es verdadera pues tanto la hiptesis "si 23 esprimo" comola conclusin "24, 25, 26 Y27 no son primos" son verdaderas.) Algunos valores de n hacenque laproposicin condicional sea verdadera (por ejemplo, n =23, n =4, n =47), mien-tras que otras hacen que sea falsa ( por ejemplo, n =2. n =101). El hecho es que hemos de-terminado un valor quehace verdadera a la proposicin condicionalsi n es primo, entonces n +1, n + 2, n + 3 y n + 4 no sonprimos.Por esta razn, la afirmacin cuantificada universalmentepara algn entero positivo n, si n esprimo, entonces n +1, n + 2, n + 3 y n + 4 nosonprimoses verdadera.o 382 +38 + 19 =3838 + 38+19 =19(2,38+2 + \) = 1979.es falsa. 382 +38 +19 no es primo pues puede factorizarse como sigue:es verdadera si P(x) es verdadera para al menos una x enD. Si P(x) es verdadera para al-gunosvalores de x.p ' ~ r ocurrir queP(r) seafalsa para otros valores de x.lCt'-". , ..-. '--11 - iD:- dt'".,...

..-

.,. c.r,..

.'

f)L'---271 .31 CUANTIFICADORESO(1.3.4)para algn nmero real x, P(x)para cada nmero real x, p(x)para cada nmero real x, P(x)1x2 +1> 1.f'7:Leyes de De Morgan generalizadas para la lgicaDemostracin.Slo demostraremos el inciso (a)y dejaremos la demostracin del inciso(b) al lector (ejercicio 50).Supongamos que laproposicin 'q21. p--'>q'L-:.p23. p--'>( q)q--'>p--'>r):. (p./ q) --'>r18. r--'>prIS. p --'>rp--'>q:.qV s24. (p --'>q ) 1\ ( r --'>s)pVr:.p--'>(rl\q)17.p--,>rr--'>q:. q19. p--,>rr--'>qL.-:. q .20. P--'>qP:. q22. p I\p:. q1. Proporcione un ejemplo (diferente de los dados en el ejemplo 1.4.1) de un axioma dela geometra euclidiana.2. Proporcione un ejemplo (diferente de los dados en el ejemplo 1.4.2) de uft1!lriomadelsistema de nmeros reales.3. Proporcione un ejemplo (diferente de los dados en el ejemplo 1.4.1) de una definicinde la geometra euclidiana.4. Proporcione un ejemplo (diferente de los dados en el ejemplo 1.4.2) de una definicindel sistema de nmerosreales.5. Proporcione un ejemplo (diferente de los dados en el ejemplo 1.4.3) de un teorema dela geometra euclidiana.6. Proporcione un ejemplo (diferente de los dados en el ejemplo 1.4.5) de un teorema delsistema de nmeros reales.7. Justifique cada paso de la siguiente demostracin indirecta, la cual muestra que si x esun nmero real, entonces x . O= O. Suponga que los siguientes son teoremas previos:Si a. b y e son nmeros reales. entonces b + O=by a(b + e)=ab + ac. Si a + b a + e, entonces b =c.Demostracin. x . O+ O=x . OX'(O+ O)=x . O+ x O;por tanto, x . O=O. 8. Justifiquecadapaso de la siguiente demostracin por contradiccin, la cual muestraque si xy=O, entonces x =Oo y =O. Suponga que si a, b y e son nmerosrealesta-les que ab=ac ya,," O, entonces b =c.Demostracin. Supongaquexy =OYx "'"OYy"'"O. Como zy =O=X' Oy x"'" O;tenemos que y =O,lo cual es una contradiccin. 9. Muestre, mediante una demostracin por contradiccin, quesi se colocan100 bolasen nueve cajas, alguna caja contiene 12 o ms bolas.Formule los argumentos de los ejercicios 10-14 en forma simblica y determine si cada unoes vlido. Sean Ejerciciosp: Estudio mucho. q: Obtengo un 10. r: Me vuelvo rico.25. Muestre que si10. Si estudio mucho. entonces obtengo un10.Estudio mucho.:. Obtengo un 10.l I. Si estudio mucho, entonces obtengo un 10.Si no me vuelvo rico, entonces no obtengo un10.:. Me vuelvorico.12. Estudiomucho si y slo si me vuelvo rico.Me vuelvo rico.:. Estudiomucho.13. Si estudiomucho o me vuelvo rico, entonces obtengo un 10.Obtengo un 10.:. Si no estudiomucho, entonces me vuelvorico.son argumentos vlidos, el argumentotambin es vlido.26. Comente acerca del siguiente argumento:El espacio de almacenamiento en discoflexible es mejor que nada.Nada es mejor queuna unidad de disco duro.:. El espacio de almacenamiento en discoflexible es mejor que una unidad de discduro.EJEMPLO1.5.1 ,....

'fB!r" r: f

:te-:.- t--- IIfIr .....

.:,-.":t'"-''l,'- --..i..... :'-;..- .

,--43(1.5.3)a v bss a b,para obtener una expresin equivalente con una barra sobre las variables individualeslaconclusin deseada. Dadas las hiptesis1,2 Y3, hemos demostrado la conclusin d. OSi una hiptesis no es una clusula, debereemplazarse por una expresin equivalen-te que sea una clusula o la conjuncin de varias clusulas. Por ejemplo, supongamos queunade las hiptesis es a Vb . Como la barra est sobrems de una variable, utilizamos laprimera ley de De Margan (vaseel ejemplo 1.2.11)Si p y PV rson verdaderas, entonces r es verdadera.5. d(1.5.2)EJEMPLO 1.5A1. avb2. s Ve3. cVd:.bvdAlgunos casos particulares de (1.5.1) sonSi p V q YPson verdaderas, entonces q es verdadera.5. b v d1. a2. iiVe3. cVd::d1.5 J DEMOSTR....CIONESPORRESOL.UCtONEJEMPLO 1.5.5Al aplicar (1.5.2) a las expresiones 3 y 4, deducimosAl aplicar (1.5.2) a las expresiones 1 y 2, deducimos4. eDemostraremos lo siguiente mediante.sesolucinla conclusin deseada Dadas las hiptesis 1, 2 Y3, hemos demostrado la conclusin b vd.OAl aplicar (1.5.1) a las expresiones 1 y 2, deducimos4. b v cDemostraremos lo siguiente mediante resolucinAl aplicar(1.5.1) a las expresiones 3 y 4, deducimosL(1.5.1) Si P VqYPV r son verdaderas, entonces q V r es verdadera.La expresinxyVwVz

EJEMPLO1.5.2 !Podemos verificar (1.5.1) mediante la tabla de verdad (vase elejercicio 1). Como la reso-lucin depende slo de esta sencilla regla,es la base de muchos programas de computado-ra que realizan razonamientos y demostraciones de teoremas.En una demostracin por resolucin, lashiptesis y la conclusin se escriben comoclusulas. Una clusula consta de trminos separados por o, donde cada trmino es una va-riable o la negacin de una variable.aVbVcvdLa expresinEJEMPLO1.5.3En esta seccin escribiremos a 1\ b como aboLa resolucin es una tcnica de demostracin propuesta por J. A. Robinson en1965(vase [RobinsonJ) que depende de una nica regla:r Esta seccin puedeomitirse sin prdida de continuidad.t 1.5 DEMOSTRACIONES POR RESOLUCINes una clusula, pues los trminos a, b, eyd estnseparadas por o, y cada trmino es unavariable o la negacin de una variable. OLa expresinno es una clusula, pues aunque los trminos estn separados por o, el trmino xy consta dedos variables, y no de una sola. Ono es una clusula, pues los trminos estn separados Sin' embargo, cada trmino esuna variable. OUna demostracin directa por resolucin se realiza aplicando varias veces(1.5.1) aparesde afirmaciones, para deducir nuevas afirmaciones, hasta quese obtenga la conclu-sin. Al aplicar (1.5.1), p debe ser una sola variable, pero q y r puedenser expresiones. Ob-serve queal aplicar (1.5.1)a las clusulas, el resultado q V r es una clusula. (Como q y rconstan de trminos separados por o, donde cada trmino es una variable o la negacin deuna variable, q V r tambin consta de trminos separados por o.donde cada trmino es unavariable o la negacin de una variable.)C .... PITULO 1 I LOGlCAy DEMOSTRACIONES 42En este caso podemos reemplazar la hiptesis a Vbe por las dos hiptesis a Vb y a": Alutilizar prim'ero las leyes de De Morgan (1.5.3) Yluegopodemos obtener hiptesisequivalentes, de modo que cada una de ellas sea una clausula. ....,Luego reempla1.amos la hiptesis original a Vb .las dos hiptesis ay t.;:te l'.'.... ,. " fi rquelas hiptesis indIVIduales h, Yh2 sonequiv entes a 1"2zo,se JusdI cfia. c., 149 Yel anlisis anterior a sta). Al utilizar variasveces las leyesde(vease la e Rlc,on .' ., ' ble Mor an se logra que cada barra se aphque solo a una vana e. " l..:".'.',. Dex que consta de trminos separados por o, dondecada consta. P, de varias variables puedereemplazarse mediante una expresin equiva-de la eonJunewtl e . . .ar .lente que constade las conjunciones de clusulas" utilizando la equiv enciaaV be== (aV b)( aVe). (1.5.4)t

E:JEMPUll.5.6Demostraremos lo siguientemediante resolucin1. aV be2. aVd:.bUtilizamos (l.5..n para reemplazar la hiptesis1 con las dos hiptesisaVbaVe. DM (1 5 3) ara reemplazar la hiptesis 2 con las dosUtilizamos la pn mera ley de e organ .. p ,hiptesisd1.51DEMOSTRACIONESPOR RESOLUCINEn lossistemas derazonamiento automatizado, la demostracin porresolucin secombina conla demostraci,nporcontradiccin.Escribimos la conclusin negada comoclusulas Y agregamos estas clusulas a las hiptesis. Luegoutilizamos varias veces(15,1) hasta obtener una contradiccin.E.IEMPL.O 1.5.7Volveremos a resolver el ejemplo 15.4 combinando la resolucin con la demostracin porcontradiccin.Primero negamos la conclusin y utilizamos la primera ley de De Morgan (1.5.3) pa-raobtenerLuego agregamos las clusulas ;y; a las hiptesis para obtener1. av b2. a Ve3. e vd4, ;5. dAl aplicar (1.5.1) a las expresiones 1 y2, obtenemos6. b vcAl aplicar (15.1) a las expresiones 3 y 6, obtenemos7. b v d, Al aplicar (1.5.1) a las expresiones 4 y 7, obtenemos8. dAhora, podemos combinar 5 y 8 para obtener una contradiccin, con lo que concluye la de-mostracin. O45El argumentose convierte en1. aVb2. aVe3. a4. d:.bAl aplicar (1.5.1\ a 1:1s expresiones1 Y3, de inmediato obtenemos la conclusinboPuede mostrarse que la resolucin es correcta y completa con respecto de la refuta-cin. El hecho deque la resolucin sea correcta significa que slo puede obtenerse una con-tradiccinapartir deunconjuntode clusulasinconsistentes(esdecir, unconjunto declusulas tales que no todas pueden ser verdaderas). El hecho de que la resolucin sea com-pleta con respecto dela refutacin significa que si un conjunto de clusulas es inconsistente,entonces la resolucin podr obtener una contradiccin. As, si se obtiene una conclusina partir de un conjunto dehiptesis, la resolucin podr obtener una contradiccin a partirde las hiptesis y la negacin de la conclusin. Por desgracia, la resolucin no nos indicacules son las clusulas que debemos combinar para deducir la contradiccin. Un reto fun-damental al automatizar un sistema de razonamiento es ayudar a guiar la bsqueda de lasclusulas que debencombinarse. La bibliografa acerca de la resolucin y el razonamien-to automatizado es [Gallier; Genesereth; y Wos].47FIGURA1.6.2Unaseriede afirmaciones. Lasafirmacionesverdaderas sesealanconK:(1.6.6)(1.6.5)(1.6.3)SI=1(2)"'2x(1.6.4)S2 =2(3)x -2-S._I =(n-l)n-2-xS.=n(+l)x-2-5n+ 1 =(n+l)(n+2)2paran =1,2, ...S _(n+l)(n+2)n+1 - 2S, + 1 = I + 2 + ... + n + (n +1).Observamos que S. est contenida dentro de S.+1' en el sentido de queS.+! =1 + 2 + ... + n + (n +1)=S. + (n + 1).Debidoa (1.6.5) y (1.6.6), tenemos_ I _n(n + 1) 1- (n + I)(n + 2)Sn+' - S.+ n + - --2- + n + - 2es verdadera. De acuerdo con la definicin (1.6.3),Debemos mostrar que la ecuacin (n +1)1.6/INDUCCIONMATEMTICAS. = I + 2 + 3 + ... + n.En realidad, se establece una serie de afirmaciones, a saber,Supongamos que alguienafirma queS = n(n+l) 2El ejemplo anterior ilustrael principio deinduccin matemtica.Para mostrarcmo se puede utilizar la induccin matemtica de manera ms profunda, sea S. la suma delos primeros n enteros positivosSupongamos que cada ecuacin verdadera tiene una "x"junto a ella (vase la figura1.6.2). Como la primera ecuacin es verdadera, est marcada. Ahora, supongamos que po-demos mostrar que si todas las ecuaciones anteriores a una ecuacin particular, digamos, laecuacin(n'+l),estn marcadas, entonces la ecuacin (n+1) tainbinestmarcada.Entonces, como en el ejemplo de los cubos, todas las ecuaciones estn marcadas; es decir,todas las ecuaciones son verdaderas y se verifica la frmula (1.6.4).Debemos mostrar quesi todaslas ecuaciones anteriores a la ecuacin(n +1) sonverdaderas, entonces la ecuacin (n +1) tambin lo es. Suponiendoque todas las ecuacio-nes anteriores a la ecuacin (n +1) son verdaderas, entonces, en particular, la ecuacin nes verdadera:(1.6.1):.p6. pe-r rr

Ejercicios1. Escriba una tabla de verdad que demuestre (1.5.1). la resolucinpara deducir cada conclusin en los ejercicios 2-6. Sugerencia: En los ejer.CiClOS 5 Y6. reemplace--? y H con expresiones lgicamente equivalentes que utilicenoe y.2. i!-vqvr 3. pVr 4. pVtq rVq qvsr _P__ rVst:.p :.q pVqVrvu:.sVtVu5. p--?qpVq:.q7. resoluciny la demostracin porcontradiccin para resolver de nuevoloseJerCIcIOS 2-6. .8. Utilicela resoluciny la demostracin porcontradiccin para resolver de nuevoelejemplo 1.5.6.1.6 INDUCCIN MATEMTICASupongamos que una serie de cubos numerados1, 2, ... estn sobre una mesa (infinitamente)larga (vasela figura 1.6.1) y que algunos cubos. estnmarcados con una "X". (Todos loscubos VISibles en la figura 1.6.1 estnmarcados.) Supongamos queEl primer cubo est marcado.Si todos los cubos anteriores al cubo(n + 1) estn marcados,entonces el cubo(n + 1) tambin lo est. (1.6.2)Mostraremos que (1.6.1) y (1.6.2)implican que cadacuboest marcado, examinando loscubosuno por uno.. La afirmacin (1.6.1) establecede manera explicita que el cuboI est marcado. Con, el cubo 2. Todos los cubos anteriores al cubo 2. a saber, el cubo 1, estn marcados;asi, de acuerdo con (1.6.2), el cubo 2 tambin est marcado. Consideremos el cubo 3. Todoslos cubos anteriores al cubo 3, a saber,los cubosI y 2, estnmarcados; as. de acuerdo conel cubo3 estmarcado. De estaforma, podemos mostrar que cada cuboestmarcado. Por ejemplo, supongamos que hemos verificadoquelos cubos I a 5 estnmarcados, como muestra la figura 1.6.1. Para mostrar que el cubo., que no aparece en la figura1.6.1, est marcado, observamos que todos los cubos anteriores al cubo 6 estn marcados, demodo que por (1.6.2), el cubo 6 tambin est marcado.F,GURA1.6.1 Cubosnumeradossobreuna mesa.CAPITULO1I LGICA''YDEMOSTRACIONES 46

fIJe'.

..L. .. tJJ:t ..WC'ffilw_lll

,er''-11e-I

9:'1t"J_________________-L- ---.-1:=-http://libreria-universitaria.blogspot.com( 1.6.7)( 1.6.8)CApfTULO1I LGICAy DEMOSTRACIONESNuestra demostracin por induccin matemtica const de dos pasos. En primer lugar,verificamos quela afinnacin correspondiente a n =1 era verdadera. En segundo lugar,su- '1pusimos quelas afirmaciones 1, 2, '.' . , n eranverdaderas y demostramos que la afirmacin(n + 1) tambinlo era.Al demostrar la afirmacin (n + 1), podamos utilizar las afirmacio-nes 1,2, ... , n; de hecho, el truco para construir una demostracin por induccin matemticaconsiste en relacionar las afirmaciones 1, 2, ... .n con la afirmacin (n +1).A continuacin enunciamos de manera formal el principiode induccin matemtica.Principio de induccin matemticaSupongamos que paracadaentero positivo n tenemos "na afirmacinSen) que esverda-dera ofalsa. Supongamos queS(l) es verdadera;si S(i) es verdadera, para toda i < n + 1, entonces Sen + 1) es verdadera.1.61INDUCCJONMATEMATlCAParaverificar el paso inductivo (1.6.8), suponemos queS(i) esverdadera paratodai-: +.y luego demostram?s que Sen + 1) es verdadera. Esta formulacin de la induccinmatemattca se la forma fuerte dela induccin matemtica. Con frecuencia, comoen el caso losejemplos anteriores, podemos deducir Sen+1) suponiendo solamenteSen). En realidad, con frecuencia se enuncia el pasoinductivo de la manera siguiente:Si S (n) esverdadera, entonces S (n + 1) es verdadera.Enestas dos formulaciones el paso base no se modifica. Puede rnostrars (v l ei. ' . . e vease e eJercI-CIO 45)las dos de induccin matemtica son lgicamente equivalentes.SI queremos venficar quelas afirmaciones49Entonces S(n) es verdadera paracada entero positivo n.La condicin (1.6.7) se llama el paso base y la condicin ( 1.6.8) se llama el paso in-ductivo. De aqu en adelante, "induccin" significa "induccin matemtica".. En estemomento ilustraremos elprincipio de induccin matemtica mediante otroejemplo.dondeno "" 1, son verdaderas, debemos cambiar el paso baseaS (nol es verdadera.El paso inducti vo no se modifica.EJEMPL.O1.6. \EJEMPL.O 1.' 6.2;Suma geomtricaUtilice la induccin para mostrar quen!2"-1 paran=1,2, ..... (1.6.9)Utilicela ioduccin para mostrar que si r"" 1,a+arl+ar2 +"'+ar"=a(r"+I-l)r-l(1.6.12)Supongamos que i!2'-1para i = 1, ... ,n. Entonces, en particular, para i =n,te-nemosPodemos relacionar (1.6.10) Y(1.6.11) observando que(n +1)! =(n +l)(n!).PASOBASE. [Condicin (1.6.7)]Debemos mostrar que(1.6.9) esverdadera si n =1.Esto es fcil de verificar, pues I! = 1 1 =21- 1PASO INDUCTIVO. [Condicin (1.6.8)]Debemos mostrar que sii!2'-1 parai = 1, ... , n,entoncesa + ar l+ ar2+... + ar"+ arn+1 a(rn+ 1-1) + arn+1r-la(r"+1 -1) + ar"+I(r-l)r-l r-la(r" +2-1)r-lparan =O, 1, .... Lade la izquierda se llama suma geomtrica. En unasuma geomtrica, la ra-zon entre los trminos consecutivos (al +l/al =r) es constante. .PASOBASE. El paso base, que en este casose obtiene haciendo n =O, es. a(rl-I) lo cual es verdadero.PASO INDUCTIVO. Supongamos quela afirmacin (1.6.12) es verdadera paran. Ahora(1.6.11 )( 1.6.10)por(1.6.11)pues n + 1 (n +1)!(n + 1)! =(n +l)(n!) (n +1)2"-1

=2n.Ahora,Por tanto, (1.6.10) es verdadera. Hemos concluido el pasoinductivo.Como hemos verificado el paso base y elpasoinductivo, el principio deinduccinmatemtica nos dice que(1.6.9) es verdadera paracada entero positivo n. OComo hemos verificado el paso base modificado y el paso inductivo, el principio de induc-cin matemtica nos dice que(1.6.12) es verdadera para n =O, 1, . . . . O1 .JEMPI..O1.6.3 ,CAPITULO1I LGICAy DEMOSTRACIONES

'tfr'!--L. .: lIr *,-,:',-Uf-"""..-'.;

I

...... - ..:

..I\ .JWIr"I ..II51lit .,'dZk+1 h.----OUn--ouhm.I . IFIGURA1.6.3Un triomin.FIGURA1.6.4Formacin de un' mosaico sobreun tablero deficiente 4x4 contriomins.FIGURA1.6.5Usode la induccin matemticaparaformar un mosaico sobreun tablero deficiente 2/;+ 1 X 2L--- con triomins.'j 1I Il 1I iill.@j1 II ,, IlbeI :, :1 .6/INDUCClONMATEMTICAUn problema de mosaicos EJEMPLO 1.6A1. 1+3 + 5 + .. -+ (2n -1) = n22. 1'2+2.3+3.4+... +n(n+l)= n(n+l)(n+2)3t::;:::=:f::::::'9f::::::'9EjerciciosEn los ejercicios 1-11, utiliceinduccin paraverificar que cadaecuacin es verdaderapara cada entero positivo n.Un triomin recto, quede aqu en adelante llamaremos slo triomin, es un objeto forma-do portrescuadrados, como muestra la figura 1.6.3. Un triomin es untipodepolimin6.Desde' que lospoJimins fueronideados por Solomon W. Golomb en1954(vase[Go-lomb, 1954]), hansido un tema predilecto de lasmatemticas recreativas. Un poliminodeorden s consta de s cuadrados unidos porsus aristas. Un triomin6 es un polimin6 de orden3. El otro tipo depolimin6 de orden 3 estformado porunafila de trescuadrados. (Nadieha determinado una frmula sencilla para el nmero de polimins de orden s.) Se han dise-ado varios problemas con polimins (vase [MartinJ).Daremoslademostracin inductiva deGolomb (vase [Golomb, 1954]) dequesieliminamos un cuadrado de un tablero de n x n, donde n es una potencia de 2, podemos foromarunmosaico sobre losdems cuadrados contriomin6s rectos (vase la figura1.6.4).Formar unmosaico sobre unafigura contriomins quiere decir cubrir de manera exactauna figuramediante triomins, sin que stos se traslapen o rebasen la figura. Un tablero alque le faltaun cuadrado se llama tabLero deficiente.Ahora, utilizaremoslainducci6nsobre k para demostrar que podemosformarunmosaico sobre un tablero deficiente de 2kx 2kcon triomins.PASOBASE. Si k= 1, el tablero deficiente 2x 2 es ens un triomin6 y por tanto puedeformarse un mosaico conun triomin6.PASOINDUCTIVO. Supongamos que podemos formar un mosaico sobre un tablero defi-ciente2kx2k Mostraremos quepodemos formar-unmosaico sobre un tablero deficiente2 x then II si e es mayor que x, actualizar x6. x:= e--7. return(x)8. "ndmaxe =3. b =5,a =6,a = 1,Supongamos que3.1 NOTACIN PARA LOS ALGORITMOSAunque a veces el lenguajecomnes adecuado para especificar un algoritmo, muchosin-vestigadores en matemticas y ciencias de la computacin prefierenun seudocdigo, porsu precisin, estructura y universalidad. El seudocdigo recibe ese nombre pues se aseme-ja al cdigo real (programas) de lenguajes como Pascal y C. Existen muchasversiones deseudocdigo. A diferencia de los verdaderos lenguajes de computacin, que se preocupanpero si e no es mayor que x, pasamos ala lnea 7. As, cuando llegamos ala lnea 7, x con-tendr correctamente al mximode a, b y c.En la lnea 7 regresamos el valor de x, que es igualal mximo de los nmeros a, b ye, a quienhaya llamado al procedimiento, y concluimos. El algoritmo 3.2.1 ha encontradoen forma correcta el mximo de los tres nmeros. Enunseudocdigo.las palabrasprocedure.ir. then, etc., puedenescribirse en espaol,aunquese ha hecho elusoen ingls.http://libreria-universitaria.blogspot.com147Determinacin del elemento mximoenUIUlsucesinfinitaALGORI'ThlO3_2.2Entrada: La sucesin s" s2'... .s; y la longitud n de la sucesinSalida: large, el mximo elemento en esta sucesinwhilepdoaccinendonde accin se ejecuta varias veces, mientras p sea verdadera. El cuerpo de un ciclo esaccin. Como en la proposicin if, si accin consta de varias proposiciones, las delimita-mos mediante las palabras begin y end. Ilustrarnos el ciclo while en el algoritmo 3.2.2, elcual determina el valor mximo en una sucesin. Como en el algoritmo 3.2.1, recorremoslos nmeros uno por uno y actualizamos la variable que contiene al mximo. Utilizamos elciclo while para recorrer los nmeros.3.21NOTACINPA.RALOSAL.GORfTMOSEstealgoritmo determina el nmero mximo en la sucesin s" s2" .. , s. Esta versin uti-lizaun ciclo while.l. procedurefind_large(s, n)2. large := s,3. 1:= 24. whilel$ndo5. begin6. if Si> large then // se ha encontrado un valor ms grande7. large := Si8.. 1:= 1+I9. end10. return(large)11. end findLargeSeguiremos el algoritmo 3.2.2 cuando n =4 y s es la sucesins,=-2, s2=6, s3=5, s,=6.En la lnea 2 hacemos large igual a s,; es decir,large tieneel valor-2. Despus, enla l-nea 3. asignamos 2 a l. En la lnea 4 probamos si I $ n; en este caso, vemossi 2$ 4. Comoestacondicin es verdadera, ejecutamos el cuerpo del ciclo while (lneas5 a 9). En la lnea6 probamos si s. >large; en estecaso, probarnos si S2>large (6 > -2). Como la condi-cin es verdadera, ejecutarnos la lnea 7; y asignamos 6 a large. Enla linea8, hacemos Iigual a 3. Entonces regresamos a la lnea 4.De nuevoverificamos si I $ n; en este caso, verificamos si 3$ 4. Como esta condi-cines verdadera, ejecutamos el cuerpo del ciclo while. En la lnea 6, probamos si Si> lar-ge:en este caso, probamos si s, >large (5) 6). Como la condicin es falsa,pasamos a laEn la lnea8, hacemos' igual a4. Entonces regresamos a la lnea 4.Denuevo verificamos si I $ n; en este caso, verificamos si 4 -s 4. Como esta condi-cines verdadera, ejecutamos el cuerpo del ciclo while. En la lnea 6, probamos si Si> lar- en este caso, probamos si s, > large (6) 6). Como la condicin es falsa,pasamos a la!fnea7. En la lnea8, hacemos igual a 5. Entonces regresamos a la lnea 4.De nuevo verificamos si i $ n; en este caso, verificamos si 5 -s 4. Como la condicin-es falsa, concluimos el ciclo whileyllegamos a la lnea lO, donderegresamos large(6).Hemosencontrado el mximo elemento en la sucesin.// si b es mayor que x, actualizar xifptbenaccinifx;:"Othenbeginx:=x.-la:= b + cendsi la condicin p es verdadera, se ejecuta acciny el control pasaa la proposicin posterior aaccin. Si la condicin p es falsa, el control pasa. directamente a la proposicin poste-rior a accin.Una formaalternativa es la estructura if-tben-elseifptbenaccinIelse r If si la.condicin p es verdadera; se ejecutaaCCn I (perono'at'l'in 2)y el control pasaala limu,Observe que si init >limitoaccinno se ejecutar.Podemos escribir el algoritmo 3.2.2 de la siguiente forma conun ciclo foroEntrada:Salida:Verificar si unentero positivo es primom, un entero positivotrue, si m es primo; false, si m no es primo3.21NOTACIONPARALOSALGORrTMOSt49Este algoritmo determina el nmero mximo en la sucesin s,,S2' . , s. Esta versin uti-liza un cicloforoAl.GORITMO 3.2:.3Determinacin delelemento mximo en unasucesinfinitaEl algoritmo 3.2.5 .determinael mnimo primo mayor.que.el entero positivo n y uti-liza al algoritmo 3.2.4. Para llamar a un procedimiento que regrese un valor, como el algo-ritmo 3.2.4, basta llamarlo por sunombre. Para llamar un procedimiento, digamos,proc,que no regresa algn valor, escribimosEntrada: La sucesin s" S2' ' s. y la longitud nde la sucesinSalida: large, el mximo elemento en esta sucesincall procip; P2' .... Pt),donde PI' P2' ... , Pt sonlos argumentos transferidos a proc.Este algoritmo determina el mnimo primo mayor que el entero positivo n.. Entrada: n, un entero positi voSalida: m, el menor primo mayor que n1. procedurefind_large(s, n)2. large:=SI3. fori:=2tondo4. if Si> large then // se ha determinado un valor ms grande5. large :Si6. retum(large)7. endfind_largeALGORITMO 3.2.5Determinar un primo mayor queunentero dadoDurante el desarrollo deun algoritmo, confrecuencia es recomendable descompo-ner el problema original en dos o ms subproblemas. Puede desarrollarse un procedimien-topara resolvercadasubproblema, despus de locual estos procedimientos puedencombinarse para proporcionar unasolucin del problema original. Nuestros ltimos algo-ritmos ilustran estasideas.Supongamos quenecesitamos un algoritmo para determinar el mnimo nmero pri-mo mayor queun entero positivo dado. Msprecisamente, el problema es: Dado un ente-ro positivo n, determinar el mnimo primo p tal que p>n. Podemos descomponer esteproblema al menos en dos subproblemas. Primero podramos desarrollar un algoritmo pa-ra determinar si un entero positivo es primo. Luego podramos utilizar este algoritmo paradeterminar el mnimo primo mayor que un entero positivo dado.El algoritmo 3.2.4verifica si un entero positivo m esprimo. Slo verificamos si al-gn entero entre 2 y m - l divide a m. Si determinamos un entero entre 2y m- I que di-vida a m, entonces m no es primo. Si no podemos determinar un entero entre 2 y m - l quedi vida a m, entonces mes primo. (El ejercicio 17 muestra que basta verificar los enteros en-tre2 y ;;; como posibles divisores.) El algoritmo 3.2.4 muestra quelos procedimientoSpueden regresar los valores true (verdadero) o false (falso).procedure large_prime(n)m:=n+lwhile not is_prime(m) dom:=m+lretum(m)end large_primeComo elnmero deprimos esinfinito(vase el ejercicioIS), elprocedimiento delalgoritmo 3.2.5terminar en algnmomento.b:'9t:::::::::Si+I then13. intercambiarrr., s,+1)14. i:=1 + 2_15. end16. ifn>mthen17. begin18. ifsm _ , >s.then19. intercambiar(s.. _ l' s.)20. if s" >sm then21. intercambiar(s.. ,s.)22. end23. small ise s,24. large := S225. i:= 326. whileism-Ido27. . - begin28. if Si< small then29. small :: Si30. if Si+ , >large then31. large:=si+132. i:=i+233. end34. endlarge_small29. Suponga que a > l y quef(n) =e(loga n). Muestrequef(n) =e(lg n).30.Muestre que n! =O(n").31.Muestre que 2" =O(n!).32. Suponga que g(n) >opara n =1,2, .... y para todan.f(n) es distinta de cero. Muestrequef(n) =e(g(n)) si y slo si existen constantes positivas cl y c2 tales que paralodan=1,2, ....Determinesi cada afirmacin en los ejercicios 33-42 es verdadera o falsa. Si la afirmacines falsa, proporcione un contraejemplo. Suponga Que las funciones/' g y h slo tomanva.lorespositivos.33. Sif(n) =e(g(n)) y gen) =8(h(n)), entoncesf(n) =34. Sif(n) =y gen) =entoncesf(n) + gen)=eChen)).35. Sif(n) =8(g(n)), entonces cf(n) = e(g(n)) para toda coF o.Sif(n) =e(g(n)), entonces 2[(") = 13(2'(".7. Sif(n)=e(g(n)), entonces 19f(n) =e(lgSuponga quef(n) 1 Ygen)1para toda n =1,2, ....38. Sif(n) =O(g(n)), entonces gen)=Olf(n):25. i:=nwhilei Idobeginx:=x+1i:=Li/2J,end17. i:=Iwhile i S 2n dobeginx:= x + Ii:=i+ 2_end19. fori:=lto2ndoforj:=1tondox:=x+121. 1tondoforj:= ltondofor k:=l. tondox:= x"-.I__23. for i= l"tlrn doforj:=l,toidofork :=1 toj dox:=x+Ilarge (el elemento msgrande en SI' S2" .. , s.)small (el elemento ms pequeo en sI' S2' ... , s.>Entrada:Salida:20. fori:=I tondofor i>I to Li/2Jdox:=x + I24. i>nwhilej 1dobeginfori:=1 tojdox:=x+Ij:= lil3Jend22;- fori:= 1to n doforj:=1tondofork:=I toidox:=x+ 116. fori:=lto2ndox:=x+ I18. fori:=ltondoforj:=I tondox:=x+ I26. i:= n Idobeginforj:=1tondox:=x+1i:= Lil2Jend27. Determine una notacinthetapara el nmerode veces quese ejecuta la instruccinx:=x+ 1.i:= 2whilei b, con a tan pequeo como sea posible, que requiere n divisio-nes para n =O,... , 4. Los resultados aparecen en la tabla 3(6.2.Recordemos que la sucesin de Fibonacci u;,} (vase el ejemplo 3.4.6) se define me-diante las ecuacionesMi188 CAPiTULO3 I ALGORITMOSPASOINDUCTIVO. Suponga que el teorema es cierto para n2: 1. Debemos mostrar queel teorema es verdadero para n + l.Supongamos que la pareja a, b, a > b, requiere n +1 divisiones al utilizarse comoentrada para el algoritmo de Euclides. En la lnea 7, dividimos a entre b para obtenera=bq+r,O:!Sr r. Estosvalores requierenn divisiones adicionales. Por la hiptesis de induccin,b2:f.+! y r2:f.. (3.6.2)Al combinar (3.6.1) Y{3.6.2), obtenemosa =bq + r2: b + r 2:1.+1 +1. =f.+2" (3.6.3)[La primera desigualdad en (3.6.3) es vlida pues q > O;q no puede ser igual a O, pues a>b.j Las desigualdades (3.6.2) y (3.6.3) implicana2:f.+2y b2:f.+lCon esto concluye el pasoinductivo y la demostracin.Podemos utilizar el teorema 3.6.1 pata analizar el rendimiento del algoritmo de Eu-clides en el peor de los casos.l.,,,,. TEOREMA3.6.2..",.!:, .., .... .' .... , .. :. '."',' .'.' ';', "C'Si en el algoritmo deEuclides se utilizan enteros en el rango Oa m, m2: S, no ambos cero,entonces se necesitan a lo ms2m10g3/ 23divisiones.Demostracin. Sean el nmero mximo de divisiones necesarias pararealizar el algo-ritmo de Euclides para enteros en el rango Oa m, m2: S. Sea a, b una pareja de entradas enel rangoOam que requieran n divisiones. La tabla 3.6.1 muestra que n 2: 4 Yque a,p. b. Po-demos suponer que a >b. (El intercambio de los valores de a y b no altera el nmero dedivisiones requeridas.) Por el teorema 3.6.1, a 2: f.+,. As,f.+1:!Sm.Como n + 1 2: 5. el ejercicio 20 de la seccin 3.4 implica queAl combinar estas ltimas desigualdades, se obtiene< m.\.2Al calcular el logaritmo en base 3/2, obtenemosn +l 1, el nmero de divisiones necesarias para rea-lizar el algoritmo de Euclides y calcular mcd(a, b) es igual al nmero de divisiones ne-cesarias para calcular rncd(ka,kb).6. Muestre querncd(j.,f.+l)= 1, n2: l.t 3.7 EL SISTEMA CRIPTOGRFICOCON CLAVE PBUCA RSALa criptologa es el estudio de sistemas llamados criptosistemas, paralas comunicacio-nes seguras. En un criptosistema, el emisor transforma el mensaje antes de transmitirlo demodo que, en teora,sloun receptor autorizado pueda reconstruir el mensaje original (esdecir. el mensaje antesde ser transformado). Se dice que el emisor cifra el mensaje, y queel receptor descifra el mensaje. Si el criptosistema es seguro, las personas no autorizadasno podrn descubrir la tcnica de cifrado. asque aunque leanelmensaje cifrado, no po-drn descifrarlo. Loscriptosisternas son importantes para las grandes organizaciones (porejemplo. el gobierno o el ejrcito) y tambin para los individuos. Por ejemplo, si un nme-ro detarjeta de crdito se enva a travs de una red de computadoras, es importante que elnmero sea ledo slopor el receptor indicado. En esta seccin. examinaremos ciertos al-goritmos quepermiten la comunicacin segura.2mn < log3l2 m-1 =IOg312m -10g312 3/2 =log312 3't Esta seccin puede omitirse sin prdida de continuidad.I3.71 EL. SISTEMACRIPTOGRFlCO CONCL.AVE pBLICA RSA 191:;ORITMOSEJEMPLO 3.7.1 EJEMPl..03.7.2EJEMPl...O 3.7.3esmod z =(a" mod z)'mod z =(a")' mod z = a" modz =a.Utilizaremos (3.7.1) para calcular 57229mod 713. Observemos que29 =16 + 8 + 4 + I(quees justamente la representacin enbase2 de 29), de modo que calculamos 5:2.eleva-do a cada una delas potencias 16, 8, 4 Y1, mod 713, elevando al cuadrado y.multplcandovarias veces, mdulo 713:5722mod 713 =327184 mod 731 =6305724mod 713 = 6302mod 713 =396900 mod 713 = 4725728mod 713 = 4722mod 713= 222784 mod 713 =32857216 mod 713 =3282mod 713 =107584 mod 713 = 63457224 mod 713 = 572'6,5728mod 713 = 634328 mod 713=207952 mod 713 =46957228 mod 713 =57224.5724mod 713 = 469472 mod 713=221368 mod 713 =33857229 mod 713 =57211l 572' mod 713 = 338572 mod 713=193336 mod 713 =113.El mtodo puede convertirse fcilmente en un algoritmo (vase el ejercicio 11). . OUn posible receptor puede utilizar el algoritmode Euclides paracon eficlen-ciael nmero nico s,O< s , que satisface ns rnod =.1 (vaseel ejercrcio 12). El prin-cipal resultado que hace funcionar el cifrado y el descifrado es quea"modz=a paratodaO:5a O,se elige s ' =s'. Si s' < O,se eligeComentario: Informacin no ejecuta-ble. Un comentario comienza con //y contina hasta el final dela lnea.Enunciados de retomo: return oreturn(x)Ciclo while:whilepdoaccinEstructura if-then-else:ifp thenaccinIelseaccin2 CONCEPTOS BSICOSDELCAPTULOSeccin 3.1AlgoritmoPropiedadesde unalgoritmo: Precisin,unicidad, carcterfinito, entrada, sali-da, generalidadEnunciado de asignacin: x:= yRastreoLos librosdeKnuth [1973, volmenesI a 3; 1981J sonlos primeros tres libros deun con-juntoproyectado de siete volmenes. La primera mitad delvolumen I presenta el conceptodealgoritmo y diversostemas matemticos, incluyendo lainduccinmatemtica. La se-gundamitad del volumen 1est dedicada a lasestrucruras dedatos. Estosvolmenes sonclsicos en el rea de los algoritmos y estn entre los mejores ejemplos de literatura tcnica.Lamayor parte delabibliografa general relati va a lasciencias delacomputacincontienen un anlisis delos algoritmos. Los libros especficos sobre algoritmos son [Abo;Baase; Brassard; Cormen; Knuth1973, volmenes 1 y3,1981;Manber; Nievergelt; yReingold], [McNaughton] contiene un amplio anlisis a nivel introductorio de lo que es Unalgoritmo. Tambin sonrecomendables elartculo explicativo deKnuth acerca delos al-goritmos ([Knuth, 1977]) Ysu artculo acerca del papel delosalgoritmos enlascienciasmatemticas ([Knuth, 1985J). [Gardner, 1979Jcontiene un captulo acerca dela sucesinde Fibonacci.Todoslos detalles delcriptosistema RSA aparecen en[Cormen], [Peeger]est de-dicadoa la seguridad en computacin.Seccin 3.2SeudocdigoProcedimientoEstructuraif-then:ifp thenaccin:::::::=l::;:qE::;:::"7EjerciciosLa seguridad del sistema decifrado RSA reside principalmente en el hecho dequelasta el momento no existe un algoritmo eficiente conocido para factorizar enteros; es de-:ir, actualmente no se conoce un algoritmo quefactorice enteros con d dgitos enun tiem.)0'>OlinomialrO(a*). As: si' los primos pyqse eligensuficientementegrandes, no esxctico calcular la factorizacin z =pq. Si unapersona queintercepta elmensaje puedeleterminar la factorizacin, podradescifrar el mensaje al igual que lo hace un receptor au-orizado. Hasta la fecha, no se conoce un mtodo prctico para factorizar enteros con200) ms dgitos, de modo quesi p y q seeligen de modo quecada uno tenga 1000 msdgi-os, pq tendra entonces cerca de 200 omsdgitos, lo cual hace queel sistema RSA seaieguro.Laprimera descripcin del sistemade cifrado RSAapareci en una columna deMar-in Gardner enlaedicindefebrerode 1977del ScientificAmerican (vase[Gardner,1977]). En esta columna se incluy unmensaje codificado utilizando la clave lo n, donde zerael producto de primos de 64 y 65 dgitos y n =9007, junto conun premio de $100 pa-'a la primera persona quedescifrase el cdigo. Cuando se escribi el artculo, se estimabaluese necesitaran 40,000 billones deaos para factorizar z: De hecho, enabril de1994,clujenLenstra, Paul Leyland, Michael Graff y Derek Atkins, conla ayuda de 600 volunta-ios de 25 pases utilizando ms de1600 computadoras, factorizaron z(vase [Taubes]). Elrabajo fue coordinado mediante Internet.Otra forma de interceptar y descifrar el mensaje sera considerar la n-sima raz de enod z, donde c es el valor cifrado enviado. Como e =a"mod z, la n-sima raz de c mod tara a, el valor descifrado. De nuevo, hasta elmomento no existe un algoritmo con tiern- ---)0 polinomial conocido paracalcular races n-simas mod z. Tambin pueden existir otras'ormas de descifrar un mensaje mediante otros mtodos distintos de la factorizacin de en-eros o el clculode races n-sirnas mod lo Por ejemplo, en19%, Paul Kocher propuso una'orma dedescifrar elRSA conbase eneltiempo quetarda endescifrar mensajes (vaseEnglish]). La idea es que diversas claves secretas requieren diferentes cantidades de tiem-JO para descifrar mensajes y, utilizando esta informacin deltiempo, una persona no aU12:izada podra descubrir la clave secreta y conellodescifrar elmensaje. Laspersonas quetan implantado RSA han dado pasos para alterar el tiempo observado en el descifrado denensajes paraprevenir talesataques.t. Cifre el mensaje COOl BEAVISutilizando la clave del ejemplo 3.7.1.1. Descifre el mensaje UTWRENKOTEKMIGYWRA utilizando la clave delejemplo3.7.1.l. Descifre 333utilizando la clave pblica 713, 29 del ejemplo 3.7.2.1. Descifre 411 utilizando s =569 como enel ejemplo 3.7.2.5, Calcule lo5. Calcule41.7. Verifiqueque s =159.i. Cifre 101 utilizando la clave pblica z,n.Descifre 250.:n los ejercicios 5-9, suponga que hemos elegido los primos p=17, q =23 Yn =31.LGORITMOS CAPITULO 3I ALGORITMOS195I 8.sp'" ,s"I I I 5 8 8 9 12S, un conjunto de enteros; m, un enteroTodos los subconjuntos de S que sumanmEntrada:Salida:5. Rastree el algoritmo 3.2.2para la entradas, =7. S2 =9, S3 = 17, s. =7.6. Escriba un algoritmo que recibacomoentrada la matriz de una relacin Ry verifiquesi R es simtrica.7. Escriba un algoritmo quereciba como entrada la matriz A n x n y que proporcione co-mo salida la transpuesta AT.8. Escriba un algoritmo que recibacomo entrada la sucesinl. Enumere todoslos subconjuntos de S Ysus sumas.2. Recorra los subconjuntos enumerados enI y proporcione como salida aquellos cu-ya suma sea m.Seccin 3.4la salida debera ser9. Si a =333 Yb =24, determine enteros q y r tales que a =bq + r, con O$ r < b.10. Utilice el algoritmo de Euclides para determinar el mximocomndivisor de los en-teros 396 y 480.11. Utilice el algoritmo de Euclides para determinar el mximo comndivisor de los en-teros 2390 y 4326.12. Llene el espacio en blanco para obtener una afirmacin verdadera:Si a y b son enterosque satisfacen a> b > Oy a =bq + r, O$ r :...'.. :.. >:_"l:1iLIxnYI Ixurl = Ixl+ Irlpara cualesquieraconjuntosXyY.69. Se arrojan dos dados. uno azul y otro rojo. En cuntos resultados el dado azul mues-tra un 3 o se obtiene una sum,a par?65. Cuntas cadenas de ocho bits comienzancon 100 o tienenel cuarto bit igual al?66. Cuntas cadenasde ocho bits comienzancon l o terminancon I?63. Cuntas relacionesantisimtricasexistensobre un conjuntocon n elementos?64. Si XYYno sonsubconjuntosajenos, nopodemos sumar]x]c6n Ir Iparaelnmerode elementosen X UY. Demuestreql:leUtHice el resultadodel ejercicio64 para resolverlos ejercicios65-69.68. En cuntas seleccionesConnie es presidenteo Alice tieneun puesto?61. Cuntos trminoshay en el desarrollode70. Cuntos operadoresbinarios existensobre {I, 2, .. A -> ESe elige el primer Se eligeel segundo Se elige el tercerelemento elemento elementoTambin podramos haber resuelto el ejemplo 4.2.12 apelando directamente al prin-cipio de multiplicacin.P(n. r) puede escribirse en trminos de factoriales:P(n,r) =n(n- l) .. (n - r+1)FIGURA 4.2.3 Lademostracin delteorema4.2.10 paran =6 Yr =3. Unar_permutacinde ABCDEFseconstruye eligiendo de manerasucesiva el primerelemento. luegoel segundo yfinalmente el tercero.n(n-l) .. (n-r+l)(n-r)"21 nt(n-r)"21 (n-r)!(4.2.1)EJEMPLO4.:2.16215ole. d) {b. dJ lb, el la, d)C(5,3) =10.la, el (a, b)/\/\/\/\/\/\ah ba ae ea ad da be eb bd db ed deFIGURA 4.2.4 2-penmitacionesde la,b,e,d).P (n, r) =C(n, r)rLNuestro siguiente teorema establece este resultado y proporciona varias formas de escribirC(n, r).4.21PERMUTACIONESy COMBINACfONESPara resolver este problema, no debemos tomar en cuenta el orden. (Por ejemplo, noimporta si la jefa habla conMary, Ahmad y Nguyen o conNguyen, Mary y Ahmad.) Sienumerarnos las posibilidades, vemos que existen 10 maneras en que los cinco estudiantespueden elegir a tresde ellos para hablar con la jefa:C(n,r) =P(n,r).r!Por tanto,MBR, MBA, MRA, BRA, MBN, MRN, BRN, MAN, BAN, RAN.A continuacindeducimos unaf6nnula para C (n,r), contando el nmero der-per-mutaciones de un conjunto conn elementos de dos formas, La primera formasloutilizala frmula P (n,r). La segunda formade contar el nmero de r-pennutaciones de un con-junto con n elementos implica el uso de C (n, r). El clculo de los dos valores nos permitirderivar una frmula de C (n, r).Podemos construir las r-permutaciones de un conjunto Xcon n elementos en dos pa-sos: Primero se elige unar-combinacin de X (un subconjunto no ordenado con r elemen-tos),y luego se ordena sta.Por ejemplo, para construir una 2-pennutaci6n de{a, b, e, d ,podemos elegir primero una 2-combinaci6nyluego ordenarla. Lafigura4.2.4 muestracmo seobtienen de esta manera todas las2-pennutaciones de{a, b, e, d . Elprincipiode multiplicacin nos dice que el nmero der-permutaciones es el producto del nmero de.r-combinaciones y el nmero de ordenamientos der elementos. Es decir,Conlaterminologa de la definicin 4.2.15, elnmero de maneras en quelos cinco estu-. diantes pueden elegir a tres de ellos para hablar con la jefa es C(5,3), el nmero de 3-com-binaciones de cinco elementos. Hemos determinado queoo50406720 = 33,868,800.E..JEMPL04.2.13EJEMPLO4.2. lA,Utilizamos (4.2.1) para escribir la solucin del ejemplo 4.2.12 comolO!.(10-4)' 6!De cuntas formas pueden formarseen unafilasiete marcianos distintos y cincojupiterianosdistintos si ninguna pareja de jupiterianos puede estar juntaoPocIemos formara los marcianos y los jupiterianos mediante un proceso de dospa..sos: Formamosa los marcianos y formamosa los jupiterianos.LOs marcianos pueden foromarsede 7! = 5040maneras. Una vez formados los marcianos(porejemplo, enlasposiciones M- M7) , como ninguna pareja de jupiterianos pueden estar juntos, los jupite-rianos tienen ochoposiciones posibles en las cualesformarse(indicadas mediante espaciosen blanco):As, los jupiterianos pueden formarsede P (8, 5)=.8 ' 7 . 6 . 5 . 4 =6720 maneras. Porelprincipio de multiplicacin, el nmero de manerasen que sietemarcianos distintos y cin-co jupiterianos distintos pueden formarse de modo que no queden jupiterianos juntos esAhora veremos las combinaciones. Unaseleccin de objetos en la cual no importa elorden es una combinacin.DEFINICION 4.2.. 15Dado un conjunto X =(x, .. . , x) con n elementos (distintos),(a) Unar-combinacin de X es unaseleccin no ordenada de r.elementos de X (esdecir, un subconjunto de X conr elementos),(b) El nmero de r-combinaciones de un conjunto de n elementos distintos se denota

Ungrupodecinco estudiantes, Mary, Boris, Rosa, Ahmad y Nguyen, ha decidido hablarcon la jefa del departamento de matemticas paraque el dypartarnento ofrezca ms cursosde matemticas discretas. La jefa ha avisado quehablar con tres estudiantes. De cuntasmaneras pueden elegir estos cinco estudiantes a tres de. ellos para hablar conla jefaoCAPITuL.O4 I MtTOOOSDECONTEOy ELPRINCIPIODEL.A PICHONERAf214216CAP'TULO4 I MJ!:TOOOS OE CoNTEOYEl. PRINCIPIODELAPICHONERA 4.21 PERMUTA.CIONESy COMBINACIONES217 El nmerode' r-combinaciones de un conjunto de nobjetos distimos esP(n,r) n(n-I)(n-r+l) n_!_ n.(b) Muestre que S =l para toda n2: 1.(e) Muestreque S::: =1 para todan 2: 1.(d) Muestreque S3.2 =3.(e) Muestre queSo =7.(t) Muestre que S.3 =6.(g) Muestre que Sn.2 =2n- 1-1para toda n 2: 2.(h) Muestre queSnn-l =C(n, 2) para toda n2: 2.(i) Determine una'frmula paraSn.n-2' n2: 3, Ydemustre1a.76. Muestre que existen225http://libreria-universitaria.blogspot.com22.7RINCNDE SOLuctONDEPROBLEMAS; COMBINACIONESnIXI=:L,!x;\.i=JC(n+m-l,n)Cn-l)+.m-l,n-l),- -' ;/ '":);:.:>,,:. .',:,.,..-. . :',cadenas que terminanellA. pues debemoseleg'rr n esPm:iosemre,los pri-. -meros n + m-l espacios para Ias:nlettas D. Existenv> .cadenas queterminan enAD, puesdebemos elegir n los primeros (n - 1) + m - 1 espacios para lasn - lIetras D. En gene-ral, existen C(k + m - 1, k) cadenas que tenninaltenAD"-k. Comoen 10- ;,tal existen C(m + n, m) cadenas, obtenemos elresultadodeseado. ". ' Enumere en forma directa algunos de los elementos por contar, Busque patrones.Comentarios de aplicar el principio de lasuma, esimportante verificar queuna 'supuestaparticin realmente 10 sea. Si X es el conjunto de cadenas de cinco bits y X. es el con-junto de cadenas de cincobits que no contienen i ceros consecutivos, el principio dela suma no se aplica; los conjuntos Xi no son ajenos por pares. Por ejemplo, 0000l E:X2n X3' Como ejemplode una particin de X, podramos definir Xcomo el conjun-. to de cadenas de cincobits que contienen exactamente ceros, , _ 0-" :l., SolucinflmiaI ".'::114. end15. 11 se incrementa el elemento ms a la derecha16. s :=s +I17. lel resto de los elementos son los sucesores de s..18. forj:=m+ltordo19. Sj:=+120. print s)' ... , s, 11 se imprime la i-sima combinacin21. end22. endcombinationEste algoritmo enumera todaslas r-combinaciones de{1, 2, ... , nl en orden lexicogrficocreciente.4.3 I ALGORITMOSPARAGENERARPERMUTACIONESYCOMBINACIONESComienza a aparecer un patrn. Dada una cadena a=SI' s, querepresente a lar-combinacin{SI' ... ,s,l, para determinar la siguiente cadena 13 =tI ... t, buscamos elelemento de ms a la derecha que no tengasu mximo valor (s, puede tener el valor mxi-mo n, S"1 puede tener el valormximo n - 1, Yas sucesivamente). Entoncesti=s, parai=I, .... m-1.El elemento t.. es igual as.. +1. Para el restode la cadena 13 tenemostm+J t, (s.. + 2)(sm + 3)' ...A continuacin damosel algoritmo.IIIIIIII1IJIIIIIII.-LEJEMPl..O4.3.8 EJEMf>LO4.3.7EJEMPLO4.:;1.6EJEMf>LO4.3.5Sean a =13542 Y13 =21354 cadenas sobre {I, 2, 3, 4, 5}. En la notacin de la definicin4.3.1, SI = 1, s2 =3, S3=5, s, =4, Ss=2, tJ=2. t2= 1, t3 =3,t,=5 Yts=4. Elmenor i para el cual Si ;> ti es i =1. Como S J< tI' por la condicin(b) de la definicin 4.3.1,a< 13. OPara las cadenas de la misma longitud sobre {I, 2, ... , 9r, el orden lexicogrfico esigual al orden numrico de los enteros positivos, si interpretarnos las cadenas como nmerosdecimales (vanse los ejemplos 4.3.4 y 4.3.5). Para las cadenas de distinta longitud, el ordenlexicogrfico puede ser distinto del orden numrico (vase el ejemplo 4.3.3). En el resto deesta seccin, orden se refiere al orden lexicogrfico.Primero, consideremos el problema de enumerar todaslas r-combinaciones de{I,2, ... , n}. Ennuestro algoritmo, enumeraremos la r-cornbinacin {xl"" ,x,} como la ca-denas .. s" donde sJS DECONTEOY -EL.-PRINCIPIODELAPICHQNERA 4.41PERMUTACIONESy COMBINAfor l: =lton dofor i, := 1 to i I doprint ', izXI -i- x, + x, = 15En los ejercicios 1-3, determine el nmero de cadenas que pueden formarse ordenando lasletras dadas.26. Decuntas formas podemos extraer de la bolsa dospelotas rojas, trespelotas verdesy dospelotas moradas si laspelotas se consideran distintas?IZ1. Extraemos cinco pelotas, luego las reemplazamos, y finalmente extraemos cinco pelo-tas ms. De cuntas formas puede hacerse estosi las bolasse consideran distintas?28. Sacamos cinco pelotas sinreemplazarlas, y luego extraemos cinco pelotas ms. De1. GUlDE 2.SCHOOL 3.SALESPERSONS cuntas formas puede hacerse esto si lasbolasse consideran distintas?4. De cuntas formaspueden repartirse10 libros distintos entretresestudiantes, si el 29. Extraemos cinco pelotas donde al menos una es roja. Luego las reemplazamos. Acon-primero debe tener cinco libros, el segundo tresy eltercero dos? tinuacin sacamos cinco pelotas y a lo ms una esverde. Decuntas formas puedeLos ejercicios 5-11 se refieren apilas de pelotas rojas, azules y verdes, idnticas, donde hacerse estosi las pelotas se consideran distintas?cada pila contiene al menos 10 pelotas. 30.Decuntas formas pueden distribuirse15 libros idnticos de matemticas entre seis5. Decuntas formas pueden elegirse1Opelotas? estudiantes?6. Decuntas formas pueden elegirse10 pelotas si al menos se debe elegir unaroja? 31. De cuntas formas pueden distribuirse 15 libros idnticos de computacin y 10 libros7. Decuntas formas pueden elegirselO pelmas si almenos debe elegirse unapelota idnticos de psicologa entre cinco estudiantes?roja, al menos dos azules y al menos tresverdes') n. De cuntas formas podemos colocar 10 pelotas idnticas en12 cajas, si cada caja s-8. Decuntas formas pueden elegirse10 pelotas si hay que elegir exactamente unape- . lo puede contener una pelota?lota roja?9. Decuntas formas pueden elegirse10 pelotas 'si hayque elegir al exactamente una 33.De cuntas formaspodemoscolocar10 pelotas idnticas en12 cajas,sicada cajapelota roja y al menos una pelota azul? puede contener 10 pelotas?10. De cuntas formas pueden elegirse 10 pelotas si a lo msse elige unapelotaMuestre que(kn)!es divisible entre (n!)'.11. Decuntas formas pueden elegirse10 pelotas si hay que elegir el doble de Considererojas en relacin conlas pelotas verdes?En los ejercicios 12-17, determine el nmero de soluciones enteras del::;:::q l::;:::q Ejercicios22.23.19.;.- 20.21.y el ejemplo 4.4.9 para deducir queAs, la solucin a esteproblema es C(9, 7).C(k - 1, k - 1) + C(k. k - 1)+ ... +C(n + k - 2. k - 1) =C(k +n - 1, k).1+2+ ... +n= n(n+ 1).2Cada vez que ocupamos siete de los nueve espacios en blanco con siete barras vertica-les, obtenemos unaparticin de[x, . . . ,xlO } en ocho subconjuntos. Por ejemplo,laparticin[Xl}, [X,}, [x3'x.}, [xs}'[x6}, (x7,xg}, [x9}. [xlO } se representariacomo 38. Cul es el error del siguiente argumento, el cual supuestamente cuenta el nmero departiciones de un conjunto con10 elementos en ochosubconjuntos (no vacos)?Enumeramos los elementos del conjunto con espacios en blanco entre ellos:37. Escriba un algoritmo para enumerar todaslas soluciones enteras no negativas det 36.Utilice el ejemplola frmulaXl++ X'3 +.t'..l. = 12que O,;; x, ,;;,4, O,;;Xz,;; 5. O,;; x, ,;; 8 YO,;; x, ,;; 9.Cuntos enteros entre I y 1,000.000 cumplen que la suma de sus dgitos es igual a 15?Cuntos enteros entre I y 1,000,000 cumplen que la suma de sus dgitos es igual a 20?Cuntas partidas de bridge existen? (Una partida consiste en repartir una baraja de 52cartas en cuatro manos, cada una delas cuales contiene 13 cartas.)Decuntas formas pueden elegirse tresequipos con cuatro, dosy dospersonas, res-pectivamente, en un grupo de ocho personas?Un domin es un rectngulo dividido en doscuadrados, donde cada cuadrado tiene unnmero elegido entre O, 1, ... , 6. permitiendo repeticiones. Cuntos domins distin-tos existen?Los ejercicios 2429 se refierena unabolsa que contiene 20 pelotas (seis rojas, seis verdesy ocho moradas).24. De cuntas formas podemos elegir cinco pelotas si laspelotas se consideran distintasunasde otras? .25. Decuntasformaspodemos elegir cinco pelotassi las pelacas del mismo color seconsideran idnticas?sujetas a las condiciones dadas.12. x, ;;,;O,xz;;';O,x3 ;;,; O 13. x, ;;,; Lx,;;'; 1. .103;;';I14. x1=I,.xz;;';O,x3;;,;015. .10,;;,;0,.10,>0,.103=116.0';;xl,;;6,xz;;';O,x3;;,;0Q: 17.0,;;x11,cuando n sea una potencia de 2. Suponga que al =1.Sea b"el nmero de veces que se ejecuta el enunciado s. :=s+ 144., Determine una relacin de para la "45. Resuelva la relacin de recurrenciadel e' '. 44 lb,,) ycalculeb"b2yb)'46. Demuestre que b" =0((lg n'f). JerCIClO cuando n sea una potencia de 2. Resuelva la relacin de recurrencia301Sij> i, los subproblemas5.3 I APLICACIONES ALA.NLtSISDEALGORITMOS48. Muestre que a" =0(n'g 3), donde a"es como en el ejercicio47.Los ejercicios 49-56 se refierna un algoritmo que acepta como entrada la sucesinSi' 'SrSi' ... sl(i+j)l2J y slUT'jY2+U' . ,Sjse resuelven de manera recursiva. Las soluciones delos subproblemas de tamaos my k sepueden combinar en un tiempo c.... para resolver el problema original. Sea b"el tiempo nece-sario para que el algoritmo procese una entrada de tamao n.49. Escriba una relacin de recurrencia para b", suponiendo que c"" =3.50. Escriba una relacin de recurrencia para b", slCPOniendo que cm.' =m + k.51. Resuelva la relacin de recurrencia del ejercicio49 para el caso en que n sea una po-tencia de 2, suponiendo que b, = O.52. Resuelva la relacin de recurrencia del ejercicio49 para el caso en que n sea una po-tencia de 2, suponiendo que b, = 1.53. Resuelva la relacin de recurrencia del ejercicio50 para el caso en que n sea una po-tencia de 2, suponiendo que b, =O.54. Resuelva la relacin derecurrencia del ejercicio50 para el caso en que n sea una po-tencia de 2, suponiendo que bI = l.e: 55. Suponga que si mi ;=:m2 y k, ;=: k2, entonces cm,." ;=: Cm2. '2'Muestre que la sucesinbl' b2, es creciente.* 56. Suponga que cm.' =m + ky b, =O, Ymuestre que b,,';; 4n Ig n.Los ejercicios 57-62 se refieren a la siguiente situacin. Sea P" un problema particular detamaon. Si Pse divide en subproblemas de tamaos i yj, existeun algoritmo que com-bina lassoluciones de estos dossubproblemas enunasolucin deP" enun tiempo aloms de 2 + Ig(iJ)' Suponga queya seha resuelto un problema detamao 1,57. Escriba un algoritmo recursivo para resolver P", similar al algoritmo 5.3.8.58. Sea a"el tiempo, en el peor de loscasos, para resolverP" medianteel algoritmo delejercicio 57. Muestre quea" ';;atnl2J + '\("+1)121 +21g n.59. Seab" larelacinderecurrenciaobtenida apartir del ejercicio58reemplazando":;;"por "=". Suponga que b; =al =O. Muestre que si n es una potencia de 2,b" =4n- 21g n - 4.60. Muestre que a,,:;; b" para n =1,2,3, .61. Muestre que b" :;; b,,+, para n =1,2,3, ..62. Muestre que a. :;; 8n paran= 1,2,3, .63. Suponga quela,,} es una sucesin crecientey que siempre que m divida an,-ti" =a"'m +d,donde d es un nmero real positi vo y m es un entero que satisface m > l. Muestre quea" =0(lg n).*64. Suponga quela,,} es una sucesin creciente y que siempre que m divida a n,a" =ca"'m +d.donde c y d son nmeros reales positivos que satisfacen e >1 y d >O, y mes un ente-ro que satisface m >1. Muestre que a" =0(n1o' m c) .65. (Proyecto)Investigue otros algoritmos de ordenamiento. Considere de manera espe-cfica la complejidad, los anlisis empricos y las caractersticas particulares de los al-goritmos (vase[Knuth, 1973, vol. 3)). insertion_sort(s, n)fn =1 thenreturn n- 1):=n-ltemp:= swhilei ;=:i and s. >temo dobegin 'r5;+1 -:.i:= i-Iend5H1: =tempend insertion_sort1.2.3.4.5.6.7.8.9.10.11.12.13.proeedure algor(s, n)i:=nwhilei;=: 1dobegins;:=s; + li:= lil2Jendn:= Lnl2Jfn;=: 1thenalgor(s, n)endalgorSea b"el nmero de veces que se realizaen el ;'en la lnea 7. Suponga que si i largefigh: then12. large:=large_left13. else14. large:= Iargerigh:15. ir small feft > small jrigh: then16. small:= smaliright17. else18. small i v small feft19. end large_smallSea b. el nmero de comparaciones (lneas 11 y15) necesarias para una entrada de tamao n.28. Explique por qu el algoritmo 5.3.13determina los elementos.mximo y mnimo.29. Muestre que b, =OYb2 =2.30. Determine b.31. Establezca la relacin de recurrenciab. =blnl2J+ blr. + IV2J + 224. Determine bl' b2, b Yb.. . ..":25. Resuelva la relacinde recurrencia del ejercicio 23 cuando hes. una potencia de 2.26. Muestre, mediante un ejemplo. que b no es creciente.- j then /1no encontrado3. return (O)4. k:=LCi +j)/2J'5. if key=s, then /1encontrado6. return (k)7. ifkey 4) es falso, pasamos a la lnea 4, donde hacemos k iguala 3. En la lnea 5, como key ('S') no esigual aS3 (' F), pasamos a la lnea 7. Enla lnea 7, ..291

..

tIIt- ,)- 0-.

8-1

0- 1

e8-e-.. o:-8='"O-ft=

O-fIt='e-..-

e..,-e--_---e-

ir(5.3.5)(5.3.7)(5.3.6)(5.3.4) a. =2 + 19n.Un valor arbitrario de n est entre dos potencias de 2, digamos. 2'-1 < ns: 2'.As, si n =2',k-Itj(n -2) personas (pues:en la>frmuJa.,D" estdadaentnninos .... que -.,f, ,': caso paranpersooasserelacionacOllos.casospara:n-lyn :.' es.siniTat':i ladela "tancia.dadade--;:':,.' .. eSlIl,=l;UnaDcaPersona:,.. . na21.,Asl. Di =i,l.Antesdeconllnuar;no;-'"tacilldstribucin'de"brigos.'UnanotacineJegida;c:BfOIllli,cuidadoS8'" ' ;,i;:)1'.are1ac!oo;ikm:urreocla;jefiDeaD";c:n:umnDOS'deD._iyD._,; de modo;:,'que nosepuede:nisolver medianteiteracin.'Adems,larelacin de recurrencia no. . ';"'.'tieiie't0e6cienteS que no puede resolverse ",;',cmedillnted:teorema5.2.11.05.2.14. Estoexplicalanecesidadde realizar lasustitu-L,ciooieIi..blparte:o,).bacerla-sustitucin, podemos resolver}'1aTlacioodeJwmenciaenitrminosde Cmediantelos mtodos de la seccin 5.2, , '. .". ,D... . !.Ahra,. el Jildo,izquierdo,de:ela:ecnacin es igUal Ji C.. y derecho esigwil ar ,.., -ft-1 - "".. , .'.'::"c''i.}r';-, . . .', ).' }c.'; ', '.''''"',.:1,;,, ;'..,"".. h:'.';':.'; ,,!;.2.65. Seanuy w vrtices distintos en Kn. Sea P",el nmero de caminos de longitud mde v awen Kn , l -s m es n.(a) Deduzca una relacin de recurrencia para pm(b) Determine unafrmula explcita para p",'66. SeanL' y w vrtices distintos en Kn, 11 2: 2. Muestre que el nmero de caminos simplesde ea te esn-!1 k=ok!I(va' v,,... ,vn)en faena! (V'_l' v) es una arista para i =1, ... , nyvo=un'Una grfica acclica dirigda(gad)es una grfICasimpledirigida sin ciclos.75. Muestre queuna gad tiene al menos un vrtice sin aristas de entrada [es decir, existe almenos un vrtice tal que no existen aristas de la forma (v, w)].76. Muestre que el nmero mximo de aristas en una gad de n vrtices es n (n - 1)/2.Tl, Un conjunto independiente en una grfica G es un subconjunto S de los vrtices de Gconla propiedad de queningnpar devrticesen S son adyacentes. (Observe que 0es un conjunto independiente para cualquier grfica.) Demuestre el siguiente resulta-do debido a [Prodinger].SeaPn la grfica dadaporun camino simple conn vrtices. Demuestre queelnmero de conjuntos independientes en Pn es igual aJ.+1' n =1,2, ... ,donde (f"Jesla sucesin de Fibonacci.c-

,..-........e.o.. ...'0-"

,..,

.#tP-. ,. I'eJ!!- .

319/. Problema de los puentes de Konigsberg EJEMPLO62.16El primer artculo en teora de grficas fue el escrito por Leonhard Euler en1736. Elar-tculo present unateora general que inclua una solucin a lo que ahora se llama el pro-blema de los puentes deKonigsberg.A continuacin volvemos a analizar el problema presentado en la seccin 6.1: deter-minarun ciclo en unagrfica que recorra cada arista exactamente unavez.Para la grfica de la figura 6.2.1 tenemosEs un caminoEs un cicloCamino simple? Es un ciclo? simple?(6,5,2,4,3,2, 1) No No No(6,5,2,4) S No No(2, 6, 5, 2, 4,3,2) No S No(5,6,2,5) No S S(7) S No No O6.21CAMINOSy CICLOSEJEMPLO62, 15DEf'INIC1ON6.2.14 ISean v y w vrtices en una grfica G.Un camino simplede v a w esun camino de v a w sinvrtices repetidos.Un ciclo(o circuito) es un camino de longitud-distinta de cero dev a v, sin aristas re-petidas.Un ciclo simplees un ciclo dev a v en el cual no existen vrticesrepetidos, exceptopor los vrtices inicial y final, que soniguales a v.Observe que la definicin de camino permite repetir los vrtices o las aristas (o am-bos). En el camino (6.2.1), el vrtice 2 aparece dosveces. .Obtenemos subclases de caminos prohibiendo la repeticin de vrtices y dearistas,o haciendo que losvrtices voy vn dela definicin 6.2.1 sean idnticos.Sepuede mostrar (ejercicio 68) que R es una relacin de equivalencia sobre Vy que si v EV,el conjunto devrtices en el componente que contiene a v es la clase de equivalencia[v] =(wEV IwRv).IlVI VI." o6r G3' G4FIGURA 6.2.6" Lascuatrosubgrficasdela grfica de la figura 6.2.5.La grficaAhora podemos definir los componentes.DEFlNICION62. 11 todas lassubgrficas dela grfica G dela figura 6.2.5 que tengan al menos unvernce.Si no elegimos arista alguna, podemos elegir uno o ambos vrtices para obtener las sub-grficas GI' G2 G3 queen la figura 6.2.6. Si elegimos la nica arista disponible el"seleccionar los dossobre los cuales incide er Eneste caso, obtenemos lasub-grafica G4 de la figura 6.2.6.ASI, G uene lascuatro subgrficas que aparecen en la figura 62.6.EJEMPl..O 62.12EJEMPLO6.2. 10E.lE:MPL0062. 13VI, GFIGURA 6.2.5del ejemplo 6.2.10.Sea G.una grfica y v un vrtice en G.La subgrfica G' deconsta de todas las aristasy vrtices enG queestn contenidas enalgn camino que comienza env es el componen-te deG que contiene a v.La grfica G de la figura 6.2.1 tiene un componente, a saber, ella misma De hecho. una gr-fica es conexa si y slosi tiene exactamente un componente. 'oSeaG la grfica de la figura 6.2.2. El componente deG que contiene a v3 es la subgrficaGI=(V"EI ) , VI = {v"V2,V3}, El = [e,.e2.e3} .El componente de G que contiene a v"la subgrficaG2= ( V2, E) , V2=(v4},E2=0.El componente deG que contiene a v5 es la subgrficaG3 =( V3, E3) , V3={VS'V6 } , E3={e4)'O. Otra caracterizacin deloscomponentes deunagrfica G=(V, E) se obtiene defi-niendo una relacin R sobre el conjunto de vrtices V mediante la reglavlR v2'si existe un camino de VI a v2.CAPiTULO6 I TEORfADEGRFICAS 318E'GRA1='1C" ciudades.I

3.14. v, ",'"t:4el1.J-eJ e.e2 e, I e-iV5 V6 V7!V8le9e,1V'OV916. Figura 6.1.518. Ejercicio 89.V2e6egvs fd8.2.f

aeAbJ2S1Vk/12e1LL:V4 es V515. Figura 6.1.217. Ejercicio 713.10. Trace K, y K511. Determine una frmula para el nmero de aristasen K".12. Proporcione un ejemplo degrficabipartita diferente a la figura6.1.12. Especifiquelos conjuntos ajenos de vrtices.Indique cules de las grficas de los ejercicios 13-19 sonbipartitas. Si la grfia esbiparti-ta, especifique los conjuntos ajenos de vrtices.Para cada grfica G= (V, El enlos ejercicios 7-9, determine V,E, todas las aristas parale-las, todos los lazos, todos los vrtices aislados, e indique si Gas una grfica simple. Ade-ms, indique los vrtices donde es incidente la arista e"7.Muestre que cada grfica en los ejercicios 4-6 tiene un camino dea a a quepasa por cadaarista exactamente una vez, determinando tal camino por inspeccin.4. a 5. ab 1:'":mExplique por quninguna de las grficas delos ejercicios1-3 tieneun camino de a a a quepase por cada arista exactamente una vez.1.

EjerciciosCAPITUL.O6 ITEORIA: DE GRFICAS 314317VzV4 e4vsVI eJ v3GFIGURA 6.2.2Una grfica que no es conexa.FIGURA 6.2.4 Una grfica, una decuyassubgrficas aparece en la figura 6.2.3.VIVz ei VI-tsVse'V4 V6 V7V6esV7 GDEFINICION 6.2.8EJEMPl.O 6.2.9FIGURA 6.2.3 Una subgrfica de lagrfica de la figura 6.2.4.VzLa grfica G' =(V', e') de la figura 6.2.3 es una subgrfica de la grfica G =(11, Elde la fi-gura6.2.4, pues V' e V yE' e E.Sea G =(11, Eluna grfica. (V', E') es una subgrfica de G si(a)VyE.(b) Para cada arista e' EE', si e' es incidente en v'y w', entonces v', w' EV.EJEMF'l..O 6.2.7La grficaG de la figura 6.2.2 no es conexa. pues por ejemplo, no existeun camino del vr-ticeVzal vrtice vS' OSea G la grfica cuyo conjunto devrtices consta delos50 estados deEstados Unidos.Colocamos una arista entrelos estados v y w si ellostienenuna frontera comn. Por ejem-plo, existe unaarista entre California y Oregon y entre lllinois y Missouri. No existeunaarista entre Georgia y Nueva York, ni tampoco una arista entreUtah y Nuevo Mxico. (To-carse no basta; los estados debencompartir una frontera.) La grfica Gno es conexa puesno existeun camina deHawaii a California (o de Hawaii a cualquier otro estado). OEJEMPL.O6.2.66.21CAMINOSyCICLOSI,:III Como podemosver enlasfiguras6.2.1y 6.2.2, unagrfica conexa consta deuna "pieza", mientras queuna grficano conexa consta de dos o ms "piezas". Estas "piezas"Ison subgrficas de la grfica original y se llaman componentes. Daremos las definicionesformales, comenzando por la de subgrfica.I Una subgrfica G' de una grfica G se obtiene eligiendo ciertas aristasy vrtices de. .j.-_---a la restriccin de que si elegimos una arista e en Gque sea incidente en los vr-1 tices v y w, entonces debemos incluir a v y wen G'. La restriccin permite garantizar queG' es realmente una grfica. A continuacin damos la definicin formal.O(6.2.1),EJEMPl.O 6.2.2.E.JEMPl.O 6.2.5EJEMPl.O6.2.3DEFINICION 6.2.4 "La grfica G de la figura 6.2.1 es conexa. pues dados cualesquiera dos vrtices V y w en G,existe un camino deV a w, OUnagrfica G esconexa si dados cualesquiera dosvrtices Vy wenG, existe un caminodevaw.Una grfica conexa es aquella en la cualpodemos ir de cualquier vrticea cualquierotro por un camino. A continuacin damos la definicin formal.En la grfica de la figura 6.2.1, el camino (6) queslo consta delvrtice 6 es un camino delongitud Odel vrtice 6 al vrtice 6. OSi nohayaristasparalelas, al denotaruncaminopodemosomitir lasaristas. Porejemplo, el camino (6.2.1)se podra escribir(1,2,3,4,2).En la grfica de la figura 6.2.1,(\, el' 2, ez' 3, e3, 4, e., 2)es un camino de longitud 4 del vrticeI al vrtice2.endonde la arista ei es incidente sobrelosvrtices Vi_1yVi para i =1, ... , n, _El formalismo de la definicin 6.2.1significa quese parte del vrticeVD'se sigue laarista el hasta VI' se siguela arista ez hasta vZ' y as sucesivamente.DEFINICIN 6.2. 1Si pensamos los vrtices de una grfica como ciudades y las aristas como carreteras, un ca-mino corresponde a un viaje que comienza en cierta ciudad, pasa por varias ciudades, y ter-mina en alguna ciudad. Primero daremos una definicin formal de camino.6.2 CAMINOSY CICLOSSeanVD Yv. vrtices de una grfica. Un camino(ruta)de VD av. de longitud n es.una suee-o sin alternante de n + l vrtices y n aristas que comienza con el vrtice VD y termina con el.vrticev/1'7GesCAPfTUL.O 6ITEORfADE GRFICASFIGURA 6.2.1Unagrficaconexaconloscaminos(1, ep2,.e2, 3, e3' 4,e4, 2) de longitud4 y(6) delongitud O,316307 6.1'INTRODUCCIONFIGURA 6.1.4 Una grfica dirigida.V ={Gre, She, Wor, BuI, Gil, Sho, Cas,Dou. Lan, MadILa figura6.1.4 muestra una grfica dirigida. Las aristas dirigidasseindicanmedianteflechas. La arista eI se asocia con el par ordenado (v2, VI) devrtices y la arista e7 se aso-cia con el par ordenado (v6, v6) devrtices. La arista el se denota (v2,VI) y la arista e7se OEJEMPLO6.1.3. EJEMPLO6.1.2. ,Enla figura 6.1.2Ia grfica (no dirigida) G consta del conjuntodevrtices y el conjuntode aristas. La arista eI se asocia con el par no ordenado {Gre, She}de vrtices y la arista e10se asocia conel par no ordenado{Cas, Dou lde vrtices. La aristaelse denota (Gre, She)o tShe, Gre)y la arista el ose denota (Cas. Dou) o tDou, Cas). La arista e. esincidente enWory Bu!y losvrtices Wor y Bu!sonadyacentes. OUna grfic dirigida (o digrfica) G consta de un conjunto V de vrtices (o nodos) yun conjunto E de aristas ("arroso lados) talesque cada arista e E E se asocia con un par or-denado-de vrtices. Si existe una nica arista e asociada con el par ordenado (v, w) de vr-ticeS, escribimos e =(v, w), lo cual denota una arista de va w.Una arista e en una grfica (dirigida o no) asociada con el par de vrtices v y w es in-cidente en v y w, y se diceque v y w sonincidentes en e y queson vrtices adyacentes.Si G es unagrfica (dirigida o no) convrtices Vy aristas E, escribimos G=(V, E).A menos que se indique lo contrario, supondremos quelos conjuntos E y V son fini-tOS y queVes novaco.ezGreIle.el!CasIShe,e3GFIGURA6.1.3 Un modelo de grfica alternativa, pero equiv"1e.Te, al,modelo de gr!icadel sistema de carreteras de la figura 6.1.1. .(IUna grfica (o grfica no dirigida) consta de un conjunto V de vrtices (o nodos) y un con-junto-E de aristas (arcos o lados) tales que cada arista e E E queda asociada a un par no orodenado de vrtices. Si existe una nica arista e asociada' con los vrtices v y w, escribimoSe =(v, w) o e =(w, v). En estecontexto, (v, w) denota una arista entre v y wenuna gr'fica no dirigida y no un par ordenado.Si partimos deunvrtice vO' recorremos unaarista hasta el vrtice vI'recorremosotra arista hasta el vrtice vZ' y assucesivamente, y en cierto momentollegamos al vrti-ce vn'llamamos a todoel recorrido un camino (o ruta) deVoa vn'El camino que comien-za enShe, luego va para Buf, y termina en Gilcorresponde a un viaje sobre el mapa de lafigura 6.1.1que comienza en Sheridan, va hacia Buffalo y termina en Gillette. El problemadel inspector de carreteras se puede parafrasear para el modelo-de grfica G de la siguien-'te manera: Existe un camino del vrtice Gre al vrtice Gre querecorra.cada arista exacta- "' Imente unavez?' ,'Podemos mostrar que el inspector de carreteras no puedepartir de Greybull, recorrercada una delascarreteras exactamente unavezy regresar a Greybull. Para poner la res-puesta en trminos de grficas, no existe un camino del vrtice Gre al vrticeGre en la fi-gura 6.1.2 que recorra cada aristaexactamente una vez. Para ver esto, supongamos queexiste tal camino y consideremos elvrtice Wor. Cada vezquelleguemos a Wor por algu-na arista, debemos salir deWor poralguna arista diferente. Adems, hayqueutilizar cadauna delasaristas que tocan a Wor. Como tresaristas tocan a Worr tenemos unacontradic-cin. Por tanto, no existe un camino del vrtice Gre al vrtice Gre de la figura6.1.2 que re-corracada aristaexactamenteuna vez. El argumento"se puede aplicar aunagrficaarbitraria G. Si G tieneun camino delvrtice v a v que recorra cada arista exactamente unavez, unnmero par de aristas-debe.tocar acada vrtice. Enlaseccin.Z analizaremosesteproblema con detalle.Ahora daremos algunas definiciones formales.por cules aristas. Por esta razn, la grfica de la figura6.1.2 tambin podra haberse trazadocomo en la figura6.1.3.CAPiTUL.O6 I TEORIA DEGRFICAS 306309 6.1IINTROOUCCION212824262722LongitudGrficas de similaridadCaminoa, b, e, d. ea,b,d,e,ea, e, b, d;ea, e, d, b, ea,d,b,e,ea, d, e, b. eEJEMPl..O 6. 1.6'TABLA6.1.1,:Caminos en la grfica de la figura6.1.7 de a a e quepasanpor cada; vrtice exactamente una vez, y.sus longitudesel peso de la arista (e, e) es 5. En una grfica con pesos, la longitud de uncamino es la sumade los pesos de las aristas en elcamino. Por ejemplo, en la figura 6.1.7, la longitud del camino. . . t .quevisita e y terrruna en b es 8. En este problema, la longitud de un camino quecomienza en el vernce VI' luego visita v2' v3'..., en ese orden, y termina en v. representael tiempo que taladroen partir del agujero hl' luego pasar por los agujeros h2, h3, . ,en ese orden, y tennmar en h., donde el agujero h. corresponde al vrtice v. Un camino delongitud mnima quevisitecada vrtice exactamente una vez representa elcamino ptimoque debe seguir el taladro..que en este problema se pide que el camino comience en el vrtice a yterrrune en el verncee; Podemos determinar el camino de longitud mnima enumerando lo-doslos caminos posibles de a a e que pasen por cada vrtice exactamente una vez y ele"irel ms corto (vase la tabla 6. l.l). Vemos que el camino quevisita los vrticeszr, b, e, /e,en ese orden, tienelongitudmnima. Por supuesto, un par diferente de vrtices inicial y fi-nal podra producir un camino ms COfto. OLa enumeracin de.todos los caminos del vrtice v al vrtice w, como en el ejemplo6.1.5, esunaforma untantolenta de determinar un camino delongitud mnima de v a Wquevisitecada vrtice exactamente unavez. Por desgracia, no se conoce unmtodo mu-cho ms prctico para grficas arbitrarias. Este problema es una versin del problema delagente deventas viajero. Analizaremos este. problema en la seccin 6.3.Este ejemplo se refiere al problema de agrupar objetos "semejantes" en clases, con base enlas propiedades delosobjetos. Por ejemplo, supongamos queunalgoritmo particular seimplanta en C por cierto grupo de personas y que queremos agrupar a los programas "se-mejantes" en clases con base en ciertas propiedades de los programas (vase la tabla 6.1.2).Supongamos que elegimos como propiedadesoooooUna grfica con aristas" EJEMPl..O 6. 1.4VIEJEMPLO 6. 1.5!IIIiIiIIIIFIGURA 6.1.6 Una hoja !de metal con agujeros para tomillos. . I-- ... .."...1

Como 1> grfica de 1> 6.... 6.1.2 00"" aristas paralelas m lazos, grfica.Algunos autores no permiten la existencia de lazos o aristas paralelas al definir las g..ficas. Sera de esperar ques.ino existe un acuerdo en la definicin de grfica, muchos otrostrminos en teora degrficasno tendrn definiciones estndar. Estorealmente ocurre. Al Ileer artculos o libros relati vos a las grficas, es necesario verificar las definiciones utilizadas. IAhora veremos unejemplo quemuestra laformadeutilizar unmodelo degrfica jpara analizar un problema de produccin.IFIGURA6.1 .5paralelas y lazos.En un proceso de produccin, con frecuencia es necesario realizar muchos agujeros en ho-jas de metal (vase la figura 6.1.6). Loscomponentes se pueden atornillar entonces en es-tashojasdemetal. Losagujeros sepueden realizar bajoel control- deunacomputadora.Para ahorrar tiempo ydinero, el taladro debe moverse lo ms rpido posible. Modelaremosesta situacin como una grfica.Losvrtices dela grfica corresponden a los agujeros (vase la figura6.1.7). Cadapar devrtices se unemediante una arista. Encada arista escribimos eltiempo necesariopara mover el taladro entre los agujeros correspondientes. Una grfica connmeros sobrelas aristas (como la grfica de la figura6.1.7) se llama una grfica con pesos. Si la arista etienela etiqueta k, decimos que el pesode la arista e es k. Por ejemplo, en la figura6.1.7,La definicin 6.1.1 permite asociar aristas distintas con el mismo par de vrtices. Porejemplo, en la figura6.1.5siguiente, lasaristas eI y e2 estn asociadas con el par de vrti-ces {vI' v2 } Tales aristas sonparalelas.Una arista incidente.en unnicovrtice esunlazo. Por ejemplo, en la figura 6.1.5, la arista e3 =(v2, v2) esun lazo. Unvrtice, como elvrtice u, de la figura 6.1.5, que no es incidente en arista alguna es un vrtice aislado. Unagrfica sin lazos ni aristas paralelas es una grfica simple.bCAP{TULO 6ITE:ORfADEGRFICASFIGURA 6.1.7Unmodelode grficade la hojade metal de la figura6.1.6. Elpesode cada arista es el tiemponecesariopara mover el taladro.d308

-'J.l-'-o . -il .;"..:.1-lot .:;}'!l.:\;),,:) ..-.,;-.... ,

e} .... l..} ""'::r-

C):::t:.)

1:.';l1li

.......".J' .... IOL C=I'lt.e=A=r'0'"

fr'

-O:-'

0-.e-.,0-'

001 0006.1IINTROOUCC'DN 311FIGURA 6.1.9EI3-cubo.110 II Im'H=flL:J/IOIJlIJI) ) JI 10El n-cubo (hipercubo)0110EJEMPLO6. 1.7Lacomputadora tradicional, llamada computadora en serie, ejecuta unainstruccin alavez. Nuestra definicin de algoritmo tambin supone la ejecucin de una instruccin a lavez. Talesalgoritmos son algoritmos en serie. En losltimos aos, al disminuir el costodel hardware, se ha vuelto factible construir computadoras paralelas con muchos proce-sadores,las cuales pueden ejecutar varias instrucciones a la vez. Con frecuencia, las grfi-cas sonmodelosconvenientesparala descripcindeestas mquinas. Losalgoritmosasociados se conocen como algoritmos paralelos. Muchos problemas se pueden resolverms rpido mediante computadoras en paralelo. Analizaremos un modelo para la compu-tacin paralela conocido como el n-cubo o hipercubo.El n-cubo tiene 2"procesadores, n 1, quese representan mediante vrtices (vasela figura 6.1.9) conlas etiquetas O, 1, ... ,2"- 1. Cada procesador tiene su propia memo-ria local. Una arista conecta dos vrtices si la representacin binaria de sus etiquetas die-reen exactamente un bit. Durante ura unidad de tiempo, todos los procesadores del n-cubopueden ejecutar una instruccin de manera simultnea y Juego comunicarse con un proce-:sadoradyacente. Si un procesador necesita comunicarse con un procesador no adyacente,el primero enva un mensaje conla ruta hasta el receptor. Tal vez se necesiten varias unida-des de tiempo para comunicarse con un procesador no adyacente.Tambin podemos describir al n-cubo de manera recursiva. El1-cubo tiene dos pro-cesadores, etiquetados Oy1, Yunaarista. Sean H, y H2 dos (n1)-cubos cuyos vrticesestn etiquetados en binario O,... , 2'-' - 1 (vase la figura 6.1.10). Colocamos una aristaentre cada par de vrtices, unode H,y unode Ho' siempre quelos vrtices tengan etique-tas idnticas. Luego cambiamos la etiqueta L de cada vrtice de H, por OLy la etiqueta Lde.cada vrtice de H2 por1L. Obtenemos un n-cubo (ejercicio 32).S (V,. v5) =30,s (v3'v.)= 54,S (v,, v.) =42.s (vo''V5) =48,S (V,. &3) =24,s (v2' v.)=76.S (vI"v2) = 36,s (vrv3) = 38,Nmero de Nmero de Nmero dePrograma lneas del programa enunciados retum llamadas a funcin1 66 20 12 41 10 23 68 5 84 90 34 55 75 12 14.TABLA 6.1.2Programas en C que implantan el mismoalgoritmol. El nmero de lneas en el programa.2. El nmero de enunciados return en el programa.3. El nmero de llamadas a funcin en el programa.Si Vi es el vrtice correspondiente al programa i, obtenemosConstruimos una grfica desimilaridad Gcomo sigue. Los vrtices correspondena los programas. Un vrtice se denota (PI"PO'P3) , donde Pies el valor de la propiedad i. De'finimos una funcin de disimilaridad 's como sigue. Para cadapar de vrtices v . O"::"',..Debemos saber clarainente,lo que debemos demostrar, Como la afirmacin es "si yslo si", debemos demostrar dos afirmaciones:' .r:es un rbol, entonces Tesconexa pero alelminar'cuaque-' ..", " arista de T(pero no los vrtices), Tse.r"SrrescoriexaperoaLelimioarcualquierarlstadeTvrtices), Tse desconecta, entonces Tes unrbol, (2)En el), partiendo de Ia.hiptess de .que Tesunrbol, debemos demosttri-'queTesconexa, peroal eliminar cualquier arista de T (pero no los vrtices); Tse desconec-. ta,En (2),'a partirdela hiptesis dequeTes conexa pero al.eliminar cualquier ars,;,tade T( pero.nolos vrtices), Tse desconecta, debemos deducirqueT es un rbol. .t',; ',AI desarrollaruna demostracin.,porlo general.estil.revisarlas-de1iicionesotros.resiIltadosrelacionados la' 'L;-definicin.pe rbol'y,eLteorema7.2.3el,cualproporcioqacondiciones equivalentesrelacindrectafOn..lo'que..debIlios de-:",.::,::;;IDostrar. "';'_:, f "' ... ,":.;;, .. ';' ", ."::