Está en la página 1de 80

IGNATIUM: Estudio de Teor a de conjuntos, Programaci on Estructurada y Orientada a Objetos como estrategia para modelar y resolver problemas matem

aticos discretos a trav es de Pedagog a Ignanciana.


Luis A. Montiel Moreno 4 de marzo de 2013

Indice general
1. Resumen 2. Sistemas y Naturaleza de la 2.1. Introducci on . . . . . . . . 2.2. Sistemas en la naturaleza. 2.3. Naturaleza de la vida en el Vida en el Cuerpo . . . . . . . . . . . . . . . . . . . . . . . . cuerpo humano. . . Humano. . . . . . . . . . . . . . . . . . . . . . . . . 5 7 7 7 9

3. Libertad, Inteligencia y Toma de Decisiones. 3.1. Libertad . . . . . . . . . . . . . . . . . . . . . . . . . 3.2. Toma de Decisiones . . . . . . . . . . . . . . . . . . . 3.3. Perd on y Compasi on como movimientos naturales del mano inteligente. . . . . . . . . . . . . . . . . . . . . 3.4. Inteligencia . . . . . . . . . . . . . . . . . . . . . . .

. . . . ser . . . .

13 . . . 13 . . . 16 hu. . . 17 . . . 20

4. Integralidad, Ser y Verdad 21 4.1. Integralidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 4.2. Ser y Verdad . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 5. Comunicaci on 27 5.1. Sintaxis, Gram atica y Sem antica de Lenguajes . . . . . . . . . 27 6. Teor a de conjuntos 6.1. Introducci on. . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2. Lenguaje de teor a de conjuntos: Sintaxis, Gram atica y Sem antica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.1. Conjunto. . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.2. Pertenencia. . . . . . . . . . . . . . . . . . . . . . . . . 6.2.3. Nombramiento de Conjuntos. . . . . . . . . . . . . . . 3 31 31 33 33 33 35

4 6.2.4. 6.2.5. 6.2.6. 6.2.7. 6.2.8. 6.2.9. 6.2.10. 6.2.11. 6.2.12. 6.2.13. 6.2.14. Igualdad de Conjuntos. . . . . . . . . . Tuplas. . . . . . . . . . . . . . . . . . . Cardinalidad. . . . . . . . . . . . . . . Clase. . . . . . . . . . . . . . . . . . . Conjunto Vac o. . . . . . . . . . . . . . Operaciones de Conjuntos. . . . . . . . Producto Cartesiano o Producto Cruz. Subconjunto. . . . . . . . . . . . . . . Relaci on. . . . . . . . . . . . . . . . . . Dominios. . . . . . . . . . . . . . . . . Relaciones y Dominios. . . . . . . . . .

INDICE GENERAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 35 37 37 38 38 40 42 45 46 48 51 51 53 53 58 60 64 66

7. Lenguaje de Programaci on Estructurado 7.1. Sintaxis. . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2. Gram atica y Sem antica. . . . . . . . . . . . . . . . . . . 7.2.1. Declaraci on de Variables . . . . . . . . . . . . . . 7.2.2. Selecci on de Dominio para denici on de variable. 7.2.3. Bloque de C odigo. . . . . . . . . . . . . . . . . . 7.2.4. Alcance (Scope) de Variables. . . . . . . . . . . . 7.2.5. Expresi on Aritm etica . . . . . . . . . . . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

Cap tulo 1 Resumen


Los siguientes apuntes tienen la intenci on de apoyar a los estudiantes que cursan Ingenier a en Sistemas, Ingenier a Mecatr onica en desarrollar habilidades de comprensi on de problemas a trav es de un lenguaje matem atico para traducirlo en un lenguaje de programaci on. Primero se desarrollan conceptos b asicos de teor a de conjuntos, su relaci on con programaci on estructurada y orientada a objetos y su uso para describir conceptos como sistemas. Finalmente se terminar a con el concepto de uso de teor a de conjuntos para la comprensi on de bases de conocimiento en programaci on l ogica para solucionar problemas combinatorios y modelar conocimiento cient co, as como investigaci on de operaciones para resolver problemas de optimizaci on. Palabras Clave: Teor a de Conjuntos, Programaci on Orientada a Objetos, Programaci on L ogica.

CAP ITULO 1. RESUMEN

Cap tulo 2 Sistemas y Naturaleza de la Vida en el Cuerpo Humano.


2.1. Introducci on

En este cap tulo se estudiar a el concepto de sistema, su importancia en la naturaleza, en el ser humano. Esto nos inducir a la denici on de Inteligencia, Toma de Decisiones, de Libertad. Conceptos importantes en ciencias de la computaci on, matem aticas y por tanto para ingenieria en sistemas computacionales, tecnolog as de la informaci on, as como ingenier a mecatr onica, e incluso ciencias sociales y otras disciplinas. Comprender el concepto de sistema es importante para poder modelarlo, para comprender la naturaleza de la realidad, de las necesidades reales y a trav es de una metodolog a cient ca proponer buenas y reales soluciones efectivas, ecientes que atiendan esas necesidades para benecio de una comunidad y de la humanidad.

2.2.

Sistemas en la naturaleza.

Denici on 2.2.1. Un sistema es una estructura natural en la realidad la cual relaciona entidades o factores naturales y reales que a trav es de procesos naturales y reales que efect uan las entidades transforman la naturaleza de entidades o factores principales para generar un producto nal natural y real que cumple un prop osito en benecio de la vida de los seres humanos. Todo sistema de la naturaleza pose e las siguientes propiedades: 1. Poseen Entidades (Factores) 7

8CAP ITULO 2. SISTEMAS Y NATURALEZA DE LA VIDA EN EL CUERPO HUMANO. 2. Las Entidades o Factores poseen caracter sticas. 3. Relaciones entre Entidades. 4. Las Entidades poseen principios que le denen y rigen. 5. Las Relaciones poseen principios que le denen y rigen. 6. Las Entidades podr an ser sistemas. 7. Las entidades poseen Procesos. 8. Los procesos poseen principios que le denen y rigen. 9. Los procesos alteran la naturaleza de Entidades o factores. 10. Los procesos son c clicos. 11. Tienen un prop osito. 12. Las Entidades o Factores tienen un tienen un prop osito particular que colaboran a que el prop osito del sistema se lleve acabo. 13. Las relaciones entre entidades o factores tienen un tienen un prop osito particular que colaboran a que el prop osito del sistema se lleve acabo. Los procesos tienen un tienen un prop osito particular que colaboran a que el prop osito del sistema se lleve acabo. 14. Existe una entidad o factor principal cuya naturaleza se va transformando a trav es de las entidades, relaciones y procesos para obtener un producto nal. Para comprender la denici on es necesario primero mencionar ejemplos de sistemas en la naturaleza, entre los m as importantes y que vienen r apido a la mente son: Sistema del ciclo del Agua. Sistema Solar. Sistema del cuerpo humano el cual posee subsistemas: Sistema Oseo.

2.3. NATURALEZA DE LA VIDA EN EL CUERPO HUMANO. Sistema Cardiovascular. Sistema Nervioso. Sistema Digestivo. Sistema Locomotor. Sistema Muscular. Sistema Articular. Sistema Endocrino. Sistema Excretor. Sistema Inmunitario. Sistema Tegumentario. Sistema reproductor. Sistema Respiratorio Sistema linf atico. El ser Humano el cual posee subsistemas: Sistema Psicol ogico. Sistema del Cuerpo Humano. Sistema Racional. Sistema Social. Sistema Sexual. Sistema Espiritual. Sistema de la Voluntad y Libre Albedr o. Sistema de conciencia.

2.3.

Naturaleza de la vida en el cuerpo humano.

As como las c elulas forman o rganos y los o rganos el cuerpo, y todas las c elulas se integran y conforman un ser vivo integral, esto es el cuerpo humano de una persona.

10CAP ITULO 2. SISTEMAS Y NATURALEZA DE LA VIDA EN EL CUERPO HUMANO. As las personas forman familias c elulas que conforman organos o instituciones sociales, c elulas que al integrarse conforman un ser vivo integral, esto es el cuerpo de la humanidad el cual tambi en es una persona. Propiedades 2.3.1. Propiedades a nivel celular: Toda c elula tiene una vecindad de c elulas a las que puede y debe ayudar. Toda c elula tiene un vecidad de c elulas que le pueden y deben ayudar. La ayuda celular es transitiva, esto es si una c elula ayuda a otra c elula, la segunda podr a ayudar mejor a una tercera; si una c elula hace da no a otra c elula, la segunda no podr a ayudar plenamente a una tercera. Por lo tanto toda c elula necesita de las dem as celulas para vivir en plenitud. Por lo tanto si una c elula muere o enferma de forma antinatural es un da no para todas las c elulas del cuerpo, pues todas las c elulas sanas deber an hacer un esfuerzo mayor para hacer el trabajo de la c elula muerta o enferma. Por lo tanto si una c elula muere o enferma de manera antinatural degenera en enfermedad y adelanta la muerte de todo el sistema, es decir de todas las c elulas. Por lo tanto si una c elula vive o sana de enfermedad de forma natural es un bien para todas las c elulas del cuerpo, pues todas las c elulas sanas retornan a un esfuerzo natural. Por lo tanto si una c elula vive o sana de manera natural genera vida y la prolonga de todo el sistema, es decir de todas las c elulas. Por lo tanto inevitablemente si una c elula sufre todas las c elulas sufren con ella. Si una c elula se benecia, todas las c elulas se benecian con ella. Si se compara el benecio que puede recibir una c elula solo por si misma contra la suma de todos bienes transitivos recibidos por todas las c elulas del sistema que ayudan, cuando todas ayudan, la diferencia es abismal.

2.3. NATURALEZA DE LA VIDA EN EL CUERPO HUMANO.

11

Por la evidencia real comprobable de la naturaleza del cuerpo humano se induce la denici on verdadera de libertad e inteligencia. Pues la persona m as libre es la que m as vive localmente d a a d a y globalmente en el n umero total de d as vividos de manera natural, digna y plena. La persona m as inteligente es la que m as vive localmente d a a d a y globalmente en el n umero total de d as vividos de manera natural, digna y plena.

12CAP ITULO 2. SISTEMAS Y NATURALEZA DE LA VIDA EN EL CUERPO HUMANO.

Cap tulo 3 Libertad, Inteligencia y Toma de Decisiones.


3.1. Libertad

Denici on 3.1.1. La verdadera libertad que resuelve el evitar sufrimiento innecesario a cualquier persona y humanidad, se encuentra cuando hay que decidir entre varias opciones, discernir las buenas opciones y las malas opciones para entre las buenas elegir lamejor. La mejor siempre cumple la propiedad de promover, cuidar y hacer crecer la vida de todo ser humano incluso por venir desde que se concibe (cigoto) hasta que muere, todo esto de manera natural como prioridad y la dem as naturaleza como segunda prioridad. Esta denici on de libertad coincide con la denici on de optimizaci on en problemas combinatorios dentro de computaci on, matem aticas, investigaci on de operaciones y econom a: Denici on 3.1.2. La soluci on o ptima que resuelve un problema combinatorio matem atico se encuentra cuando hay que decidir entre varias soluciones(opciones), discernir entre las soluciones factibles(buenas opciones) y las soluciones infactibles(malas opciones) para entre las factibles elegir la mejor. La metodolog a para alcanzar esto es la siguiente: 1. An alisis del problema combinatorio en t erminos de teor a de conjuntos, relaciones y funciones. 13

14CAP ITULO 3. LIBERTAD, INTELIGENCIA Y TOMA DE DECISIONES. 2. En matem aticas las soluciones se contruyen a trav es de subconjuntos, a las variables cuyo dominio tienen estas soluciones se les llama variables de decisi on. 3. Se diciernen las soluciones factibles de las infactibles, a trav es de la vericaci on de propiedades escritas con l ogica matem atica que se aplican a cada soluci on en particular, a veces con apoyo de otras estructuras mate aticas como puede ser algebra lineal, o probabilidad. A estas reglas l ogicas matem aticas se les llama restricciones. 4. Una vez clasicadas las soluciones factibles, entre las factibles se elige la mejor por medio de una funci on de valuaci on de la soluci on y alg un criterio de maximizaci on o minimizaci on, a esta funci on combinada con el criterio se le llama funci on objetivo. Nota 3.1.3. Note por favor el paralelismo entre la denici on de libertad y la denici on de soluci on optima. Propiedades 3.1.4. Toda criterio de maximizaci on se puede escribir como un criterio de minimizaci on y viceversa. A esta redinici on del problema en t ermino de los objetivos se le llama dualizaci on. En particular los problemas combinatorios existen desde hace m as de dos siglos, sin embargo con la llegada de la computaci on como herramienta para para procesar c alculos de manera eciente el a rea de econom a prest o la mayor atenci on a este tipo de problemas ya que permiten optimizar procesos industriales (raz on por la cual investigaci on de operaciones es pilar en la carrera de ingenier a industrial) pero sin embargo hasta el d a de hoy no se le ha dado una perspectiva inteligente, ya que a la fecha a un con todo el desarrollo cient co de nuestros d as no se ha llegado a la conclusi on argumentada de manera racional de la una denici on de inteligencia, ni propiedades que debe cumplir. As el error que se ha cometido es pensar que se actuaba inteligentemente al maximizar ganancias o utilidades econ omicas, sin pensar en las consecuencias y su impacto desfavorable en la vida de los seres humanos al explotarlos, marginarlos, que al nal degenera en enfermedad y muerte del sistema y por tanto de aquellas personas que s olo velaron por el benecio econ omico. Con esto no digo que el dinero sea malo, el dinero no es malo, ni bueno, sera bueno siempre que cuide y resguarde la dignidad y vida de todo ser humano es decir busque la verdadera libertad en sus decisiones, ser a degenerativo cuando pierda este prop osito. En particular el sistema econ omico

3.1. LIBERTAD

15

