PRIMERO DE MAYO
TECNOLOGÍA SUPERIOR EN DESARROLLO DE
SOFTWARE
ASIGNATURA:
MATEMÁTICA DISCRETA
CICLO:
PRIMERO
DOCENTE:
DIEGO VICENTE GUAMÁN JIMA
Contenidos
1. PRIMERA UNIDAD: TEORÍA DE CONJUNTOS, TIPOS DE NÚMEROS Y NÚMEROS REALES -
FUNCIONES ................................................................................................................................... 4
1.1. CONJUNTOS .................................................................................................................. 4
1.1.1. Definiciones básicas de conjuntos ........................................................................... 4
1.1.2. Determinación de conjuntos .................................................................................... 6
1.1.3. Diagrama de Venn .................................................................................................... 7
1.1.4. Operaciones con conjuntos ...................................................................................... 8
1.1.5. Propiedades ............................................................................................................ 12
1.2. SISTEMA DE NUMERACIÓN ........................................................................................ 12
1.2.1. Decimal ................................................................................................................... 12
1.2.2. Binario ..................................................................................................................... 13
1.2.3. Octal ........................................................................................................................ 13
1.2.4. Hexadecimal ........................................................................................................... 14
1.2.5. Conversión entre sistemas de numeración ........................................................... 14
2. UNIDAD 2: LÓGICA PROPOSICIONAL ................................................................................. 19
2.1. Proposiciones y operadores lógicos ........................................................................... 19
2.1.1. Leyes del algebra proposicional ............................................................................. 19
2.1.2. Lógica matemática – tablas de verdad .................................................................. 21
1.1.1. Clasificación ............................................................................................................ 21
1.1.2. Operadores lógicos ................................................................................................. 22
1.1.3. Operadores lógicos en Programación .................................................................... 24
1.1.4. Tautología – Contingencia – Contradicción ........................................................... 25
1.2. RAZONAMIENTO LÓGICO ........................................................................................... 27
1.2.1. Inferencia lógica...................................................................................................... 27
1.2.2. Sucesiones............................................................................................................... 28
3. UNIDAD 3: ALGEBRA BOOLEANA ....................................................................................... 29
3.1. Conceptos básicos...................................................................................................... 29
3.1.1. Definición.- .......................................................................................................... 29
3.1.2. Propiedades ..................................................................................................... 29
3.2. Teorema del algebra de Boole ................................................................................... 30
3.3. Operaciones básicas ................................................................................................... 31
3.3.1. Suma lógica ......................................................................................................... 31
3.3.2. Producto lógico ................................................................................................... 31
3.3.3. Complementacion o inversión lógica ................................................................. 32
3.4. Representación de funciones lógicas ......................................................................... 32
2
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
3
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
El adjetivo “bien definido” implica que cualquiera que sea el objeto considerado,
se pueda determinar si está o no en el conjunto que se analiza.
Dado un conjunto A
Se escribe x ∈A si x es un elemento de A; y
Especificación de conjuntos.-
Por otra parte, hay dos maneras comunes de especificar un conjunto dado. La
primera es mediante la presentación de un listado de sus elementos entre llaves;
por ejemplo, si A consiste de todas las letras del alfabeto español, entonces A
puede presentarse en la forma:
4
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Y se lee: “A es el conjunto de todos los elementos a, tales que a es una letra del
alfabeto español”. La notación que se usa para especificar que un objeto a es un
elemento de un conjunto A es:
a∈A
A∉A
De acuerdo con el concepto de conjunto definido antes, resulta claro que para
que un conjunto A sea igual a un conjunto B, lo cual se denota por AB, ambos
deben tener exactamente los mismos elementos.
Ejemplos:
A {1, 2, 3, 4}
B {1, 2, 3, 4, 5}
C {1, 3, 5, 2, 4}
5
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
2.- De acuerdo con los conjuntos A, B y C del ejemplo anterior, es fácil ver que
A ⊆ C. Además, B ⊆ Cy C⊆B; por tanto, B =C. Si D {1, 3, 5, 7}, entonces D ⊊ A
y A ⊊ D.
Como contraparte del conjunto vacío, se tiene otro extremo, “el más grande”, que
se denomina conjunto universo. Un conjunto universo (o conjunto universal) es
el conjunto de todos los elementos de interés en una discusión particular.
Extensión.-
Un conjunto está determinado por extensión cuando se escriben uno a uno todos
sus elementos.
A=[1,2,3,4,5,6,7,8]
Comprensión.-
6
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Tenemos:
Unión.-
8
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Ejemplo:
A ∪ B = {1,2,3,4,5,6,8,10}
Intersección.-
9
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Ejemplo:
A∩ B={2,4}
Diferencia.-
10
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Ejemplo:
A—B={ 6, 8,10}
DIFERENCIA SIMÉTRICA
11
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
1.1.5. Propiedades
Las siguientes propiedades rigen las operaciones en conjuntos. Sea U un
conjunto universo. Si A, B y C son subconjuntos arbitrarios de U, entonces:
1.2.1. Decimal
El hombre, desde hace tiempo ha utilizado como sistema para contar el sistema
decimal, que derivó del sistema indo arábigo, posiblemente se adoptó este
sistema por contar con 10 dedos en las manos.
12
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
1.2.2. Binario
Este sistema de base 2 es el más sencillo de todos por poseer sólo dos dígitos,
fue introducido por Leibniz en el Siglo XVII, es el sistema que internamente
utilizan los circuitos digitales que configuran el hardware de las computadoras
actuales.
Los dos dígitos, llamados bits (Contracción de binary digit), son el uno (1) y el
cero (0), por lo cual el equivalente decimal se obtendrá al sumar los pesos
correspondientes a los bits 1.
En bit más significativo (MSB) es aquel que se ubica más a la izquierda (el que
tiene mayor valor). El bit menos significativo (LSB) es aquel que está más a la
La razón por la que se utiliza el factor 1.024 en vez de 1.000, es por ser el múltiplo
de 2 más próximo a 1000, cuestión importante desde el punto de vista informático
(210 = 1.024).
1.2.3. Octal
Se trata de un sistema de numeración en base 8 que utiliza 8 símbolos para la
representación de cantidades. Los símbolos utilizados son: 0, 1, 2, 3, 4, 5, 6, 7.
Este sistema también posicional, ya que cada una de sus cifras tiene como
posición la relativa al punto decimal que, en caso de no aparecer se supone
implícita al lado derecho del número, este proporciona un método conveniente
para la representación de códigos y números binarios utilizados en los sistemas
digitales.
13
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
1.2.4. Hexadecimal
El sistema hexadecimal emplea la base 16. Así, tiene 16 posibles símbolos
digitales. Utiliza los dígitos del 0 al 9, más las letras A, B, C, D, E y F como sus
16 símbolos digitales. Cada dígito hexadecimal representa un grupo de cuatro
dígitos binarios. Es importante recordar que los dígitos hex (Abreviatura de
hexadecimal) de A a F son equivalentes a los valores decimales de 10 a 15.
= 1 0 1 1 0 12
14
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Nótese que el procedimiento consiste en determinar los valores (es decir, las
potencias de 2) de cada posición de bit que contenga un 1 y luego sumarlos.
Nótese también que el MSB tiene un valor de 24 a pesar de que es el quinto bit;
esto se debe a que el LSB es el primer bit y tiene un valor de 20
Para convertir un número octal a binario se sustituye cada dígito octal por sus
correspondientes tres dígitos binarios.
16
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
17
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
18
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Por tal razón tenemos que dominar una serie de conceptos que nos demuestran
de una manera más clara y sencilla como podemos aplicarlos en nuestra vida
tanto en el campo laboral como en lo personal para resolver diferentes
situaciones que se nos pueden presentar.
Ejemplo.
p: La tierra es plana.
19
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
q: -17 + 38 = 21
r: x > y-9
Los incisos p y q sabemos que pueden tomar un valor de falso o verdadero; por
lo tanto son proposiciones validas. El inciso r también es una proposición valida,
aunque el valor de falso o verdadero depende del valor asignado a las variables
x y y en determinado momento. La proposición del inciso s también esta
perfectamente expresada aunque para decir si es falsa o verdadera se tendría
que esperar a que terminara la temporada de fut-bol. Sin embargo los
enunciados t y w no son válidos, ya que no pueden tomar un valor de falso o
verdadero, uno de ellos es un saludo y el otro es una orden.
P∧P=P P∨P=P
3. Asociativa:
4. Conmutativa:
20
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
5. Distributiva
P∧(Q∨R)⇔ (P∧Q)∨(P∧R)
P∨(Q∧R)⇔(P∨Q)∧(P∨R)
6. De morgan
1.1.1. Clasificación
Aquellas proposiciones que constan o se les puede representar por una sola
variable, se llaman proposiciones simples o atómicas. Por ejemplo:
21
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
22
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
23
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
24
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
AND y OR trabajan con dos operandos y retornan un valor lógico basadas en las
denominadas tablas de verdad. El operador NOT actúa sobre un operando.Estas
tablas de verdad son conocidas y usadas en el contexto de la vida diaria,por
ejemplo: "si hace sol Y tengo tiempo, iré a la playa", "si NO hace sol, mequedaré
en casa", "si llueve O hace viento, iré al cine". Las tablas de verdad delos
operadores AND, OR y NOT se muestran en las tablas siguientes:
El operador lógico OR
Tautología
Tautología, es aquella proposición (compuesta) que es cierta para todos los
valores de verdad de sus variables.
25
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Note que en las tautologías para todos los valores de verdad el resultado de la
proposición es siempre. Las tautologías son muy importantes en lógica
matemática ya que se consideran leyes en las cuales nos podemos apoyar para
realizar demostraciones.
Contradicción
Es aquella proposición que siempre es falsa para todos los valores de verdad,
una de las mas usadas y mas sencilla es p ˄ p’. Como lo muestra su
correspondiente tabla de verdad.
Contingencia
Un fórmula P es una contingencia si existen algunas valoraciones que son
modelos de P y otras que no lo son.
26
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
A→B
A
–––––
B
MTTModus tollendo tollens
A→B
¬B
–––––
¬A
SD Silogismo Disyuntivo
A∨B
¬A
–––––
¬B
27
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
SH Silogismo hipotético
A→B
B→C
–––––
A→C
LS Ley de simplificación
A∧B
–––––
A
LA Ley de adición
A
–––––
A∨B
CONTRA POSITIVA
A→B
–––––
¬B → ¬A
1.2.2. Sucesiones
De manera intuitiva, una sucesión S es una simple lista de objetos llamados
elementos, los cuales forman un conjunto, donde además los elementos están
uno detrás de otro en el orden natural creciente de los números naturales .
28
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
3.1.2. Propiedades
1. Ambas operaciones son conmutativas, es decir, si a y b son elementos
del álgebra, se verifica:
a+b=b+a
a.b = b.a
2. Dentro del álgebra existen dos elementos neutros, el 1 y el 0; que
cumplen con la propiedad de identidad con respecto a cada una de las
operaciones:
29
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
0+a=a
1.a = a
3. Cada operación es distributiva respecto a la otra:
a.(b + c) = a.b + a.c
a + b.c = (a + b).(a + c)
4. Para cada elemento “a” del álgebra existe un elemento denominado ā o
a’, tal que:
a+ā=1
a.ā = 0
Asociativa
a + (b + c) = (a + b) + c
a.(b.c) = (a.b).c
Absorción
a + a.b = a
a . (a + b) = a
Idempotencia
a+a=aóa+ā=1
a.a = a ó a.ā = 0
Involución
30
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
(ā) = a
Incógnita
X+1=1
X.0 = 0
Leyes de morgan
31
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Álgebra booleana
Tablas de verdad,
Diagramas de compuertas,
Diagramas de Venn,
Mapas de Karnaugh,
Entre otros.
32
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
3.5.1. Compuerta OR
Es un circuito digital que tiene dos o más entradas y cuya salida es igual a la
suma OR de las entradas. El símbolo correspondiente a una compuerta OR de
dos entradas es el que se puede observar en la siguiente figura:
33
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Así como la función OR, ésta también se puede identificar, como se muestra en
la siguiente figura:
34
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Tal como en los casos anteriores, ésta compuerta también se puede identificar
como se muestra en la siguiente figura:
35
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Definiciones Graficas:
Grafos: un grafo G es una dupla G= (X, U), donde X es el conjunto finito y no vació de los
elementos llamados vértices y U es el conjunto cuyos elementos se componen de subconjunto
de X de cardinalidad dos, llamadas aristas.
36
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Descripción
El algoritmo de dijkstra determina la ruta más corta desde un nodo origen hacia
los demás nodos para ello es requerido como entrada un grafo cuyas aristas
posean pesos. Algunas consideraciones:
Si los pesos de mis aristas son de valor 1, entonces bastará con usar el algoritmo
de BFS.
Si los pesos de mis aristas son negativos no puedo usar el algoritmo de dijsktra,
para pesos negativos tenemos otro algoritmo llamado Algoritmo de Bellmand-
Ford.
Como trabaja
37
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Cadena: es una secuencia de aristas de G, tal que cada arista de la secuencia tiene un extremo
común con el arco precedente y otra con el siguiente.
Vía: es un camino cuyo arco que pueden recorrer en su sentido directo o contrario.
Grafo simple: es un grafo sin bucles, sin múltiples aristas entre pares de vértices.
38
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Grafo completo: para todo par de vértices de G, existe por lo menos una arista que los una.
Por lo tanto un grafo completo de n vértices es aquel que tiene sus n vértices mutuamente
adyacentes.
Grafo bipartito: es un grafo cuyo conjunto de vértices puede ser particionado en dos clases X1
y X2 de tal forma que dos vértices de la misma clase no sean jamás adyacentes. Se nota G= (X1,
X2, U)
Grafo bipartito completo: es aquel en el que para todo elemento de X1 y todo elemento de X2
existen por lo menos un arco que los liga.
Grafo regular: es aquel en el que todos sus vértices tienen el mismo grado.
39
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Cuando se desea asignar valores negativos o reales a los pesos de las aristas, se debe tener
especial cuidado en la eleccion de los algoritmos ya que la rectitud de los mismos puede
depender de la restricción a Z+
Grafo conexo: Es aquel que para cada par de vértices de G existe una cadena que nos une.
Débilmente conexo: si existe una cadena(sin tener en cuenta la orientación)que une cada par
de nodos distintos.
Fuertemente conexo: si para cada par de ordenados de nodos x e y, existe un camino que va
desde x a y
Ciclos: es una cadena simple, cuyos 2 vértices extremos, inicial y Terminal, coinciden (no tiene
en cuenta la orientación).
Ciclo elemental: es un ciclo donde no se repite ningún vértice (salvo el primero que coincide
con el ultimo).lo notamos uE= (u1,…,un).
Propiedad 1: Todo siclo uC es una suma de siclos elementales sin aristas comunes.
Propiedad 2: Un ciclo es elemental si solo si es un ciclo minimal (es decir que no se pueden
deducir otros ciclos por supresión de aristas).
Seudociclo: es una cadena donde los extremos coinciden pero que una misma arista puede
figurar mas de una vez (también consecutivamente).
Ciclo del conjunto de vértices A: es el conjunto de aristas de incidentes a A, del tipo I(A) no
vació y particionado en dos clases I+(A) y I-(A).
40
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Ciclo Euleriano: Es aquel que incluye todas las aristas del grafo una sola vez, conteniendo cada
vértice por lo menos una vez.
Cadena Euleriana: Es aquella que recorre todas las aristas una sola vez (= simple) tocando
todos los vértices del grafo.
Todo multigrado que posee un ciclo Euleriano es conexo y todos sus vértices tienen grado par.
Teorema: un multigrado (no orientado) G= (X,U) posee un ciclo Euleriano si G es conexo todos
sus vértices son de grado par.
Una cadena Euleriana es una cadena que corresponde todas las aristas del grafo una sola vez
incluyendo todos los vértices.
Corolario: un multigrado posee una cadena Euleriana, Si es conexo y tiene exactamente dos
vértices de grado impar.
Árbol: Es un grafo finito, conexo, sin ciclos y con por lo menos 2 vértices.
41
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Arborescencia: Es un árbol dirigido con un nodo llamado raíz, tal que existe un único camino
desde la raíz a cualquier otro nodo del árbol. Ese camino es elemental y simple.
Altura de un árbol (o arborecencia): Es el número de aristas del camino más largo, es decir, el
numero de nivel mas alto de cualquier vértice.
Definición:
42
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Los árboles binarios son estructuras de datos muy similares a las listas
doblemente enlazadas, en el sentido que tienen dos punteros que apuntan a
otros elementos, pero no tienen una estructura lógica de tipo lineal o
secuencial como aquellas, sino ramificada. Tienen aspecto de árbol, de ahí
su nombre.
43
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
44
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Nodo hijo: cualquiera de los nodos apuntados por uno de los nodos del árbol.
En la gráfica de la imagen 2, se tiene , ‘D’ y ‘M’ son hijos de ‘A’.
Nodo padre: nodo que contiene un puntero al nodo actual. En el ejemplo, el
nodo ‘A’ es padre de ‘D’ y ‘D’.
Los árboles con los que trabajará tienen otra característica importante: cada
nodo sólo puede ser apuntado por otro nodo, es decir, cada nodo sólo tendrá
un padre. Esto hace que estos árboles estén fuertemente jerarquizados, y es
lo que en realidad les da la apariencia de árboles.
Nodo raíz: nodo que no tiene padre. Este es el nodo que usaremos para
referirnos al árbol. En el ejemplo anterior, es el nodo ‘A’.
Nodo hoja: nodo que no tiene hijos. En el ejemplo hay varios: ‘L’, ‘K’, ‘I’, ‘E’.
Existen otros conceptos que definen las características del árbol, en relación
a su tamaño:
45
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Altura: la altura de un árbol se define como el nivel del nodo de mayor nivel.
Como cada nodo de un árbol puede considerarse a su vez como la raíz de
un árbol, también se puede hablar de altura de ramas.
Para recorrer un arbol binario no vacio en preorden, hay que realizar las
siguientes opera- ciones recursivamente en cada nodo, comenzando con el
nodo de raiz:
1.Visite la raiz
Preorden: ABDGEHICFJK
46
TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE MATEMÁTICA DISCRETA
Para recorrer un arbol binario no vacio en inorden (simetrico), hay que realizar
las siguientes operaciones recursivamente en cada nodo:
2.Visite la raiz
Inorden: GDBHEIACJKF
Para recorrer un arbol binario no vacio en postorden, hay que realizar las
siguientes opera- ciones recursivamente en cada nodo:
3.Visite la raiz
Postorden: GDHIEBKJFCA
47