se vuelve degenerativo cuando como sistema ca otico est a gobernado por la irracionalidad de las emociones cuando se desordenan de los hombres: miedo, poder y placer, las cuales al desordenarse, dejan de tener racionalidad, y al perder racionalidad ya no son capaces de cuidar y resguardar la dignidad y vida de todo ser humano, el error es que el hombre deposita la conanza en el dinero que siempre es inestable y uctuante pensando que su vida, alimento, bebida, vestido, sustento, salud, techo, placeres y derechos leg timos estan sostenidos por la econom a en lugar de por la buena voluntad de todo ser humano, de la bondad de los principios que rigen a la naturaleza y de la bondad de quien los escribi o (Dios); cuando el hombre deja de conar en la bondad dentro de s y de todo ser humano sin excepci on se precipita en este grav simo error pensando que sin el dinero se encontrar a desamparado. Parte de los principios que rigen a la naturaleza es tornar al hombre que se equivoca y del que se desconf a a un hombre sabio inteligente en el cual se puede volver a conar. Cuando una persona no es lo sucientemente madura y por tanto no se le pueden conar responsabilidades, debemos ser pacientes en que a su tiempo madurar a y por tanto se podr a conar en ella. La desesperaci on tambi en es un desorden emocional de la paciencia que por ser irracional es ca otico hace que el sistema degenere en sufrimiento innecesario y muerte. En particular el dual de maximizar ganancias o utilidades es minimizar gasto o inversi on en recursos. El cuerpo humano como sistema maximiza la vida de toda c elula y as maximiza de manera exponencial el benecio para cada una de ellas y todo el sistema se ve beneciado con esto. El dual de maximizar la vida es minimizar la degeneraci on del sistema en enfermedad y muerte, esto es evitar sufrimientos innecesarios. Al maximizar la vida, con esto no digo que el ser humano dejar a de sufrir, pues por naturaleza hay sufrimiento que es bueno y pedag ogico, por ejemplo el embarazo de un madre cuando va a dar a luz, sufre dolores de parto, miedo y angustia, sin embargo cuando da a luz entra en gozo y olvida todo el sufrimiento pues un nuevo beb e ha venido al mundo. La naturaleza ense na que el sufrimiento que es inevitable, es natural, incluso a quel que fue provocado de manera antinatural pero ahora es irreversible, y que al igual que la madre es posible vivirlo en paz y darle un sentido fecundo, ayudando a reestablecer el bien del sistema, benecio que ayuda de manera exponencial cuando su prop osito fecundo se ha alcanzado. Un ejemplo para explicar esta situaci on es el cuerpo que soporta una fuerte medicina que debilita a una

16CAP ITULO 3. LIBERTAD, INTELIGENCIA Y TOMA DE DECISIONES. parte del cuerpo fortalecida para que la parte enferma sane, mientras dura el tratamiento, la parte fortalecida se debilita, pero una vez que se termina el tratamiento se vuelve a fortalecer y adicionalmente goza de la ayuda de la parte del cuerpo recientemente sanada.

3.2.

Toma de Decisiones

Como se puede ver en la denici on de libertad y de optimizaci on es importante tomar decisiones, para tomar decisiones es necesario entender la naturaleza del ser o problema sistem atico que se estudia de tal manera que se pueda tener un criterio formar para distinguir las opciones buenas y las opciones malas, las soluciones factibles y las soluciones infactibles. As como una manera evaluar cada opci on o soluci on para escoger entre las buenas o factibles la mejor. Propiedades 3.2.1. Las siguientes son propiedades de la toma de decisiones: 1. Toda decisi on tiene consecuencias. 2. Cuando se elije se renuncia inevitablemente a las dem as opciones. 3. Al elegir uno se puede equivocar y puede corregir, de hecho lo mejor es corregir, pero deber a inevitablemente que afrontar las consecuencias de su decisi on. 4. No decidir tambi en es decidir y esto solo esta justicado bajo verdadera prudencia no bajo el miedo irracional. 5. No decidir tambi en es decidir. Decidir es inevitable. 6. Evadir una decision por miedo es la peor decisi on, pues hay una necesidad urgente que se puede atender y al evadirse, la necesidad crece generando un problema mayor. 7. Afrontar una decisi on, si se decide la necesidad se atiende y el problema es menor o se termina. 8. Si se evade una decisi on se pierde la libertad, el exterior desordenado (personas o circunstancias) toman las decisiones por ti y te llevan a donde no quieres pues el desorden atropella la vida.

Y COMPASION COMO MOVIMIENTOS NATURALES DEL SER HUMANO INTELIG 3.3. PERDON 9. Aplazar una decisi on s olo est a justicado bajo verdadera prudencia, no bajo el miedo irracional, bajo la prudencia se ha elegido invertir todo el ser en la comprensi on de la necesidad para poder atenderla mejor.

3.3.

Perd on y Compasi on como movimientos naturales del ser humano inteligente.

Principio 3.3.1. Enojo. Cuando una persona se enoja es porque esperaba recibir algo de una persona que no pudo o no quiso dar, es decir ten a una necesidad, deseaba que una persona le ayudara a atenderla, pero la segunda no le ayud o. Principio 3.3.2. Pero las personas que no pueden o quieren dar, son necesitadas, o no son libres y por lo tanto tambi en son necesitadas. Demostraci on. Los casos son los siguientes: Si las personas no pueden dar, la realidad es que se encuentran incapacitadas para realizarlo, por lo tanto sufren de una necesidad que podr a incluso ser mayor a la necesidad que buscamos remediar con el dar esperado de la persona. Si la persona no quizo darlo las razones son las siguientes: Puede discernir un bien mayor al no darlo. Lo cual puede ser: Cierto: entonces ha hecho bien y hay que agradecer, posiblemente estemos dominados por una emoci on que se ha desordenado, y se nos invita volver a un estado racional en paz. Falso: entonces es una persona necesitada porque no ha aprendido a tomar decisiones inteligentes, por lo tanto en su toma de decisiones se hace da no as misma y a los dem as. Hay una necesidad de formaci on y una necesidad de bienestar. Lo hace por libertad condicionada por sufrimiento derivada del sometimiento a alguna de las siguientes emociones que se han desordenado: La persona est a necesitada de ayuda para dejar de sufrir si es posible o bien vivir con dignidad, paz y fecundidad el sufrimiento inevitable para recuperar su libertad, de otra forma se hace mayor da no as misma y tambi en a quien les rodea.

18CAP ITULO 3. LIBERTAD, INTELIGENCIA Y TOMA DE DECISIONES. La persona est a sometida a una emoci on que se ha desordenado de miedo, la cual no le le permite relacionarse con los dem as de una manera plena, y adem as le conduce muchas veces a agresividad y negar a las personas que le rodean pues cree por imaginaci on que las dem as personas le arrebatar an algo vital. Cuando este miedo irracional se propaga se convierte en una psicosis colectiva en la cual las personas desconf an unas de otras, generando un desorden mayor, y da no que no es por intenci on sino por la suma de los errores que se cometen por la irracionalidad ca otica de cada persona que desconf a. La persona sometida por el miedo ha perdido su libertad pues por el miedo puede ser manipulada por las circunstancias externas llevandola a donde no quiere, descuidar de s misma y de los dem as. La persona est a sometida a una emoci on que se ha desordenado de placer, la cual degenera en una dependencia a un placer, terminando por usar a las personas, maltratar la dignidad de ellas, maltratar su dignidad propia, placer que trata de apagar la sed de ser recibido, amado, comprendido, pero que al creer erradamente que no tiene acceso a estos derechos leg timos contin ua sometido a algo material que le proporciona el placer, placer que con el tiempo arta, incrementando as la sed y por tanto haciendo que la persona sometida, se someta a un placer desordenado mayor, degenerando cada vez en mayores trastornos, enfermedades y adelantando de manera precipitada su muerte. La persona sometida por el placer ha perdido su libertad pues por el placer puede ser manipulada por las circunstancias externas llevandola a donde no quiere, descuidar de s misma y de los dem as. La persona est a sometida a una emoci on que se ha desordenado de poder, la cual ha aprendido que puede manipular a los dem as por la generaci on de el miedo y el placer desordenado en las personas que le rodean, adem as que el poder le da acceso a placeres leg timos e ilegitimos los cuales le someten a una emoci on desordenada de placer. La persona sometida por el poder primero fue sometida por el miedo, sin dejar de someterse pues siempre vive inseguridad de ser rechazado,

Y COMPASION COMO MOVIMIENTOS NATURALES DEL SER HUMANO INTELIG 3.3. PERDON odiado, de perder el accesos a derechos leg timos e ileg timos, pensando erradamente que los derechos ileg timos son parte vital de su vida sin darse cuenta que al manipular es manipulable y manipulado, y los derechos ilegitimos, la irracionalidad del poder, del miedo y del placer le degeneran en trastornos, enfermedad y adelantan de manera precipitada su muerte.

Principio 3.3.3. El hombre por naturaleza es bueno, siempre busca el bien, si es ignorante solo para s mismo o para un grupo denido, si es sabio para todos. Principio 3.3.4. El Perd on libera, el perd on justica a quien falto, pero en la verdad, no es ilusi on, en la verdad hay una esperanza verdadera y el, lo perdido ser a devuelto con creces por Dios a su tiempo, esto es as para que nadie desespere y sea irracional. Demostraci on. El hombre que carga con culpa y se ha arrepentido, sino recibe perd on y no tiene la seguridad que la situaci on se puede recuperar y salvar a su tiempo, decide hacerse da no as mismo por desesperaci on, cree que no hay remedio para sus necesidades. Lo cual es falso, mientras hay vida es posible hacer algo por atender las necesidades presentes, recibir ayuda y ayudar, se puede hacer la diferencia porque vivan mejor y de manera digna las personas vivas y por tanto s mismo, pues si se hace da no as mismo, hace da no a todas las personas que le necesitan. Para el creyente tiene la seguridad que en el perd on la vida que parece perdida, ser a devuelta a su tiempo, bajo los principios que rigen a la vida terrena y eterna. Principio 3.3.5. Por lo tanto no es inteligente dejarse dominar por una Ira irracional que atropella la vida de los dem as y por tanto la propia. Sino m as bien perdonar a quien no ha dado lo esperado. Principio 3.3.6. El perd on justica no por imaginaci on, sino por la comprensi on de las necesidades reales que vive la persona que ha fallado, entender que nos ha dado un bien o bien padece una necesidad mayor a la nuestra y entonces podemos ayudarlo.

20CAP ITULO 3. LIBERTAD, INTELIGENCIA Y TOMA DE DECISIONES.

3.4.

Inteligencia

Denici on 3.4.1. La Compasi on a diferencia de la justicia humana que da a cada quien lo que merece da a cada quien lo que necesita aunque no lo merezca pero lo quiera libremente recibir. La compasi on devuelve la vida y dignidad a quien la ha perdido. La Compasi on es Inteligencia. La Compasi on es prolongaci on de la vida propia. La Compasi on es Libertad. Demostraci on. La compasi on sana a las c elulas enfermas, devuelve la vida a las muertas, reintegra las c elulas desordenadas al sistema y s olo as el sistema ca otico regenera, genera y maximiza la vida. Denici on 3.4.2. La inteligencia implica libertad, no hay libertad sin compasi on, no hay libertad sin perd on, no hay inteligencia si no se busca devolver la dignidad y vida perdida a quien la ha perdido aunque no lo merezca, pero respetando la libertad de quien quiera recibirlo, ya que esto m aximiza la vida. Principio 3.4.3. As toda comunidad que decide buscar provecho propio a costa de los dem as asemeja a un c ancer en las cuales las c elulas dejan de comportarse de manera natural dejando de ayudar a sus vecindades de c elulas, y viviendo a costa de las dem as, esto hace que degenere todo el ser (el cuerpo), adelanta la muerte de todo el sistema y por tanto el de las c elulas que se han revelado en forma de tumor. La cura del C ancer esta en el conocimiento de la compasi on como estrategia de sanaci on de los tumores.

Cap tulo 4 Integralidad, Ser y Verdad


4.1. Integralidad

Comprender el Ser o una problem atica es similar a comprender un diamante. Un diamante posee diversidad de caras, cada cara es distinta, y cada cara se relaciona de manera u nica con todas las dem as caras. El diamante posee una propiedad que se llama integralidad, esto es no podemos decir que el diamante en su totalidad es s olo una de las caras o algunas de las caras, a esta acci on se le llama reduccionismo. El reduccionismo es un error en la comprensi on de una persona, situaci on o problem atica. Cuando una soluci on afectar a vidas humanas, si propone bajo una comprensi on reduccionista por pereza, o desidia se corre el riesgo gravisimo de empeorar la situaci on, y en este caso es mejor no realizar ninguna acci on y dejar el problema como est a para que alguien con buena voluntad lo solucione. Sin embargo si se han agotado todos los recursos y se tiene una comprensi on reduccionista, pero vidas humanas dependen de esta soluci on lo mejor es hacer lo posible dentro de las limitaciones de la soluci on expresando que esta soluci on es reduccionista y que debe ser mejorada lo m as pronto posible. Otro error es comprender mal alguna de las caras o entender mal las relaciones entre ellas. Toda persona, ser, problem atica y situaci on posee la propiedad de integralidad. 21

22

CAP ITULO 4. INTEGRALIDAD, SER Y VERDAD

4.2.

Ser y Verdad

El ser humano es un ser integral. Dimensiones del ser humano: Corporal. Psicol ogica. Emocional. Sexual. Racional. Espiritual. Social. Voluntad y Libre albedr o. Conciencia. El ser no depende del hacer, decir, tener, pensar de los hombres, sino de la verdad que lo rige. Ejemplo 4.2.1. Una piedra, por m as que la azote, se diga as mismo que es madera, piense que es tela, o tenga salsa encima, la piedra seguir a siendo piedra y no madera o tela o comida; la piedra preservar a sus propiedades de piedra. Principio 4.2.2. A estos principios que le rigen, que se maniestan en la realidad presente se llama verdad. Principio 4.2.3. No existen verdades relativas, sino que la verdad es universal. Ejemplo 4.2.4. A la persona que crea que las verdades son relativas se le invite a beber un vaso lleno de agua de la cloaca y bajo el supuesto que la verdad es relativa, b astele pensar que el agua de la cloaca esta limpia o relativamente limpia y la beba. Del ejemplo anterior se puede concluir que existe un bien verdadero y un mal verdadero, los cuales son universales.

4.2. SER Y VERDAD

23

Principio 4.2.5. El bien verdadero es aquel que promueve, cuida, hace crecer y preserva la integridad de la vida de todo ser humano incluso por venir desde que se concibe hasta que muere de manera digna con el mayor esfuerzo posible. Principio 4.2.6. El mal verdadero es aquello que se aparta de ser bien verdadero. Principio 4.2.7. El bien verdadero y el mal verdadero no son relativos. El ser humano cuando es infante esta justicado Propiedades 4.2.8. la formaci on de su conciencia, identidad y dependencia del ser por la conanza que este de peque no deposita en sus padres o tutores para formarlo como persona de bien. El ser humano cuando ha alcanzado madurez e interdependencia de sus padres o tutores ya no est a justicada la dependencia del ser de otras personas a esto se llama inmadurez. Propiedades 4.2.9. En este sentido las siguientes frases son signo de inmadurez: Yo dejo de ser persona responsable y comprometida porque esa persona hace o no hace tal cosa. Yo dejo de ser persona responsable y comprometida porque esa persona dice o no dice tal cosa. Yo dejo de ser persona responsable y comprometida porque esa persona piensa o no piensa tal cosa. Yo dejo de ser persona responsable y comprometida porque esa persona posee o no posee tal cosa. Estas frases en realidad signican Yo no quiero ser responsable por envilecimiento o por pereza pero se expresa en las frases anteriores para seguir agradando a los dem as. Las personas que las expresan dependen de los dem as, son incapaces de ser estables, pues su interior depende del exterior siempre cambiante. Principio 4.2.10. El Ser se rige por el interior no por el exterior, hay libertad en el interior, hay manipulaci on en el exterior.

24

CAP ITULO 4. INTEGRALIDAD, SER Y VERDAD

Principio 4.2.11. La persona que se rige por lo interno sabe d onde est a, de d onde viene, y a d onde va; esta persona sabe lo que quiere. La persona que se rige por lo externo no sabe lo que quiere y los dem as deciden por ella. Principio 4.2.12. Todo manipulador es manipulable. Esto es as para que nadie manipule a nadie. Principio 4.2.13. Todas las personas son buenas por naturaleza. Principio 4.2.14. La compasi on es propiedad del ser humano, cuando algui en se ha equivocado no debe ser negado sino invitado a reintegrarse a la sociedad con la misma dignidad con la que naci o. Principio 4.2.15. No actuar de manera compasiva es enfermedad. La enfermedad se llama perfeccionismo la cual genera esquizofrenia y trastorno obsesivo compulsivo. Propiedades 4.2.16. La enfermedad de perfeccionismo consiste en lo siguiente: Se reduce el SER al HACER lo cual es un error pues el ser humano no es lo que hace. Cuando el hacer es un error, este error tiene una connotaci on negativa lo cual hace que la persona quien lo aprecia niegue lo negativo, al negar lo negativo niega el hacer, pero tambi en el ser pues este fue reducido al hacer. Lo cual hace que la persona se convierta en juez, pero este juicio al negar al ser, niega la dinidad de ser humano de esta incluso llevandola a quitarle la vida, convirtiendo as a quien juzga en una persona que hace las mismas cosas que la persona juzgada (He aqu la esquizofrenia) y bajo su propio juicio ejercer a as misma la misma pena que dicta sobre la persona juzgada. Principio 4.2.17. El ser humano no es lo que hace. Ejemplo 4.2.18. 1. Un ejemplo muy sencillo es que un ni no puede hacer como pato, caminar como pato y no por eso se convierte en pato, o dejo de ser humano.

4.2. SER Y VERDAD

25

2. El ser humano tiene la capacidad de imitar conductas de los animales o personas o de la creaci on. Pero la persona no es lo que imita. 3. Una persona puede actuar como un le on irracional, agresivo y asesino, pero su dignidad humana se preserva. Un var on puede actuar como una mujer emocional, delicada y con voz tenue, pero su dignidad y ser de var on se preserva. Principio 4.2.19. La persona no es lo que imita. Principio 4.2.20. La dignidad del ser humano se desarrolla para alcanzar su plenitud cuando esta recibe y reconoce lo bueno heredado por su familia y la humanidad, lo cual constituye verdaderamente su identidad. Principio 4.2.21. La dignidad del ser humano no la sostienen las obras de los hombres que siempre tienen error, sino la sostiene la verdad la cual revela la verdadera inteligencia.

26

CAP ITULO 4. INTEGRALIDAD, SER Y VERDAD

Cap tulo 5 Comunicaci on


5.1. Sintaxis, Gram atica y Sem antica de Lenguajes

Denici on 5.1.1. Un Lenguaje est a conformado por la denici on de una sintaxis, una gram atica y una sem antica, como instrumento de comunicaci on entre dos entidades racionales. Un Lenguaje dene elementos caract eres y palabras que se estructuran y se unen entre s para formar una oraci on con el n de expresar un signicado a la persona que lee o escucha una oraci on. Denici on 5.1.2. Se llama Sintaxis a la denici on del alfabeto que constituye un lenguaje, as como a la denici on de la estructura para conformar palabras del lenguaje basadas en este alfabeto, declarando cuales son palabras v alidas en el lenguaje. Denici on 5.1.3. Se llama Gram atica a la denici on de la estructura con la cual se pueden conformar oraciones dada la sintaxis, esto es el alfabeto y palabras, de un leguaje, para conformar distintos tipos de oraciones. La gram atica tambi en clasica las palabras de la Sintaxis para dar reglas de estructuraci on y combinaciones para formar oraciones. La sintaxis y la gram atica no es el signicado de la oraci on, de hecho el signicado se entiende como otro atributo con el cual es posible denir un lenguaje. 27

28

CAP ITULO 5. COMUNICACION Si bien es cierto que la gram atica se podr a denir sin signicado, a esto se le llama libre de contexto, esta no tendr a ninguna utilidad hasta que se le provee de un signicado

Denici on 5.1.4. Al signicado que se le asigna a cada palabra, a cada oraci on que integra palabras, y la integraci on de oraciones, tambi en se le conoce como sem antica. En este sentido siempre se pide que la estructura sea lo m as sencilla posible pero sin embargo pueda proveer un benecio al hombre de manera ecaz y eciente, no gusta a las personas de ciencia aquellas estructuras que no sirven para ayudar al hombre en un problema espec co de manera ecaz y eciente, lo cual indica que bien se necesita un poco m as de complejidad en la estructura en cuanto a sintaxis y signicado, o bien es demasiada compleja para atender la necesidades de las personas. La denici on de un lenguaje ser a aceptado conforme a su naturalidad, un lenguaje matem atico se puede especicar por medio de axiomas l ogicos; de la simplicidad de los axiomas pero valorando sus virtudes al integrarse depender a de la aceptaci on del sistema axiom atico. Un sistema axiom atico dene un a rbol de principios los cuales servir an para resolver problemas de la vida real, su naturalidad se puede metaf oricamente asemejar a a rboles frutales, de acuerdo a su naturalidad por ejemplo se puede construir un arbol de naranja, pero un sistema axiom atico forzado es similar a un a rbol h brido, el cual generalmente aunque se heredan atributos de dos a rboles frutales buenos es inf ertil esto es no sirve para aplicaciones reales. En este sentido es posible simplicar el sistema axiom atico en dos sistemas axiom aticos. As en matem aticas hay diversas estructuras sint acticas ( arboles) con las cuales al proveerle signicado se pueden obtener sistemas de lenguajes que ayuden al hombre a resolver sus necesidades. El a rbol que estaremos estudiando es el lenguaje de teor a de conjuntos, lenguaje que fue desarrollado hace menos de siglo y medio y que ha permitido el desarrollo de la ciencia ampliamente. Aprender un lenguaje matem atico es similar a aprender un lenguaje de idioma, podr a ser tan dif cil como aprender de espa nol a japon es sin conocer

5.1. SINTAXIS, GRAMATICA Y SEMANTICA DE LENGUAJES

29

los signicados de las ra ces de los Kanjis, como de espa nol a un lenguaje matem atico. En realidad aprender un lenguaje matem atico es m as sencillo que aprender japon es o ruso. La dicultad no radica en los s mbolos que utilizan, que al principio parecen extra nos y dif ciles de comprender, sino en el hecho que se haya explicado de una manera comprensible al estudiante la sintaxis, la gram atica y signicado por niveles de conciencia, donde el estudiante pueda ser capaz de interactuar con ejemplos sencillos en cada nivel de conciencia para comprender los principios generales que le rigen y as lograr ascender al siguiente nivel de conciencia (Para mayor referencia ver Pedagog a Ignaciana de la compa n a de Jes us). El lenguaje matem atico es similar a la caligraf a, se expresan signicados complejos en pocas palabras o s mbolos. El lenguaje matem atico estimula la racionalidad, creatividad e imaginaci on y cuando se aprende con el n de amar y servir a la vida, es un medio para desarrollarse como ser humano. Para aprender un lenguaje matem atico o computacional es necesario practicar y realizar constantemente ejercicios pedag ogicos como se har a para aprender Ingl es o Franc es. Aprender un lenguaje matem atico es una tarea f acil que sin embargo necesita una metodolog a que depende m as del profesor que del estudiante pero que tambi en requiere paciencia, perseverancia, compromiso y ejercitaci on constante del estudiante. Para el estudiante por supuesto siempre la mejor manera de aprender ser a ayudando a sus compa neros, ya que el hecho de explicar en el lenguaje de la persona a la que se esta explicando ya requiere doble tarea el comprender el lenguaje y traducirlo a su amigo para que este comprenda. Las ventajas de ayudar a sus compa neros que m as trabajo les cuesta para entender el lenguaje matem atico trae varias ventajas entre ellas: tener la oportunidad de forjar una amistad profunda con el compa nero a quien se explica, aprovechar inteligentemente el tiempo ya que se ayuda a una persona y adem as se ayuda uno as mismo al recibir retroalimentaci on de su amigo, lo cual le abre el entendimiento y le hace fecundo, se tiene m as tiempo para estudiar y losofar sobre el tema que se ense na sin descuidar los deberes y atender las necesidades verdaderas que enfrenta toda la humanidad y comunidad a la que se pertence en la realidad. En particular agradezco la llave que me abri o el entendimiento para comprender de una manera sencilla las matem aticas al Sacerdote y Ph.D. Jos e Luis Moreno S. J., que me ha ense nado matem aticas sin reservas durante un semestre utilizando la Pedagog a Ignanciana. Cuya metodolog a se

30

CAP ITULO 5. COMUNICACION

encuentra registrada en la p agina de Mathematike, y libros para kinder, primaria, secundaria, bachillerato y universidad. Y estoy agradecido con el por la atenta invitaci on que me hizo la cual libre y plenamente acept e de Amar y Servir a la Vida de todo ser humano incluyendo aquellos que est an por venir poniendo a su servicio mi imaginaci on, mi creatividad y mi raz on.

Cap tulo 6 Teor a de conjuntos


6.1. Introducci on.

Denici on 6.1.1. Se dene a un conjunto como una colecci on de elementos que representan elementos de la realidad con caracte sticas intr nsecas a su naturaleza, cuyas estructuras de las caracter sticas, a lo que llamaremos propiedades, al integrarse denen si un elemento pertenece a la coleci on o no. Observaciones: Para poder denir un conjunto es muy importante que los elementos que se abstraen est en inspirados en la realidad, es decir que los elementos del conjunto existan y por lo tanto sea posible modelarlos (abstraerlos) y trabajar con ellos con un lenguaje matem atico. A esta propiedad se le llamar a conjunto bien formado. En la naturaleza existen deniciones recursivas, esto es que utiliza su denici on para denir pero en una escala m as peque na hasta llegar a un caso base donde la denici on ya no se dene en t erminos de s misma sino de una denici on nita, haciendo as a la denici on recursiva nita. Para comprender mejor este concepto piense en un a rbol de la naturaleza, un rama engendra (dene) ramas pero a una escala m as peque na hasta encontrar una denici on nita que son las hojas. Toda denici on recursiva si no tiene un caso base es innita pero el innito no corresponde a una propiedad de la realidad visible. Las deniciones recursivas innitas generan contradicciones en el razonamiento, y paradojas en la denici on de conjuntos. 31

32

CAP ITULO 6. TEOR IA DE CONJUNTOS A una denici on recursiva tambi en se le llama denici on inductiva, basada en el principio de inducci on.

Denici on 6.1.2. El principio de inducci on establece que para deniciones recursivas, una denici on general dene en t erminos de s misma una denici on que es m as sencilla, heredando (induciendo) las propiedades de denici on general a la sencilla, excepto en el caso base. Observaciones: El principio de inducci on es utilizado para pruebas de propiedades en matem aticas y l ogica. Las verdades en matem aticas son como objetos en un cuarto oscuro, donde el matem atico no puede ver nada, pero si puede palpar la supercie de los objetos, para entender la estructura recursiva (inductiva) de la naturaleza de un objeto, un a rbol por ejemplo el matem atico comienza por las hojas, descubre las primeras ramas peque nas y va descubriendo las siguientes ramas con mayor grosor pero que poseen la misma estructura. Para esto utiliza las pruebas por inducci on. Teorema 6.1.3. Prueba por Inducci on: Para probar que una estructura posee la propiedad de principio de inducci on se debe probar: 1. Probar que el caso base es una denici on nita (Las hojas). 2. Suponer que la propiedad que establece que la denici on general dene y hereda propiedades a otras m as sencillas es cierta. Esto dene niveles de inducci on, los cuales deber an ser ciertos, se verica al usar la propiedad propiedad como cierta para llegar al siguiente nivel inductivo (Paso de rama en rama). Ejemplo 6.1.4. Las siguientes oraciones describen conjuntos: El conjunto de todos los estudiantes de la Universidad del Valle de Puebla cuya matr cula termina en 9. En este caso los elementos del conjunto ser an todos los estudiantes, y la propiedad que deben cumplir es que su caracter stica matr cula termine en 9. Observe que el n umero de elementos de este conjunto es nito.

6.2. LENGUAJE DE TEOR IA DE CONJUNTOS: SINTAXIS, GRAMATICA Y SEMANTICA. 33 El conjunto de todos los ciudadanos del estado de Puebla que tienen una edad entre 20 y 30 a nos que padecen diabetes. En este caso los elementos del conjunto ser an personas y la propiedad que se busca es que tengan en su caracter stica edad se encuentre entre 20 y 30 a nos y adm as en su caracter stica enfermedad padezcan diabetes como enfermedad. El conjunto de los videojuegos en inventario dentro de un negocio que sean producidos por la marca capcom. En este caso los elementos del conjunto ser an los videojuegos, y la propiedad que deben cumplir es que en su caracter stica marca sea capcom.

6.2.
6.2.1.

Lenguaje de teor a de conjuntos: Sintaxis, Gram atica y Sem antica.


Conjunto.

Denici on 6.2.1. Un Conjunto es una colecci on de elementos que representan entidades de la realidad y que comparten estructura y caracter sticas en com un. Notaci on 6.2.2. Para denotar un conjunto, se enlistan los elementos del conjunto separados por comas. La lista esta delimitada por llaves. Ejemplo 6.2.3. Los siguientes son ejemplos de conjuntos: 1. {1, 2, 3} 2. {a, e, i, o, u} 3. {hugo, paco, luis}

6.2.2.

Pertenencia.

Notaci on 6.2.4. A un elemento dentro de un conjunto se dice que el elemento pertenece al conjunto. El s mbolo pertenece se denota por . Sigue el siguiente formato: elemento Conjunto.

34 O bien:

CAP ITULO 6. TEOR IA DE CONJUNTOS

elementos Conjunto. Dos o m as elementos se pueden enlistar para pertenecer a un conjunto separados por comas. Cuando un elemento o varios elementos no pertenecen a un conjunto se denota por el s mbolo /. Ejemplo 6.2.5. Los siguientes son ejemplos del uso de pertenencia de conjuntos:

1. 1 {1, 2, 3}. 2. e {a, e, i, o, u}. 3. paco {hugo, paco, luis}. 4. 2, 3 {1, 2, 3}. 5. a, e, o {a, e, i, o, u}. 6. hugo, luis {hugo, paco, luis}. Los siguientes son ejemplos del uso de no pertenencia a conjuntos:

1. 7 / {1, 2, 3}. 2. f / {a, e, i, o, u}. 3. marco / {hugo, paco, luis}. 4. 5, 4 / {1, 2, 3}. 5. j, k, l / {a, e, i, o, u}. 6. juan, pedro / {hugo, paco, luis}.

6.2. LENGUAJE DE TEOR IA DE CONJUNTOS: SINTAXIS, GRAMATICA Y SEMANTICA. 35

6.2.3.

Nombramiento de Conjuntos.

Notaci on 6.2.6. Los conjuntos pueden ser representados por un nombre siguiendo el siguiente formato: N ombre = Conjunto. Ejemplo 6.2.7. Los siguientes son ejemplos de nombramiento de conjuntos: 1. A = {1, 2, 3} 2. V ocales = {a, e, i, o, u} 3. P atos = {hugo, paco, luis}

6.2.4.

Igualdad de Conjuntos.

Denici on 6.2.8. En un conjunto el orden de los elementos que contiene no es relevante. Si A y B son conjuntos entonces: A = B signica para todo elemento x si x A entonces x B y adem as si para todo elemento x si x B entonces x A. Escrito en formalizmo l ogico quedar a: A = B si y s olo x.(x A x B ) y x.(x B x A). Reescrito de manera abreviada ser a: A = B si y s olo x.(x A x B ). Ejemplo 6.2.9. Los siguientes son ejemplos de igualdad: 1. {1, 2, 3} = {2, 3, 1} = {3, 1, 2} = {3, 2, 1}. 2. {a, e, i, o, u} = {i, o, u, a, e}.

6.2.5.

Tuplas.

Denici on 6.2.10. Cuando es relevante el orden de los elementos a el conjunto se le llama tupla y en lugar de estar delimitado por llaves, estar a delimitado por par entesis o <>. Si una tupla tiene n elementos entonces de dice que es una tupla de longitud n. Ejemplo 6.2.11. Los siguientes son ejemplos de tupla y se muestra como no son iguales a tuplas con los mismos elementos pero en distinto orden:

36 1. < 1, 2, 3 >=< 2, 3, 1 >.

CAP ITULO 6. TEOR IA DE CONJUNTOS

2. (5, 3, 4, 2, 1) = (1, 2, 3, 4, 5). 3. < a, e, i, o, u >=< i, o, a, e, u >. A la tupla de tama no dos se le llama par ordenado. A la tupla de longitud n se le llama n-tupla. Ejemplo 6.2.12. Los siguientes son ejemplos de n-tuplas: 1. La tupla (3, 7) es un par ordenado o 2-tupla. 2. La tupla (a, 3, f ) es una 3-tupla. 3. La tupla < 1, 5, 7, 8 > es una 4-tupla. En particular si se tiene una tupla en forma general (a1 , a2 , . . . , an ) equivale a escribir (a1 , (a2 , (. . . , (an , )). Esto dene la manera en que se contruyen las tuplas. Ejemplo 6.2.13. Si quisieramos construir la 3-tupla (1, e, 2), la manera de construirla ser a: (2, ). (e, (2, )). (1, (e, (2, ))). As en lugar de escribir (1, (e, (2, ))) escribimos de manera abreviada (1, e, 2). La siguiente denici on es s olo de conocimiento cultural para entender como se construye y dene un orden para dar una denici on coherente de tupla a trav es de la denici on de conjuntos. Denici on 6.2.14. La denici on de tupla se especica en t ermino de conjuntos. El orden se da por la estructura de contenci on que denen la delimitaci on de par entesis, esto es para denir un orden en un conjunto se encapsular an los elementos como conjuntos contenidos dentro de conjuntos. Se seguir a el procedimiento d la construcci on de tuplas que se mostro en el ejemplo anterior. La denici on de tupla se realiza mediante una construcci on inductiva que sigue las siguientes reglas de construcci on:

6.2. LENGUAJE DE TEOR IA DE CONJUNTOS: SINTAXIS, GRAMATICA Y SEMANTICA. 37 1. la 0-tupla (llamada tupla vac a) es el conjunto vac o . 2. Si x = (a1 , a2 , . . . , an ) es una n-tupla entonces {{a0 }, {a0 , x}} es una (n + 1)-tupla. Ejemplo 6.2.15. Empleando esta denici on, la 3-tupla (1, e, 2) por la denici on inductiva se construye de la siguiente manera: 1. 2. (2) = (2, ) = {{2}, {2, }} 3. (e, 2) = (e, (2)) = (e, (2, )) = {{e}, {e, (2, )}} = {{e}, {e, {{2}, {2, }}}} 4. (1, e, 2) = (1, (e, 2)) = {{1}, {1, (e, 2)}} = {{1}, {1, {{e}, {e, {{2}, {2, }}}}}}

6.2.6.

Cardinalidad.

Denici on 6.2.16. Cardinalidad de un conjunto signica el n umero de elementos de un conjunto, se denota por el nombre de conjunto o el conjunto delimitado por barras. Formato: |Conjunto|. Ejemplo 6.2.17. Los siguientes son ejemplos de cardinalidades de conjuntos: 1. |{1, 2, 3}| = 3. 2. |{a, e, i, o, u}| = 5. 3. |P atos| = 3.

6.2.7.

Clase.

Denici on 6.2.18. Un conjunto puede tener como elementos conjuntos. A el conjunto cuyo todo elemento es conjunto se le llama Clase. Ejemplo 6.2.19. Los siguientes conjuntos son ejemplos de clase:

38

CAP ITULO 6. TEOR IA DE CONJUNTOS 1. B = {{1, 2}, {1, 3}, {3, 4}} 2. C = {{pedro, juan}, {santiago, andres, pablo}, {marcos, mateo, lucas, juan}}.

Esto signica por ejemplo que {1, 3} B . O bien que {pedro, juan} C . N otese que {{1, 2}, {3}} = {1, 2, 3} Y {1, 2, 3} = {{1, 2}, 3}, Y {{1, 2}, {3}} = {{1, 2}, 3}. En particular la delimitaci on por par entesis de un conjunto se puede hacer la analog a como si fuera una bolsa de supermercado entonces {{1, 2}, {3}} se entender a como la bolsa de supermercado que tiene dos bolsas adentro: una con los elementos 1 y 2, la otra con elemento 3. Estas bolsas dan una estructura de contenci on, es la raz on que por estructura de contenci on armemos que {1, 2, 3} = {{1, 2}, 3}. La estructura de contenci on sirve para proponer un orden entre elementos de conjuntos y as formar las tuplas.

6.2.8.

Conjunto Vac o.

Denici on 6.2.20. El conjunto que no tiene elementos se llama Conjunto Vac o y se denota por o {}. El conjunto vac o puede ser elemento de un conjunto por ejemplo: {{1, 3}, {}, {1, 2}}. Pero el conjunto vac o no es elemento del conjunto vac o: / {}.

6.2.9.

Operaciones de Conjuntos.

Las siguientes son deniciones de operaciones de conjuntos: Denici on 6.2.21. Uni on de Conjuntos. Si A y B son conjuntos, A B es conjunto y signica A uni on B si y s olo si x.(x A x B x A B ). Ejemplo 6.2.22. La uni on de conjuntos se puede imaginar como dos conjuntos (bolsas) A y B las cuales se vaciar an en una nuevo conjunto(bolsa) para formar la uni on. Dados los siguientes conjuntos: 1. A = {1, 3, 5, 7}. 2. B = {2, 4, 6, 8}.

6.2. LENGUAJE DE TEOR IA DE CONJUNTOS: SINTAXIS, GRAMATICA Y SEMANTICA. 39 3. C = {2, 4, 5, 7}. Los siguientes son ejemplos de uni on: 1. A B = {1, 2, 3, 4, 5, 6, 7, 8}. 2. A C = {1, 2, 3, 4, 5, 7}. 3. B C = {2, 4, 5, 6, 7, 8}. Denici on 6.2.23. Intersecci on de Conjuntos. Si A y B son conjuntos, AB es conjunto y signica A intersecci on B si y s olo si x.(x A x B x A B ). Ejemplo 6.2.24. La intersecci on de conjuntos se puede imaginar como dos conjuntos (bolsas) A y B las cuales se vaciar an en una nuevo conjunto(bolsa), s olo uno de cada ejemplar que tengan en com un ambas bolsas para formar la intersecci on. Dados los siguientes conjuntos: 1. A = {1, 3, 5, 7}. 2. B = {2, 4, 6, 8}. 3. C = {2, 4, 5, 7}. Los siguientes son ejemplos de intersecci on: 1. A B = {} = . 2. A C = {5, 7}. 3. B C = {2, 4}. Denici on 6.2.25. Diferencia de Conjuntos. Si A y B son conjuntos, A \ B es conjunto y signica A menos B si y s olo si x.(x A x / B x A \ B ).

40

CAP ITULO 6. TEOR IA DE CONJUNTOS

Ejemplo 6.2.26. La diferencia de conjuntos se puede imaginar como dos conjuntos (bolsas) A y B las cuales se vaciar an en una nuevo conjunto(bolsa) s olo los elementos que est en en A pero al mismo tiempo no est en en B para formar la diferencia. Dados los siguientes conjuntos: 1. A = {1, 3, 5, 7}. 2. B = {2, 4, 6, 8}. 3. C = {2, 4, 5, 7}. Los siguientes son ejemplos de intersecci on: 1. A \ B = {1, 3, 5, 7}. 2. A \ C = {1, 3}. 3. B \ C = {6, 8}. 4. B \ A = {2, 4, 6, 8}. 5. C \ A = {2, 4}. 6. C \ B = {5, 7}.

6.2.10.

Producto Cartesiano o Producto Cruz.

Denici on 6.2.27. Sean A y B conjuntos, producto cartesiano entre A y B se denota por A B y se dene como: x.y.[(x A y B ) (x, y ) A B ]. El producto cartesiano entre A y B , A B , construye pares ordenados (2tuplas) donde el primer elemento de cada par es elemento de A y el segundo elemento de cada par es elemento de B , todos estos posibles pares construyen el conjunto A B . Nota 6.2.28. Observe que A B = B A. Ejemplo 6.2.29. Los siguientes son ejemplos de producto cartesiano. Sean A = {a, b, c}, B = {1, 2}, C = {Juan, P edro}, D = {}, entonces: 1. A B = {(a, 1), (b, 1), (c, 1), (a, 2), (b, 2), (c, 2)}.

6.2. LENGUAJE DE TEOR IA DE CONJUNTOS: SINTAXIS, GRAMATICA Y SEMANTICA. 41 2. B A = {(1, a), (1, b), (1, c), (2, a), (2, b), (2, c)}. 3. B C = {(1, P edro), (1, Juan), (2, P edro), (2, Juan)}. 4. C B = {(P edro, 1), (Juan, 1), (P edro, 2), (Juan, 2)}. 5. C D = {}. 6. D C = {}. 7. B B = {(1, 1), (1, 2), (2, 1), (2, 2)}. 8. A A = {(a, a), (a, b), (a, c), (b, a), (b, b), (b, c), (c, a), (c, b), (c, c)}. 9. D D = {}. Denici on 6.2.30. Note que si A B es conjunto, entonces por denici on de producto cartesiano es posible encadenar productos cartesianos para un n umero variable de conjuntos. Sean A1 , A2 , . . . , An conjuntos para n n umero entero tal que n 2 entonces: A1 A2 . . . An = ((. . . ((A1 A2 ) A3 ) . . .) An ). En particular por ejemplo para n = 3 entonces: A1 A2 A3 = ((A1 A2 ) A3 ). Los encadenamientos nos dar an como resultado tuplas con elementos tuplas por ejemplo ((a1 , a2 ), a3 ) A1 A2 A3 , sin embargo por convenci on las tuplas internas a primer nivel se omiten es decir: ((a1 , a2 ), a3 ) = (a1 , a2 , a3 ). En esta denici on se realiz o una asociaci on por la izquierda tambi en es posible realizarla por la derecha, es decir: (a1 , (a2 , a3 )) = (a1 , a2 , a3 ). Ejemplo 6.2.31. Los siguientes son ejemplos de encadenamiento de producto cartesiano. Sean A = {a, b, c}, B = {1, 2}, C = {Juan, P edro}, D = {}, entonces: 1. A B C = {(a, 1, Juan), (b, 1, Juan), (c, 1, Juan), (a, 2, Juan), (b, 2, Juan), (c, 2, Juan) (a, 1, P edro), (b, 1, P edro), (c, 1, P edro), (a, 2, P edro), (b, 2, P edro), (c, 2, P edro)}. 2. B B B = {(1, 1, 1), (1, 2, 1), (2, 1, 1), (2, 2, 1) (1, 1, 2), (1, 2, 2), (2, 1, 2), (2, 2, 2)}.

42

CAP ITULO 6. TEOR IA DE CONJUNTOS 3. A A B = {(a, a, 1), (a, b, 1), (a, c, 1), (b, a, 1), (b, b, 1), (b, c, 1), (c, a, 1), (c, b, 1), (c, c, 1) (a, a, 2), (a, b, 2), (a, c, 2), (b, a, 2), (b, b, 2), (b, c, 2), (c, a, 2), (c, b, 2), (c, c, 2)}. 4. A B D = {}.

6.2.11.

Subconjunto.

Denici on 6.2.32. Sean A y B conjuntos, entonces se de dice que B es subconjunto de A, denotado por B A s y s olo s x.(x B x A). Si B es subconjunto de A intuitivamente signica que todos los elementos en B deben pertenecer a A. Note que esta denici on es la mitad de la denici on de la igualdad entre conjuntos. Ejemplo 6.2.33. Sean A = {a, b, c, d}, B = {Juan, P edro, Santiago}, C = {}. Entonces los siguientes son ejemplos de todos los posibles subconjuntos para el conjunto A: 1. {a} A. 2. {b} A. 3. {c} A. 4. {d} A. 5. {a, b} A. 6. {a, c} A. 7. {a, d} A. 8. {b, c} A. 9. {b, d} A. 10. {c, d} A.

6.2. LENGUAJE DE TEOR IA DE CONJUNTOS: SINTAXIS, GRAMATICA Y SEMANTICA. 43 11. {a, b, c} A. 12. {a, b, d} A. 13. {a, c, d} A. 14. {b, c, d} A. 15. {a, b, c, d} A. 16. {} A. Entonces los siguientes son ejemplos de todos los posibles subconjuntos para el conjunto B : 1. {Juan} B . 2. {P edro} B . 3. {Santiago} B . 4. {Juan, P edro} B . 5. {Juan, Santiago} B . 6. {P edro, Santiago} B . 7. {Juan, P edro, Santiago} B . 8. {} B . Entonces los siguientes son ejemplos de todos los posibles subconjuntos para el conjunto C : 1. {} C . Denici on 6.2.34. Sean A y B conjuntos entonces se dice que B es subconjunto propio de A, denotado por B A s y s olo s B A y B = A. B A tambi en se denota por B A.

44

CAP ITULO 6. TEOR IA DE CONJUNTOS

Note que la diferencia entre subconjunto y subconjunto propio es si permite la igualdad con el conjunto de la derecha. Denici on 6.2.35. Dados dos conjuntos A y B para denotar que B no es subconjunto de A escribimos B A. Ejemplo 6.2.36. Sean A = {a, b, c, d}, B = {Juan, P edro, Santiago}, C = {}. Entonces los siguientes son ejemplos de todos los posibles subconjuntos propios para el conjunto A: 1. {a} A. 2. {b} A. 3. {c} A. 4. {d} A. 5. {a, b} A. 6. {a, c} A. 7. {a, d} A. 8. {b, c} A. 9. {b, d} A. 10. {c, d} A. 11. {a, b, c} A. 12. {a, b, d} A. 13. {a, c, d} A. 14. {b, c, d} A. 15. Not e que {a, b, c, d} no es subconjunto propio de A. 16. {} A. Entonces los siguientes son ejemplos de todos los posibles subconjuntos propios para el conjunto B :

6.2. LENGUAJE DE TEOR IA DE CONJUNTOS: SINTAXIS, GRAMATICA Y SEMANTICA. 45 1. {Juan} B . 2. {P edro} B . 3. {Santiago} B . 4. {Juan, P edro} B . 5. {Juan, Santiago} B . 6. {P edro, Santiago} B . 7. No que el conjunto {Juan, P edro, Santiago} no es subconjunto propio de B . 8. {} B . Entonces los siguientes son ejemplos de todos los posibles subconjuntos propios para el conjunto C : 1. Note que el conjunto {} no puede ser subconjunto propio de C , por lo tanto B no tiene subconjuntos propios.

6.2.12.

Relaci on.

Denici on 6.2.37. Sean R, A1 ,A2 conjuntos, se dice que R es una relaci on s y s olo s R A1 A2 . Es decir cualquier conjunto R se llama relaci on si es subconjunto del producto cartesiano entre dos conjuntos. Ejemplo 6.2.38. Los siguientes son ejemplos de producto cartesiano. Sean A = {a, b, c}, B = {1, 2}, entonces AB = {(a, 1), (b, 1), (c, 1), (a, 2), (b, 2), (c, 2)}. Los siguientes son ejemplos de relaciones de A B : 1. R1 = {(a, 1), (b, 1), (c, 1), (a, 2), (b, 2), (c, 2)} ya que R1 A B . 2. R2 = {(a, 1), (b, 2), (c, 2)} ya que R2 A B . 3. R3 = {(b, 2), (c, 2)} ya que R3 A B .

46

CAP ITULO 6. TEOR IA DE CONJUNTOS 4. R4 = {(a, 1), (c, 1), (b, 2), } ya que R4 A B . 5. R5 = {(c, 1), (a, 2), } ya que R5 A B . 6. R6 = {(a, 2), (b, 2), (c, 2)} ya que R6 A B . 7. R7 = {(a, 2)} ya que R7 A B . 8. R8 = {} ya que R8 A B .

Nota 6.2.39. Sean R y A1 , A2 , . . . , An conjuntos para n 2, en particular es f acil notar que R es relaci on si R A1 A2 . . . An , ya que los productos cartesianos se pueden agrupar por parejas.

6.2.13.

Dominios.

Denici on 6.2.40. Se llama dominio a un conjunto de uso com un en matem aticas, entre los mas utilizados son: 1. Conjunto de n umeros naturales. 2. Conjunto de n umeros racionales. 3. Conjunto de n umeros enteros. 4. Conjunto de n umeros enteros positivos. 5. Conjunto de n umeros enteros negativos. 6. Conjunto de n umeros reales. 7. Conjunto de n umeros reales positivos. 8. Conjunto de n umeros reales negativos. 9. Conjunto de caracteres. 10. Conjunto de palabras. 11. Conjunto binario.

6.2. LENGUAJE DE TEOR IA DE CONJUNTOS: SINTAXIS, GRAMATICA Y SEMANTICA. 47

Nombre Conjunto N umeros Naturales N umeros Racionales N umeros Enteros N umeros Enteros Positivos N umeros Enteros Negativos N umeros Reales N umeros Reales Positivos N umeros Reales Negativos Caracteres Palabras Binario

Nombre (Ingl es) Natural number Rational numbers Integer numbers Positive Integer Numbers Negative Integer Numbers Real Numbers Positive Real Numbers Negative Real Numbers Characters or Alphabet Strings Boolean or Binary

Simbolog a N Q Z Z+ Z R R+ R 2

Cuadro 6.1: Tabla de dominios y simbolog a.

Nombre Conjunto Signicado Naturales N = {0, 1, 2, 3, . . .} Enteros Z = {0, 1, 1, 2, 2, 3, 3, . . .} Racionales Q = {todo a/b con a, b Z} Enteros Positivos Z + = {0, 1, 2, 3, . . .} Enteros Negativos Z = Z Z+ Reales R = Q {decimales / Q} + Reales Positivos R = {n R n 0} Reales Negativos R = {n R n 0} Caracteres es conjunto nito de letras y s mbolos. Palabras conjunto de toda posible concatenaci on con elementos de Binario 2 = {0, 1} o 2 = {true, f alse} Cuadro 6.2: Tabla de signicado de dominios.

48 Dominio N umeros Naturales N umeros Racionales N umeros Enteros N umeros Enteros Positivos N umeros Enteros Negativos N umeros Reales N umeros Reales Positivos N umeros Reales Negativos Caracteres Palabras Binario

CAP ITULO 6. TEOR IA DE CONJUNTOS Nombres computacionales Simbolog a Matem atica uint, ulong N double, oat Q int, long, integer Z unsigned int, unsigned long Z+ int, long Z oat, double R oat, double R+ oat, double R char, character char[], String boolean or bool 2

Cuadro 6.3: Tabla de dominios computacionales y simbolog a. En la tabla 6.1 se muestra la relaci on de dominios en matem aticas con su nombre en ingl es y su representaci on abreviada simb olica. En la tabla 6.2 se relaciona el nombre del dominio, con su simbolog a y los elementos que estos conjuntos y dominios representan. En la tabla 6.3 se relacionan los nombres de dominios, con el tipo de dato que se utiliza en un lenguaje computacional de programaci on estructurado, as como su simbolog a en matem aticas.

6.2.14.

Relaciones y Dominios.

La importancia de denir dominios es que nos permite construir relaciones b asicas entre estos, relaciones que son fuertemente utilizadas en matem aticas por ejemplo son productos cartesianos entre conjuntos de n umeros enteros, o bien productos cartesianos entre conjuntos de n umeros reales. Notaci on 6.2.41. Cuando se realizan productos cartesianos entre n conjuntos del mismo dominio se puede expresar el producto cartesiano en t erminos de representaci on de potencia.Es decir si Ai , Aj para 1 i, j n son conjuntos iguales (i.e. Ai , Aj ) entonces: A1 A2 . . . An Es lo mismo que escribir:

6.2. LENGUAJE DE TEOR IA DE CONJUNTOS: SINTAXIS, GRAMATICA Y SEMANTICA. 49 An . Ejemplo 6.2.42. Los siguientes son ejemplos de productos cartesianos de mismos conjuntos de domino. 1. R R R R = R4 . 2. R R = R2 . 3. Z Z Z = Z 3 . 4. = 2 . Entonces por ejemplo R2 denota un conjunto de pares ordenados entre n umeros reales utilizado para representar un plano cartesiano en geometr a anal tica, R3 denota un conjunto de 3-tuplas o tripletas entre n umeros reales utilizados para representar un espacio tridimensional en c alculo, o en rob otica 2 para modelar translaciones de un brazo de robot. denota el conjunto de todas las palabras que puedo formar con 2 caracteres del conjunto concatenados. Notaci on 6.2.43. Cuando se realizan productos cartesianos encadenados entre un mismo conjunto de dominio, todos estos posibles encadenamientos se unen se representa por el s mbolo potencia . Es decir: A = A0 A1 A2 A3 . . . Entonces por ejemplo representa el conjunto de todas las palabras que puedo formar con el conjunto de caracteres . Nota 6.2.44. El producto cartesianos siempre se encadena de forma nita, es decir se realiza el producto cruz entre un n umero nito de conjuntos. El producto cartesiano se puede realizar entre conjuntos de distintos dominios. Denici on 6.2.45. Sea R A1 A2 . . . An para Ai tal que 1 i n conjuntos. Entonces a cada Ai se le llama dominio o dimensi on. Note que producto cartesiano nos representa una relaci on de manera abstracta entre las dimensiones Ai de manera ordenada y R al ser subconjunto del producto cartesiano nos ayuda a representar todas las posibles relaciones denidas por las dimensiones Ai de manera ordenada.

50 D d4 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 C d3 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 B d2 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 A d1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

CAP ITULO 6. TEOR IA DE CONJUNTOS

N umero decimal Potencia de 2 0 20 1 21 1 2 21 3 22 1 4 22 5 6 7 23 1 8 23 9 10 11 12 13 14 15 24 1

Cuadro 6.4: Tabla de n` umeros binarios. Nota 6.2.46. En particular A1 A2 siendo Ai conjuntos relaciona cada elemento de A1 con A2 lo cual nos permite realizar un an alisis de todas las relaciones de A1 hacia A2 La siguiente tabla servir a para subconjuntos y conjunto potencia.

Cap tulo 7 Lenguaje de Programaci on Estructurado


7.1. Sintaxis.

Todo lenguaje de programaci on estructurado tiene un conjunto de caracteres con los cuales formar palabras. Este conjunto generalmente es el c odico ASCII el cual consta de 256 s mbolos distintos. Existen otros conjuntos dependiendo del idioma, un conjunto estandarizado a nivel internacional es el UTF-8. Sin embargo regularmente los caracteres m as utilizados para formar palabras en el lenguaje de programaci on son las letras, n umeros y algunos s mbolos como gui on bajo y s mbolos aritmeticos. Las palabras se clasican en tres tipos: reservadas, variables, constantes. Denici on 7.1.1. Las palabras reservadas son aquellas que no pueden ser redenidas por el programador, sino tienen una sem antica (signicado) constante. Ejemplo de estas palabras son: 1. palabras reservadas para tipo de variable: {int, long, double, f loat, char, string } o 2. palabras reservadas para instrucciones de bloque: {if, else, while, switch, case, do, f or} o 3. palabras reservadas para operadores aritm eticos: {+, , , /, &, |, >> , <<, %} o 51

ESTRUCTURADO 52CAP ITULO 7. LENGUAJE DE PROGRAMACION 4. palabras reservadas para operadores de comparaci on: {<, >, <=, >= , &&, ||} o 5. palabras reservadas para contruir istrucciones: {; , :, {, }, , , .}. Denici on 7.1.2. Las palabras variables son aquellas que se describen por un nombre constante pero que su signicado puede ser especicado por el programador. Ejemplo de estas palabras son: 1. La variable x denida como n umero entero. 2. La variable x denida como caracter. 3. La variable x denida como texto. 4. La variable x denida como n umero real. 5. La variable altura denida como n umero real. 6. La variable altura denida como texto. Denici on 7.1.3. Las palabras constantes son aquellas que no pueden ser redenidas por el programador, y rerpesentan un valor espec co de una variable por ejemplo un n umero real o entero, un caracter, una cadena de texto. Ejemplo de estas palabras son: 1. 2345. 2. 2345. 3. 3,141592f . 4. 12,456f . 5. F . 6. e . 7. A . 8. hola . 9. holamundo. .

7.2. GRAMATICA Y SEMANTICA. Nombre Conjunto N umeros Naturales N umeros Racionales N umeros Enteros N umeros Enteros Positivos N umeros Enteros Negativos N umeros Reales N umeros Reales Positivos N umeros Reales Negativos Caracteres Palabras Binario Nombre (Ingl es) Natural number Rational numbers Integer numbers Positive Integer Numbers Negative Integer Numbers Real Numbers Positive Real Numbers Negative Real Numbers Characters or Alphabet Strings Boolean or Binary Simbolog a N Q Z Z+ Z R R+ R 2

53

Cuadro 7.1: Tabla de dominios y simbolog a.

7.2.

Gram atica y Sem antica.

Denici on 7.2.1. Una vez denidas las palabras de lenguaje computacional es posible construir oraciones a las que llamaremos instrucciones de programa.

7.2.1.

Declaraci on de Variables

En esta secci on se indica la gram atica para formar oraciones que indican la declaraci on de una variable. Recordemos las tablas estudiadas en el cap tulo de teor a de conjuntos: En la tabla 7.1 se muestra la relaci on de dominios en matem aticas con su nombre en ingl es y su representaci on abreviada simb olica. En la tabla 7.2 se relaciona el nombre del dominio, con su simbolog a y los elementos que estos conjuntos y dominios representan. En la tabla 7.3 se relacionan los nombres de dominios, con el tipo de dato que se utiliza en un lenguaje computacional de programaci on estructurado, as como su simbolog a en matem aticas. Siempre que querramos utilizar una nueva variable en un programa de computaci on debemos indicarle a la m aquina el nombre de la variable y tambi en su dominio, de tal forma que pueda estructurar internamente su memoria para su administraci on y c omputo del programa que estamos escribiendo.

ESTRUCTURADO 54CAP ITULO 7. LENGUAJE DE PROGRAMACION

Nombre Conjunto Signicado Naturales N = {0, 1, 2, 3, . . .} Enteros Z = {0, 1, 1, 2, 2, 3, 3, . . .} Racionales Q = {todo a/b con a, b Z} Enteros Positivos Z + = {0, 1, 2, 3, . . .} Enteros Negativos Z = Z Z+ Reales R = Q {decimales / Q} Reales Positivos R+ = {n R n 0} Reales Negativos R = {n R n 0} Caracteres es conjunto nito de letras y s mbolos. Palabras conjunto de toda posible concatenaci on con elementos de Binario 2 = {0, 1} o 2 = {true, f alse} Cuadro 7.2: Tabla de signicado de dominios.

Dominio N umeros Naturales N umeros Racionales N umeros Enteros N umeros Enteros Positivos N umeros Enteros Negativos N umeros Reales N umeros Reales Positivos N umeros Reales Negativos Caracteres Palabras Binario

Nombres computacionales uint, ulong double, oat byte, short, int, long, integer unsigned int, unsigned long int, long oat, double oat, double oat, double char, character char[], String boolean or bool

Simbolog a Matem atica N Q Z Z+ Z R R+ R 2

Cuadro 7.3: Tabla de dominios computacionales y simbolog a.

7.2. GRAMATICA Y SEMANTICA. Notaci on 7.2.2. El formato para declarar una variable es el siguiente: dominio o bien: dominio nombreV ariable = valorInstancia; nombreV ariable;

55

donde dominio es el dominio de posibles valores que pueden ser asignados a la variable con nombre nombreV ariable y valorInstancia es un elemento en el dominio dominio. Note que en el segundo caso la asignaci on se da de derecha a izquierda, es decir valorInstancia se asigna a la variable nombreV ariable, esto tambi en se denota en algoritmos como nombreV ariable valorInstancia. Note tambi en que el s mbolo = en programaci on no signica igualdad como se entiende en aritm etica o algebra, sino la asignaci on es un signicado distinto en una s ola direcci on mientras que la igualdad es en ambas direcciones. Ejemplo 7.2.3. Los siguientes son ejemplos de oraciones de declaraci on de variables: 1. int 2. int 3. long 4. long 5. char 6. char 7. char[] 8. char[] 9. String 10. String 11. f loat 12. f loat x; numeroEstudiantes; x; numeroEstudiantes; y; letra; z; nombreEmpleado; z; nombreEmpleado; w; descuento;

ESTRUCTURADO 56CAP ITULO 7. LENGUAJE DE PROGRAMACION 13. double 14. double 15. boolean 16. boolean w; descuento; a; elementoEnAEncontrado;

Los siguientes son ejemplos de oraciones de declaraci on de variables con asignaci on: 1. int 2. int 3. long 4. long 5. char 6. char 7. char 8. char[] 9. char[] 10. String 11. String 12. f loat 13. f loat 14. double 15. double 16. boolean 17. boolean x = 350; numeroEstudiantes = 350; x = 33; numeroEstudiantes = 33; y= g; simbolo = & ; letra = F ; z = M arcus Aurelius ; Aurelius ;

nombreEmpleado = M arcus z = Santiago Jacobo ;

nombreEmpleado = Santiago w = 33,89f ; descuento = 33,89f ; w = 75,50d; descuento = 75,50d; a = f alse;

Jacobo ;

elementoEnAEncontrado = f alse;

7.2. GRAMATICA Y SEMANTICA.

57

Los siguientes son ejemplos de oraciones incorrectas de declaraci on de variables con asignaci on: 1. int 2. int 3. long 4. long 5. char 6. char 7. char[] 8. char[] 9. String 10. String 11. f loat 12. f loat 13. double 14. double 15. boolean 16. boolean x= B; numeroEstudiantes = Juan x = Hola mundo ; P edro ;

numeroEstudiantes = F ; y = 34,0f ; letra = 45,34f ; z = 144000; nombreEmpleado = 33,45f ; z = G; nombreEmpleado = 0; w = Guadalupe ; descuento = & ; w= r; descuento = casa ; a = 33; elementoEnAEncontrado = 26;

Note que es posible asignar cualquier nombre de variable a una variable, sin embargo por convenci on se pide que tenga un nombre lo sucientemente representativo de lo que modela en la realidad la variable, por ejemplo es diferente leer la variable x que numeroEstudiante, el programador cuando deba dar mantenimiento al c odigo despu es de dejar de leerlo en unas semanas muy dif cilmente recordar a que el s mbolo x signica numero de estudiante, no as si la variable se llama numeroEstudiante. Por convenci on si es necesario utilizar mas de una palabra para el nombre de variable, las palabras

ESTRUCTURADO 58CAP ITULO 7. LENGUAJE DE PROGRAMACION deber an ir en min usculas, excepto las iniciales de cada palabra a partir de la segunda palabra, en este sentido es correcto numeroEstudiantes pero no numeroestudiantes o N U M EROEST U DIAN T ES , estandares anteriores utilizaban la separaci on de palabras por medio de gui on bajo, es v alido usarlo, aunque ya no se utiliza, siempre y cuando se mantenga este estandard en todo el c odigo.

7.2.2.

Selecci on de Dominio para denici on de variable.

Cuando se declara o dene una variable con la cual se va a trabajar en lenguaje de programaci on se debe pensar en la relaci on dominios y nombres computacionales mostrados en la tabla 7.3. Si observa hay distintos tipos de datos para un mismo dominio, por ejemplo para el dominio de los enteros se puede representar con el nombre int o long o incluso BigInteger, la diferencia entre estos tipos de datos es el n umero de bytes reservados para cada tipo de dato. El n umero de bytes reservado para un tipo de dato es relevante ya que nos indica la cantidad m axima de valores que podemos representar con ese tipo de dato. Aunque los dominios matem aticos por lo regular se manejan como dominios innitos, la computadora s olo tiene capacidad de representar dominios nitos, por lo tanto mientras m as bytes reserve el tipo de datos m as grande ser a el conjunto de valores del dominio que se pueden representar con la variable que denimos. Nota 7.2.4. Es importante saber que un n umero real o n umero racional no son representables de manera exacta por medio de la computadora debido a la limitante de bytes reservardos para el tipo de dato. Esto quiere decir que mientras se realizan operaciones con tipos de dato double, o oat, se va perdiendo mayor precisi on de manera progresiva a lo cual se llama margen de error. El margen de error es muy importante en aplicaciones donde la precis on es importante, por ejemplo en la NASA los primeros intentos de enviar objetos al espacio exterior fracasaron por no tener conciencia de esta propagaci on de errores. Para comprender a mayor profundidad estos efectos es necesario estudiar el area de m etodos numericos. Para tomar la decisi on sobre el tipo de dato a escoger es necesario pensar antes en el rango de n umeros que nuestro programa necesitar a manejar y que no exceda los valores representables por tama no de bytes para el tipo de dato.

7.2. GRAMATICA Y SEMANTICA.

59

Dominio N umeros Naturales N umeros Naturales N umeros Racionales N umeros Racionales N umeros Enteros N umeros Enteros N umeros Enteros Positivos N umeros Enteros Positivos N umeros Reales N umeros Reales Caracteres Palabras Binario

Nombres computacional N umero Bytes N umero de valores unsigned int 4 232 1 unsigned long 8 264 1 oat 4 232 1 double 8 264 1 int 4 232 1 long 8 264 1 unsigned int 4 232 1 unsigned long 8 264 1 oat 4 232 1 double 8 264 1 char 2 256 char[], String 2n variable boolean, bool 1 2

Cuadro 7.4: Tabla de dominios computacionales y simbolog a.

Dominio byte short int long oat double char char[], String boolean, bool

Bytes 1 2 4 8 4 8 2 2n 1

Valores 28 216 232 1 264 1 232 1 264 1 216 variable 2

Valor M aximo Valor M nimo 128 127 32768 32767 2147483648 2147483647 9223372036854775808 9223372036854775807 revisar 32-bit IEEE revisar 32-bit IEEE 754 oating point standard 754 oating point standard revisar 64-bit IEEE revisar 64-bit IEEE 754 oating point standard 754 oating point standard 0 65, 535 f alse true

Cuadro 7.5: Tabla de dominios computacionales y simbolog a.

ESTRUCTURADO 60CAP ITULO 7. LENGUAJE DE PROGRAMACION D d4 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 C d3 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 B d2 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 A d1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

N umero decimal Potencia de 2 0 20 1 21 1 2 21 3 22 1 4 22 5 6 7 23 1 8 23 9 10 11 12 13 14 15 24 1

Cuadro 7.6: Tabla de n` umeros binarios. Propiedades 7.2.5. En la tabla 7.6 se muestra que con 4 bits se puede representar hasta el n umero 24 1, con 3 bits se puede representar hasta el n umero 23 1, con 2 bits hasta el n umero 22 1, en particular se puede generalizar si se tienen n bits, se puede representar los n umeros del 0 al n n 2 1, es decir un total de 2 distintos valores.

7.2.3.

Bloque de C odigo.

Denici on 7.2.6. Se llama bloque de c odigo a una secuencia de oraciones (instrucciones) delimitadas por par entesis. Asemeja a un conjunto de instrucciones pero sin ser conjunto pues importa el orden de la secuencia de instrucciones. Un bloque de c odigo incia cuando se escribe el s mbolo { y termina cuando se escribe el s mbolo }, esto es todo bloque de c odigo se delimita por llaves, siguiendo la misma metodolog a para agrupar por par entesis en aritm etica, esto es pueden haber bloques de c odigo internos a otro bloque

7.2. GRAMATICA Y SEMANTICA.

61

(anidamiento), sin embargo deben emparejarse de adentro hacia afuera cada llave que abre, con la primera instancia que se encuentre que cierra. Algoritmo 7.2.7. La manera de validar e identicar si un bloque de c odigo es v alido y a que n umero de bloque de c odigo pertenece la llave se siguen los siguientes pasos: 1. numeroBloque 1. 2. Cons umanse e ignore caracteres hasta encontrar una llave, si se han consumido todos los caracteres y no hay mas llaves pase al paso 3. a) Si la llave es { apilar en pila P una tupla con el siguiente formato < {, r, c > donde { es la llave que abre, r el n umero de rengl on donde est a escrita y c el n umero de la columna donde esta escrita. b) Si la llave es } formar la tupla tcierre =<}, rcierre , ccierre >, y quitar de la pila P la tupla de la cabeza tabre =< {, rabre , cabre >. Entonces la llave correspondiente a tabre y la llave correspondiente a tcierre forman el bloque con n umero numeroBloque; incremente numeroBloque en una unidad, esto es numeroBloque numeroBloque + 1. Regrese al paso 2. 3. Si la pila P no esta vac a entonces los bloques no son v alidos, hay un error en la construcci on de ellos; Si la pila P esta vac a entonces los bloques son v alidos. Ejemplo 7.2.8. Los siguientes son ejemplos de bloques de c odigo: Ejemplo 1 { // inicio de bloque de codigo #1 } // fin inicio de bloque de codigo #1

ESTRUCTURADO 62CAP ITULO 7. LENGUAJE DE PROGRAMACION Ejemplo 2 { // inicio de bloque de codigo #2 int numeroEmpleado = 1; char letra = A; { // inicio de bloque de codigo #1

} // fin de bloque de codigo #1 } // fin de bloque de codigo #2 Ejemplo 3 { // inicio de bloque de codigo #2 int numeroEmpleado = 1; char letra = A; { // inicio de bloque de codigo #1 String nombre = "N/A"; double descuento = 49.99f; } // fin de bloque de codigo #1 } // fin de bloque de codigo #2

7.2. GRAMATICA Y SEMANTICA. Ejemplo 4 { // inicio de bloque de codigo #3 int numeroEmpleado = 1; char letra = A; { // inicio de bloque de codigo #1 String nombre = "N/A"; double descuento = 49.99f; } // fin de bloque de codigo #1 boolean esElementoAenB = false; int i =0; { // inicio de bloque de codigo #2 int j = 100; int suma = 0; } // fin de bloque de codigo #2 } // fin de bloque de codigo #3

63

ESTRUCTURADO 64CAP ITULO 7. LENGUAJE DE PROGRAMACION Ejemplo 5 { // inicio de bloque de codigo #4 int numeroEmpleado = 1; char letra = A; { // inicio de bloque de codigo #1 String nombre = "N/A"; double descuento = 49.99f; } // fin de bloque de codigo #1 boolean esElementoAenB = false; int i =0; { // inicio de bloque de codigo #3 int j = 100; int suma = 0; { // inicio de bloque de codigo #2 int k = 1000; int producto = 1; } // fin de bloque de codigo #2 } // fin de bloque de codigo #3 } // fin de bloque de codigo #4 Notaci on 7.2.9. Note porfavor que siempre que se inicia un bloque de c odigo dentro de otro, se deja una sangr a para las nuevas llaver a partir del bloque de c odigo padre, y las intrucciones dentro del bloque interno tendr an doble sangr a, la raz on es que esto permite la f acil lectura y comprensi on del c odigo pues as se conoce que parte esta dentro de que parte.

7.2.4.

Alcance (Scope) de Variables.

Denici on 7.2.10. Se llama alcance o scope de una variable, a la validez de la variable desde que se dene hasta que se termina el bloque de c odigo en el cual se deni o, si hay bloques internos despu es de la denici on esta variable tambi en sera v alida dentro de estos bloques. Ejemplo 7.2.11. Los siguientes son ejemplos de bloques de c odigo:

7.2. GRAMATICA Y SEMANTICA.

65

1 int x ; 2 { // i n i c i o de b l o q u e de c o d i g o #1 3 int y ; 4 } // f i n i n i c i o de b l o q u e de c o d i g o #1 Listing 7.1 : C odigo 1.

En el ejemplo anterior la variable


1 { // i n i c i o de b l o q u e de c o d i g o #2 2 i n t numeroEmpleado = 1 ; 3 char l e t r a = A ; 4 { // i n i c i o de b l o q u e de c o d i g o #1 5 6 7 } // f i n de b l o q u e de c o d i g o #1 8 } // f i n de b l o q u e de c o d i g o #2 Listing 7.2 : C odigo 2. 1 2 { // i n i c i o de b l o q u e de c o d i g o #2 3 i n t numeroEmpleado = 1 ; 4 char l e t r a = A ; 5 { // i n i c i o de b l o q u e de c o d i g o #1 6 S t r i n g nombre = N/A ; 7 double d e s c u e n t o = 4 9 . 9 9 f ; 8 9 } // f i n de b l o q u e de c o d i g o #1 10 } // f i n de b l o q u e de c o d i g o #2 Listing 7.3 : C odigo 3. 1 2 { // i n i c i o de b l o q u e de c o d i g o #3 3 i n t numeroEmpleado = 1 ; 4 char l e t r a = A ; 5 { // i n i c i o de b l o q u e de c o d i g o #1 6 S t r i n g nombre = N/A ; 7 double d e s c u e n t o = 4 9 . 9 9 f ; 8 9 } // f i n de b l o q u e de c o d i g o #1 10 11 b o o l e a n esElementoAenB = f a l s e ;

ESTRUCTURADO 66CAP ITULO 7. LENGUAJE DE PROGRAMACION


12 i n t i =0; 13 { // i n i c i o de b l o q u e de c o d i g o #2 14 int j = 100; 15 i n t suma = 0 ; 16 17 } // f i n de b l o q u e de c o d i g o #2 18 } // f i n de b l o q u e de c o d i g o #3 Listing 7.4 : C odigo 4. 1 2 { // i n i c i o de b l o q u e de c o d i g o #4 3 i n t numeroEmpleado = 1 ; 4 char l e t r a = A ; 5 { // i n i c i o de b l o q u e de c o d i g o #1 6 S t r i n g nombre = N/A ; 7 double d e s c u e n t o = 4 9 . 9 9 f ; 8 9 } // f i n de b l o q u e de c o d i g o #1 10 11 b o o l e a n esElementoAenB = f a l s e ; 12 i n t i =0; 13 { // i n i c i o de b l o q u e de c o d i g o #3 14 int j = 100; 15 i n t suma = 0 ; 16 { // i n i c i o de b l o q u e de c o d i g o #2 17 int k = 1000; 18 int producto = 1; 19 20 } // f i n de b l o q u e de c o d i g o #2 21 } // f i n de b l o q u e de c o d i g o #3 22 } // f i n de b l o q u e de c o d i g o #4 Listing 7.5 : C odigo 5.

7.2.5.

Expresi on Aritm etica

Una expresi on aritm etica nos permitir a realizar operaciones aritm eticas combinando variables num ericas, operadores aritm eticos y constantes num ericas, el interprete del lenguaje procesara estas expresiones sustituyendo las variables por sus valores num ericos para poder computar el resultado de la expresi on.

7.2. GRAMATICA Y SEMANTICA.

67

Denici on 7.2.12. El conjunto de expresiones aritm eticas denotado por EA se construye por la siguiente denici on inductiva: 1. Si es una constante num erica, entonces EA. 2. Si es una variable num erica, entonces EA. 3. Si , EA, entonces: + EA. EA. EA. / EA. % EA. & EA. | EA. >> EA. << EA. () EA. Nota 7.2.13. Note que y nada tiene que ver con las variables que denimos para el lenguaje computacional, sino que m as bien son variables que se utilizan en nuestro lenguaje com un y corriente, se encuentran en un nivel de lenguaje m as alto, es decir representan variables usando nuestro lenguaje com un para construir, describir y estudiar otro lenguaje, en este caso el lenguaje computacional estructurado. A este lenguaje para describir lenguajes se le llama metalenguaje. Por ejemplo en un dvd de pel cula hay un lenguaje con el cual se realiza el di alogo entre dos protagonistas, sin embargo se puede activar los comentarios del director de la pelicula que explica y discute m as a profundidad las razones de los personajes, experiencias y el di alogo entre ellos, el lenguaje que utiliza el director se llama metalenguaje. En la denici on y construcci on del conjunto de expresiones aritm eticas EA en la primera parte se toman todas las constantes num ericas y se incluyen como elementos de EA, en la segunda parte se toman todas las variables num ericas y se incluyen como elementos de EA, hasta aqu es la construcci on

ESTRUCTURADO 68CAP ITULO 7. LENGUAJE DE PROGRAMACION b asica. Posteriormente en la construcci on inductiva en la parte tres, se toman cualesquiera dos elementos que pertenezcan ya en AE y se combinan con un operador aritm etico +, , /, , . . . una vez combinadas se incluye como elemento del conjunto AE , expresi on que ser a combinado mediante un operador y otro elmento de EA. Como se puede observar este conjunto es innito, ya que es una propiedad de todo conjunto representar elementos de la realidad, se puede cambiar la denici on para construir solo expresiones aritm eticas hasta cierta longitud, ya que en programaci on dif cilmente se escribir a una expresi on aritm etica de m as de 5 l neas de 180 caracteres cada una. Ejemplo 7.2.14. Los siguientes son ejemplos de expresiones aritm eticas elementos del conjunto EA: 1. x. 2. y . 3. 7. 4. 33. 5. 200. 6. 3,1478f . 7. 0,07. 8. x + y . 9. (x + y ). 10. (x + y ) 33. 11. 33 y . 12. x/(x + y ). 13. 33 %7. 14. (x + y )&(33 %7). 15. ((x + y ) 33)|(33 y ).

7.2. GRAMATICA Y SEMANTICA. S mbolo de operador Nombre operador + suma diferencia multiplicaci on / divisi on % m odulo & and binario | or binario << shift (corrimiento) izquierdo >> shift (corrimiento ) derecho Cuadro 7.7: Tabla de operadores aritm eticos y sus nombres 16. (33 y ) >> 7. 17. (x + y ) << y . Los nombres para los operadores aritm eticos se dan en la tabla 7.7. OPERADOR DE MODULO.

69

Denici on 7.2.15. Al operador % se llama m odulo y sirve para representar la manera de calcular el residuo entre dos n umeros. Su formato es el siguiente: n1 %n2 Donde n1 y n2 son n umeros o variables de tipo entero y n1 %n2 representa la obtenci on del residuo de dividir n1 entre n2 . Ejemplo 7.2.16. Los siguientes son ejemplos del uso del operador %: 7 %3 es el residuo de dividir 7 entre 3 cuyo valor es 1. 23 %7 es el residuo de dividir 23 entre 7 cuyo valor es 2. 64 %10 es el residuo de dividir 64 entre 10 cuyo valor es 4.

ESTRUCTURADO 70CAP ITULO 7. LENGUAJE DE PROGRAMACION n %2 0 %2 = 0 1 %2 = 1 2 %2 = 0 3 %2 = 1 4 %2 = 0 5 %2 = 1 6 %2 = 0 7 %2 = 1 8 %2 = 0 9 %2 = 1 10 %2 = 0 n %3 n %4 0 %3 = 0 0 %4 = 0 1 %3 = 1 1 %4 = 1 2 %3 = 2 2 %4 = 2 3 %3 = 0 3 %4 = 3 4 %3 = 1 4 %4 = 0 5 %3 = 2 5 %4 = 1 6 %3 = 0 6 %4 = 2 7 %3 = 1 7 %4 = 3 8 %3 = 2 8 %4 = 0 9 %3 = 0 9 %4 = 1 10 %3 = 1 10 %4 = 2 n %5 0 %5 = 0 1 %5 = 1 2 %5 = 2 3 %5 = 3 4 %5 = 4 5 %5 = 0 6 %5 = 1 7 %5 = 2 8 %5 = 3 9 %5 = 4 10 %5 = 0

Cuadro 7.8: Tabla por columnas de distintos m odulos Denici on 7.2.17. La divisi on entre dos n umeros enteros n y m se denota por n/m, se lee divisi on del n umero n entre m, o el n umero n divido entre m. A n se le llama dividendo y a m se le llama divisor. Al resultado de la divisi on cociente, es decir si n/m = c entonces c es cociente. En particular la divisi on cumple la siguiente propiedad matem atica n = m c + r, que signica cuando se dividen n entre m en realidad estamos preguntando cuantas veces cabe m en n a este n umero de veces c le llamamos cociente y al resto r residuo. Propiedades 7.2.18. En la tabla 7.8 se muestra por columna el mismo divisor para n umeros dividendos del 0 al 10 y se observan las siguientes propiedades: 1. Si se observa cada columna el m odulo con un divisor constante es c clico. 2. El m odulo con un divisor constante m para cualquier dividendo n, esto es n %m genera residuos cuyos valores van de 0 a m 1. En la siguiente denici on se utilizan los t erminos divide o bien divisor, estos t erminos son distintos a las partes de una divisi on, sino m as bien se reeren al resultado de la divisi on, para entender cuando se reere a parte de una divisi on o bien al resultado de la divisi on es necesario entender el contexto del problema expresado.

7.2. GRAMATICA Y SEMANTICA.

71

Denici on 7.2.19. Siendo n, m n umeros enteros, se dice que n divide a m, o bien que n es divisor de m, o bien m es divisible entre n, cuando m %n = 0, es decir el residuo de dividir m entre n es cero. Denici on 7.2.20. Se dice que un n umero entero es par si n %2 = 0. Denici on 7.2.21. Se dice que un n umero entero es non si n %2 = 1. Denici on 7.2.22. Se dice que un n umero entero p es primo si s olo es divisible entre 1 y p. Denici on 7.2.23. Se llama factorizaci on a la representaci on de un n umero natural n en forma de multiplicaciones entre n umeros primos. Denici on 7.2.24. Se denie el m nimo com un m ultiplo (abreviado MCM), de dos o m as n umeros naturales es el menor n umero natural que es m ultiplo de todos ellos. Dentro de las aplicaciones para el m nimo com un m ultiplo se encuentra el poder calcular operaciones con fracciones. Denici on 7.2.25. Se dene el m aximo com un divisor (abreviado MCD) de dos o m as n umeros enteros al mayor n umero que los divide sin dejar resto. Dentro de las aplicaciones para el m aximo com un divisor se encuentran la simplicaci on de fracciones. OPERADORES SHIFT IZQUIERDO. Notaci on 7.2.26. El operador shift izquierdo se denota por el s mbolo << y tiene el siguiente formato: n1 << n2 Donde n1 y n2 son n umeros enteros, n2 es un n umero entero positivo. La instrucci on n1 << n2 singnica que se tomar a al n umero n1 decimal y se convertir a a representaci on binaria, una vez en representaci on binaria el n umero se recorrer a n2 bits a la izquierda, dejando en los nuevos lugares (d gitos) a la derecha el valor de bit 0. El resultado de la instrucci on ser a la conversi on de este nuevo n umero binario a su representaci on decimal. Ejemplo 7.2.27. Si queremos calcular el resultado de la siguiente expresi on:

ESTRUCTURADO 72CAP ITULO 7. LENGUAJE DE PROGRAMACION 6 << 3 Tomaremos el n umero 6 convirti endolo a representaci on binaria viendo la talbla 7.9 tenemos: d8 d7 d6 d5 d4 d3 d2 d1 0 0 0 0 0 1 1 0 Recorriendo el n umero binario 3 bits a la izquierda tenemos: d8 d7 d6 d5 d4 d3 d2 d1 0 0 1 1 0 0 0 0 Este nuevo n umero en representaci on decimal es 48, ya que: 0 1 2 1100002 = (0)(2 ) + (0)(2 ) + (0)(2 ) + (0)(23 ) + (1)(24 ) + (1)(25 ) = 4810 . por lo tanto el resultado de calcular 6 << 3 es 48. Ejemplo 7.2.28. Si queremos calcular el resultado de la siguiente expresi on: 15 << 4 Tomaremos el n umero 15 convirti endolo a representaci on binaria viendo la talbla 7.9 tenemos: d8 d7 d6 d5 d4 d3 d2 d1 0 0 0 0 1 1 1 1 Recorriendo el n umero binario 4 bits a la izquierda tenemos: d8 d7 d6 d5 d4 d3 d2 d1 1 1 1 1 0 0 0 0 Este nuevo n umero en representaci on decimal es 240, ya que: 0 1 2 1100002 = (0)(2 ) + (0)(2 ) + (0)(2 ) + (0)(23 ) + (1)(24 ) + (1)(25 ) + (1)(26 ) + (1)(27 ) = 24010 . por lo tanto el resultado de calcular 15 << 4 es 240. Nota 7.2.29. Observe en particular que n << 1 es decir hacer un corrimiento a la izquierda es equivalente a tomar el n umero n en representaci on binaria y multiplicarla por 102 , pero 102 es el n umero 2, por lo tanto n << 1 es equivalente a n 2. Por lo tanto n << m es lo mismo que n(2m ). Ejemplo 7.2.30. As f acilmente podemos calcular por ejemplo: 1. 1234 << 13 es 1234(213 ) = 10108928 2. 9876 << 7 es 9876(27 ) = 1264128 3. 45 << 20 es 45(220 ) = 47185920

7.2. GRAMATICA Y SEMANTICA. OPERADORES SHIFT DERECHO.

73

Notaci on 7.2.31. El operador shift derecho se denota por el s mbolo >> y tiene el siguiente formato: n1 >> n2 Donde n1 y n2 son n umeros enteros, n2 es un n umero entero positivo. La instrucci on n1 >> n2 singnica que se tomar a al n umero n1 decimal y se convertir a a representaci on binaria, una vez en representaci on binaria el n umero se recorrer a n2 bits a la derecha, es decir se descartan los u ltimos n2 d gitos del n umero n1 representado en binario. El resultado de la instrucci on ser a la conversi on de este nuevo n umero binario a su representaci on decimal. Ejemplo 7.2.32. Si queremos calcular el resultado de la siguiente expresi on: 48 >> 3 Tomaremos el n umero 48 convirti endolo a representaci on binaria viendo la tabla 7.9 tenemos: d8 d7 d6 d5 d4 d3 d2 d1 0 0 1 1 0 0 0 0 Recorriendo el n umero binario 2 bits a la derecha tenemos: d8 d7 d6 d5 d4 d3 d2 d1 0 0 0 0 0 1 1 0 Este nuevo n umero en representaci on decimal es 6. Por lo tanto el resultado de calcular 48 >> 3 es 6. Ejemplo 7.2.33. Si queremos calcular el resultado de la siguiente expresi on: 240 >> 4 Tomaremos el n umero 240 convirti endolo a representaci on binaria viendo la tabla 7.9 tenemos: d8 d7 d6 d5 d4 d3 d2 d1 1 1 1 1 0 0 0 0 Recorriendo el n umero binario 4 bits a la derecha tenemos: d8 d7 d6 d5 d4 d3 d2 d1 0 0 0 0 1 1 1 1 Este nuevo n umero en representaci on decimal es 15. Por lo tanto el resultado de calcular 240 >> 4 es 15.

ESTRUCTURADO 74CAP ITULO 7. LENGUAJE DE PROGRAMACION Nota 7.2.34. Observe en particular que n >> 1 es decir hacer un corrimiento a la izquierda es equivalente a tomar el n umero n en representaci on binaria y dividirla por 102 , pero 102 es el n umero 2, por lo tanto n << 1 es equivalente a n/2 . Recuerde que cuando escribimos x si x tiene parte decimar equivale a quedarse s olo con la parte entera quitando los decimales, sin redondeo. Por lo tanto n >> m es lo mismo que n/2m . Ejemplo 7.2.35. As f acilmente podemos calcular por ejemplo: 1. 10108928 >> 13 es 10108928/213 = 1234 2. 1264128 >> 7 es 1264128/27 = 9876 3. 47185920 >> 20 es 47185920/220 = 45 OPERADOR AND BINARIO. Notaci on 7.2.36. El operador and izquierdo se denota por el s mbolo & y tiene el siguiente formato: n1 &n2 Donde n1 y n2 son n umeros enteros. La instrucci on n1 &n2 singnica que se tomar an los n umero n1 y n2 decimal y se convertir an a representaci on binaria, una vez en representaci on binaria, se realizar a un and l ogico entre pares de bits de ambos n umeros n1 , n2 , en mismas posiciones de d gitos, siendo el resultado un nuevo bit que conforma parte de un nuevo n umero en la misma posici on de d gito. El n umero resultante de la operaci on ser a la conversi on de este nuevo n umero binario a su representaci on decimal. Ejemplo 7.2.37. Si queremos calcular el resultado de la siguiente expresi on: 240&24 Tomaremos el n umero 240 convirti endolo a representaci on binaria viendo la talbla 7.9 tenemos: a8 a7 a6 a5 a4 a3 a2 a1 1 1 1 1 0 0 0 0 Tomaremos el n umero 24 convirti endolo a representaci on binaria viendo la tabla 7.9 tenemos:

7.2. GRAMATICA Y SEMANTICA. b8 b7 b6 b5 b4 b3 b 2 b1 0 0 0 1 1 0 0 0 Realizando el and l ogico d gito a d gito entre 240 y 24 tenemos: a8 b 8 a7 b 7 a6 b 6 a5 b 5 a4 b 4 a3 b 3 a2 b 2 a1 b 1 0 0 0 1 0 0 0 0 Este nuevo n umero en representaci on decimal es 16. por lo tanto el resultado de calcular 240&24 es 16.

75

Ejemplo 7.2.38. Si queremos calcular el resultado de la siguiente expresi on: 108&15 Tomaremos el n umero 108 convirti endolo a representaci on binaria viendo la tabla 7.9 tenemos: a8 a7 a6 a5 a4 a3 a2 a1 0 1 1 0 1 1 0 0 Tomaremos el n umero 15 convirti endolo a representaci on binaria viendo la tabla 7.9 tenemos: b8 b7 b6 b5 b4 b3 b 2 b1 0 0 0 0 1 1 1 1 Realizando and l ogico por posiciones de d gito binario entre 108 y 15 tenemos: a8 b 8 a7 b 7 a6 b 6 a5 b 5 a4 b 4 a3 b 3 0 0 0 0 1 1 Este nuevo n umero en representaci on decimal es 12. por lo tanto el resultado de calcular 108&15 es 12. a2 b 2 0 a1 b 1 0

Nota 7.2.39. El operador de and binario se utiliza en programaci on de redes o criptograf a, as como en el manejo de im agenes. Su utilidad radica en que es posible hacer una secuencia de bits en un n umero n1 lo cual nos dena un segmento de bits que al realizar un and binario con otro n umero n2 nos permita rescatar el mismo segmento de n2 en el resultado. Propiedades 7.2.40. El and binario nos permite vericar por ejemplo r apidamente si un n umero n es par o no. Basta vericar el resultado de realizar la operaci on 1&n, lo cual rescata el u ltimo bit del n umero n, si 1&n es el bit 0 entonces n es par, si es el bit 1 entonces n es non.

ESTRUCTURADO 76CAP ITULO 7. LENGUAJE DE PROGRAMACION OPERADOR OR BINARIO. Notaci on 7.2.41. El operador or binario se denota por el s mbolo | y tiene el siguiente formato: n1 |n2 Donde n1 y n2 son n umeros enteros. La instrucci on n1 |n2 singnica que se tomar an los n umero n1 y n2 decimal y se convertir an a representaci on binaria, una vez en representaci on binaria, se realizar a un or l ogico entre pares de bits de ambos n umeros n1 , n2 , en mismas posiciones de d gitos, siendo el resultado un nuevo bit que conforma parte de un nuevo n umero en la misma posici on de d gito. El n umero resultante de la operaci on ser a la conversi on de este nuevo n umero binario a su representaci on decimal. Ejemplo 7.2.42. Si queremos calcular el resultado de la siguiente expresi on: 240|24 Tomaremos el n umero 240 convirti endolo a representaci on binaria viendo la talbla 7.9 tenemos: a8 a7 a6 a5 a4 a3 a2 a1 1 1 1 1 0 0 0 0 Tomaremos el n umero 24 convirti endolo a representaci on binaria viendo la tabla 7.9 tenemos: b8 b 7 b6 b5 b4 b3 b2 b1 0 0 0 1 1 0 0 0 Realizando el and l ogico d gito a d gito entre 240 y 24 tenemos: a8 b8 a7 b7 a6 b6 a5 b5 a4 b4 a3 b3 a2 b2 a1 b1 1 1 1 1 1 0 0 0 Este nuevo n umero en representaci on decimal es 248. por lo tanto el resultado de calcular 240|24 es 248. Ejemplo 7.2.43. Si queremos calcular el resultado de la siguiente expresi on: 108|15 Tomaremos el n umero 108 convirti endolo a representaci on binaria viendo la tabla 7.9 tenemos:

7.2. GRAMATICA Y SEMANTICA.

77

a8 a7 a6 a5 a4 a3 a2 a1 0 1 1 0 1 1 0 0 Tomaremos el n umero 15 convirti endolo a representaci on binaria viendo la tabla 7.9 tenemos: b8 b7 b6 b5 b4 b3 b 2 b1 0 0 0 0 1 1 1 1 Realizando and l ogico por posiciones de d gito binario entre 108 y 15 tenemos: a8 b 8 a7 b 7 a6 b 6 a5 b 5 a4 b 4 a3 b 3 a2 b 2 0 1 1 0 1 1 1 Este nuevo n umero en representaci on decimal es 111. por lo tanto el resultado de calcular 108|15 es 111. a1 b 1 1

Nota 7.2.44. El operador or binario se aplica en redes, criptograf a, manipulaci on de im agenes por ejemplo.

ESTRUCTURADO 78CAP ITULO 7. LENGUAJE DE PROGRAMACION

D d4 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

C d3 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

B d2 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

A d1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

N umero decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Cuadro 7.9: Tabla de n` umeros binarios.

Bibliograf a
[1] M. A. Altieri. Agroecology: the science of natural resource management for poor farmers in marginal enviromnments. Agriculture, Ecosystems and Environment, 1(1-2):124, 2002. [2] G. Brewka, I. Niemel a, and T. Syrj anen. Logic Programs with Ordered Disjunction. Computational Intelligence, 20(2):333357, 2004. [3] R. Confalonieri, J. C. Nieves, M. Osorio, and J. V azquez. Possibilistic semantics for logic programs with ordered disjunction. In FoIKS, pages 133152, 2010. [4] C. V. de Comercializacion Agropecuaria. Monograa del maiz. Monograa, Gobierno del Estado de Veracruz, January 2008. [5] E. Garc a, J. L. Herrera, H. C. Salazar, and et. al. Proyecto Maestro de Maices Mexicanos PMMM, 2009. http://www.pmmm.com.mx/. CNPAMM, MONSANTO, Gobierno del Estado de Puebla, Cinvestav, CEDRSSA. [6] H. Garc a-Nieto, O. J. Garc a-Silva, C. Ortiz-Trejo, R. de Jes us Barajas, and G. S anchez-Altamirano. Sistema de Consulta del Potencial Agroproductivo del Estado de Puebla, 2002. December, 2002. INIFAP and FUPPUE and SDR. [7] M. Gelfond and V. Lifschitz. The stable model semantics for logic programming. In R. Kowalski and K. Bowen, editors, 5th Conference on Logic Programming, pages 10701080. MIT Press, 1988. [8] M. Hall, E. Frank, G. Holmes, B. Pfahringer, P. Reutemann, and I. H. Witten. The weka data mining software: an update. SIGKDD Explor. Newsl., 11(1):1018, 2009. 79

80

BIBLIOGRAF IA

[9] J. F. M. Helming. A model of dutch agriculture based on positive mathematical programming with regional and environmental applications., 2005. PhD Thesis. [10] J. W. Lloyd. Foundations of logic programming. Springer-Verlag New York, 1987. [11] W. Lopez-Baez, A. Lopez-Luna, B. Couti no-Estrada, R. CamasGomez, B. Villar-Sanchez, J. Lopez-Martinez, V. Serrano-Altamirano, A. Zamarripa-Moran, P. Cadena-I niguez, and C. Sandoval-Morado. Sistema de Zonas Potenciales y Recomendaciones tecnicas para la Produccion Sustentable de Maiz en el estado de Chiapas, Mexico, 2007. INIFAP and Fundacion Produce Chiapas, A. C. [12] J. R. Quinlan. C4.5: Programs for Machine Learning. Morgan Kaufmann, San Mateo, CA, 1993. [13] G. Reyes, J. Guerra, and G. Calder on. Condiciones de cultivo del ma z criollo en comunidades de puebla, tlaxcala e hidalgo: Un an alisis de las economias de autoconsumo. In BUAP, editor, Aportes, volume 10, pages 6382. Benemerita Universidad Aut onoma de Puebla, Puebla, Mexico, rst edition, May 2005. [14] SAGARPA. Base de datos VIOCS-Puebla Estructuras de costo de produccion agricolas 2005-2007, 2007. OIEDRUS. http://www. oeidrus-puebla.gob.mx/. [15] A. G. S anchez. Using data mining to the development of a predictive model to optimize agricultural production in irrigation districts, 2007. Msc. Thesis. [16] D. Vega-Valdivida and P. Ram rez-Moreno. Situaci on y perspectivas del ma z en m exico. Research report, Universidad de Chapingo, March 2004.

También podría gustarte