Sei sulla pagina 1di 53

FACULTAD DE INGENIERIA DE SISTEMAS, CMPUTO Y TELECOMUNICACIONES

Matemticas Discretas

Algebra de Proposiciones

Docente: Carlos A. Ruiz De La Cruz Melo


Correo: ruizdelacruzmelo@uigv.edu.pe
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

1. Ley de clausura.

Si p y q son proposiciones, p q, p q
son tambin proposiciones.
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

2. Leyes de idempotencia.
Idempotencia significa igual valor

Una proposicin o, equivale a la


ppp misma proposicin.

Una proposicin y, equivale a la


p p p. misma proposicin
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

3. Leyes conmutativas.

Conmutar significa cambiar de


lugar u orden:

pqqp observar que las variables proposicionales


p y q cambiar de lugar.

pqqp observar que las variables proposicionales


p y q cambiar de lugar.
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

4. Leyes asociativas.
Para asociar los conectivos lgicos
deben de ser iguales:

p q r p (q r) asociamos la segunda proposicin con la


tercera proposicin.

p q r (p q) r asociamos la primera proposicin con la


segunda proposicin.
ALGEBRA DE PROPOSICIONES

p q r p (q r)

p q r pqr p (q r)
V V V V V V

V V F V V V

V F V V V V

V F F V V V

F V V V V V

F V F V V V

F F V V V V

F F F F V F
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

5. Leyes distributivas.
Para aplicar la ley, los operadores de la
proposicin deben de ser diferentes:

p (q r) (p q) (p r)
p (q r) (p q) (p r)
ALGEBRA DE PROPOSICIONES

p (q r) (p q) (p r)

p q r p (q r) (p q) (p r)
V V V V V V

V V F V V V

V F V V V V

V F F V V V

F V V V V V

F V F F V F

F F V F V F

F F F F V F
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

6. Ley de doble negacin.

~(~ p) p La negacin de la negacin equivale a


la misma proposicin.
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:
Para ~ (p q) ~p ~q

se niega la primera proposicin


7. Leyes de Morgan. (p)
se cambia por
se niega la segunda
~(p q) ~p ~q
proposicin.
~ (p q) ~p ~q
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones cualesquiera,


se cumple las siguientes leyes:

8. Leyes de Absorcin
La primera proposicin se
p (p q) p repite dentro del parntesis,
p (p q) p el resultado es igual a la
p (p q) p proposicin que se repite.

La primera proposicin, tiene


p (~p q) p q su contrario dentro del
p (~p q) p q parntesis, la proposicin
p v (~p q) p v q contraria se elimina y se copia
la segunda proposicin.
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

8. Ley condicional. 1) se niega la primera proposicin (p)


2) se cambia por v
p q ~p q 3) se copia la segunda proposicin
4) el segundo operador queda igual
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

9. Ley Bicondicional.

pq p q q p La primera proposicin implica la


segunda proposicin y la segunda la
segunda proposicin implica la primera
proposicin
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

10. Leyes de neutro.

p v Fo p. Una proposicin y falso


equivale a la proposicin

p Vo p Una proposicin y verdadero


equivale a esa proposicin
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

11. Ley inversa.

p ~p Vo. Una proposicin o su negacin


equivale a verdadero

p ~p Fo Una proposicin y su negacin


equivale a falso.
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

12. Ley de identidad

V o V o Vo Verdadero y verdadero equivale a


verdadero

Fo Fo Fo falso o falso equivale a falso


ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

13. Ley de denominacin


p v V o Vo

p Fo Fo
ALGEBRA DE PROPOSICIONES

Sean p, q , r y s proposiciones
cualesquiera, se cumple las
siguientes leyes:

14. Dilema constructivo

[(P Q) (R S) (P R)] (Q S)
ALGEBRA DE PROPOSICIONES

Sean p, q , r y s proposiciones
cualesquiera, se cumple las
siguientes leyes:

15. Dilema destructivo

[(p q) (r s) (q s)] (p r)
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

16. Silogismo Hipottico

[(p q) (q r)] (p r)
ALGEBRA DE PROPOSICIONES

Sean p, q y r proposiciones
cualesquiera, se cumple las
siguientes leyes:

16. Silogismo Disyuntivo

[(p q) p] q
EJERCICIO 1

Demostrar las Leyes de Morgan

~(p q) ~p ~q

Solucin

1. si ~(p q) es verdad, entonces p q es


falso
2. luego p y q son, ambas, falsas
3. y, por lo tanto, ~p es verdad y ~q es
verdad
4. Consecuentemente, ~p ~q es verdad
EJERCICIO 2

Demostrar las Leyes de Morgan

~(p q) ~p ~q

Solucin

1. si ~(p q) es verdad, entonces p q


es falso
2. luego una de las dos proposiciones
ha de ser falsa y su negacin verdad
3. luego ~p ~q es verdad en
cualquiera de los casos.
EJERCICIO 3

Simplifique:

~ p(p q)

Solucin:

~ p(p q) ley condicional: pq ~p q

~ (~p) (p q) ley doble negacin: ~(~p) p

p (p q) ley de absorcin: p (p q) p

p
EJERCICIO 3

~ p(p q)

p q ~ p(p q) p
V V V V

V F V V

F V F F

F F F F
EJERCICIO 4

Simplifique:
(pq) q
Solucin:
(p q) q ley condicional: p q ~p q
(~ p q) q ley de absorcin p (p v q) p
q
EJERCICIO 5

Estoy gordo o delgado. Ciertamente no estoy delgado.

p : Estoy gordo.
q : Estoy delgado
Entonces,

p q : Estoy gordo o delgado.


q : No estoy delgado.

El argumento sera, (p q) q.

Por el silogismo disyuntivo, (p q) q p


pq
y la regla de inferencia es q

p
EJERCICIO 6

Si corro, me quedare sin aliento. No estoy sin aliento

Sean
p : Corro.
q : Estoy sin aliento

Entonces, el argumento seria: (p q) q

y por modus tollens, (p q) q p

siendo la regla de inferencia,


pq Si corro, me quedare sin aliento.
q No estoy sin aliento.

p No he corrido.
EJERCICIO 7

El cielo azul me pone contento y el cielo gris me pone triste. El cielo esta
azul o gris
Sean
p : El cielo esta azul.
q : El cielo esta gris.
r : Estoy contento.
s : Estoy triste.
El argumento seria: [(p r) (q s)] (p q)

Por el dilema constructivo, [(p r) (q s)] (p q) (r s)

siendo la regla de inferencia,

pr El cielo azul me pone contento.


qs El cielo gris me pone triste.
pq El cielo esta azul o gris.

rs Estoy contento o triste.


DEMOSTRACIONES
EJERCICIO 8

pq
pr
_____
rq

Demostracin

(q p) (p r) {Conmutatividad de }

q [p (p r)] {Asociatividad de }

qr {Modus ponens de p (p r) }

rq {Conmutatividad de }
EJERCICIO 9

pq
pr
______
rq

Demostracin

(q p) (p r) {ley del condicional p q ~p q }

q r {Silogismo hipottico [(p q) (q r)] (p r) }

q r {ley del condicional p q ~p q }

qr {Doble negacin}

rq {Conmutatividad de }
EJERCICIO 10

Si ayer fue lunes, hoy es martes. Si hoy es martes, maana ser


mircoles. Ayer fue lunes. Por tanto, maana ser mircoles.

Sean
p: ayer fue lunes
q:hoy es martes
r: ser mircoles

1 p q
2 qr
3 p
______
r

Demostracin

4 q { Modus ponens 1, 3}
5 r { Modus ponens 4, 2}
ESTRUCTURA SELECTIVA

En la solucin de la mayora de los


problemas algortmicos se requiere tomar
decisiones en base a evaluaciones de
expresiones lgicas que sealan el camino
alternativo a seguir.

El tipo de resultado de una estructura


selectiva es lgico (booleano), es decir
verdadero o falso.

Las estructuras selectivas se clasifican en:

Estructura de seleccin simple ( Si- Fin_si)


Estructura de seleccin doble ( Si Sino- Fin_si)
Estructura de seleccin mltiple ( Si anidado y En caso
sea Fin_caso)
Estructura de seleccin simple: Si-
Fin_si

Evala una expresin lgica y si su resultado es


verdadero, se ejecuta una accin determinada. Su
sintaxis es:

Si (expresion_logica) entonces
Accin (s)
Fin_si

La accin puede ser simple (una sola accin) o


una accin compuesta (un conjunto de acciones)
Si la accin es falsa no se hace nada
Pseudocdigo y diagrama de flujo

PSEUDOCDIGO DIAGRAMA DE FLUJO


Accin simple

Si (expresion_logica) entonces
Accin
Fin_si NO SI
Accin Compuesta Expresion_logica

Si (expresion_logica) entonces
Accin1 Accion
Accin2

AccinN
Fin_si
PSEUDOCDIGO Y DIAGRAMA

Ejemplo Inicio
Haga el pseudocodigo que permita
cambiar un numero negativo a un
numero positivo Entero: nro

nicio Leer (nro)


entero: nro
escribir Ingresar numero NO SI
nro<0
Leer nro
Si (nro < 0) entonces
nro -1*nro
Fin_si. nro -1*nro
Escribir nro
Fin

Escribir (nro)

Fin
PSEUDOCDIGO Y PROGRAMA
Inicio
entero: nro
escribir Ingresar numero

Leer nro
Si (nro < 0) entonces
nro -1*nro
Fin_si.
Escribir nro
Fin #include <iostream.h>
#include <stdlib.h>
int main()
{
int nro;
cout<<"\n ingresar numero: ";
cin>>nro;
if(nro<0)
nro=-1*nro;
cout<<"\n nro="<<nro<<"\n";
getch();
return 0;
}
Estructura de seleccin doble: Si - Sino-
Fin_si
Se evala la expresin lgica, si este
resultado es verdadero se ejecuta la accion1,
si el resultado es falso se ejecuta la accion2.
Su sintaxis es la siguiente:

Si (expresin_lgica) entonces
accion1
Sino
accion2
Fin_si

La accin1 o accion2, puede ser simple (una


sola accin) o una accin compuesta (un
conjunto de acciones)
Pseudocdigo y diagrama de flujo
Ejemplo

Haga el pseudocodigo para


determinar si un nmero es par o Inicio
impar
Leer (nro)

Inicio
Entero: nro SI
Leer (nro) NO
nro Mod 2 = 0
Si (nro Mod 2 = 0 ) entonces
Escribir par
Sino
Escribir impar Escribir Escribir
Fin_si impar Par
Fin

Fin
Pseudocdigo y programa

Inicio
Entero: nro
Leer (nro) #include <iostream.h>
Si (nro Mod 2 = 0 ) entonces #include <stdlib.h>
Escribir par
Sino int main(){
Escribir impar int nro;
Fin_si
Fin cout<<"\n ingresar numero: ";
cin>>nro;
if((nro % 2)==0)
cout<<"\n es par\n";
else
cout<<"\n es impar\n";
system("PAUSE");
return 0;
}
Estructura de seleccin mltiple:
Si- anidado

Un Si anidado es una sentencia


Si que esta contenido dentro de
otro Si o Sino. Su sintaxis es la
siguiente:

Si (expresin_lgica1) entonces
accion1
Sino
Si(expresin_lgica2)
entonces
accion2
Sino
accion3
Fin_si
Fin_si
Pseudocdigo y diagrama de flujo

Ejemplo
Inicio
entero: nro Inicio
cadena:unmpseudocdigo, que lea un
Escribir
escribir yIngresar
nmero numero:
determine si es positivo,
Leer nroo cero.
Escribir
negativo
Si (nro = 0 ) entonces ingresar numero
m Cero
Leer (nro)
Sino
Si (nro>0) entonces
m Positivo SI NO
nro =0
Sino
m Negativo mcero NO SI
Fin_si nro >0
Fin_si
Escribir nro, m mnegativompositivo
Fin

Escribir
nro, m

Fin
Cual seria el cdigo en C?

Inicio
entero: nro
cadena: m
escribir Ingresar numero:
Leer nro
Si (nro = 0 ) entonces
m Cero
Sino
Si (nro>0) entonces
m Positivo
Sino
m Negativo
Fin_si
Fin_si
Escribir nro, m
Fin
Estructura selectiva mltiple:
En caso sea-Fin_caso

Permite elegir un camino entre los n posibles,


usando para ello una variable denominada selector.
El selector se compara con una lista de constantes
enteras o de carcter C1, C2, ..., Cn para cada una
de las cuales hay una accin 1, 2, ..., N

En caso sea (selector) hacer


c1: Accin 1
c2: Accin 2
.
cn: Accin N
Sino
Accion c
Fin_Caso Si el selector coincide con una constante
de la lista, se ejecuta la accin
correspondiente a dicha constante.
Si el selector no coincide con ninguna
constante de la lista, se ejecuta la accin
c correspondiente al SINO.
Ejemplo
En un centro de enseanza se han
incrementado las pensiones de acuerdo
a la siguiente tabla:

CATEGORA INCREMENTO(%)
Inicio
A 6 Entero: sw 0
Real: pension, nuevaPension
B 5 Escribir (Ingresar pension:)
Leer (pension)
C 4 Escribir (Ingresar categoria:)
Leer (cat)
En caso sea (cat) hacer
Elaborar un pseudocdigo que permita A : inc 0.06 * pension
calcular el nuevo monto de la pensin B : inc 0.05 * pension
C : inc 0.04 * pension
de un alumno que se encuentra en una Sino
categora determinada. Escribir (Fuera de rango)
sw 1
Fin_Caso
Si (sw = 0) entonces
nuevaPension pension + inc
Escribir (pension , nuevaPension)
Fin_si
Fin
Pseudocdigo y
diagrama de flujo INICIO

sw0

Inicio Leer (cat)


Entero: sw 0
Real: pension, nuevaPension SI NO
Leer (pension) nro =A
Escribir (Ingresar categoria:)
Leer (cat) SI NO
En caso sea (cat) hacer m0.06*pension
nro =B
A : inc 0.06 * pension
B : inc 0.05 * pension
C : inc 0.04 * pension m0.05*pension SI NO
Sino nro =C
Escribir (Fuera de rango) m0.04*pension sw1
sw 1
Fin_Caso
Si (sw = 0) entonces
nuevaPension pension + inc NO
Escribir (pension , nuevaPension) sw =0
Fin_si SI
Fin nuevaPensionpension+inc

Escribir
Pension, nueva Pension

FIN
PROGRAMA #include <conio.c>
#include "iostream.h"
int main(){
int sw=0; char cat;
float pension, nuevaPension,inc;
cout<<"\n ingresar pension: ";
cin>>pension;
cout<<"\n ingresar categoria: ";
cin>>cat;
switch(cat){
case 'A':inc=0.05*pension; break;
case 'B':inc=0.05*pension;break;
case 'C':inc=0.04*pension;break;
default:
cout<<"\n fuera de rango";
sw=1;
}
if(sw==0){
nuevaPension=pension+inc;
cout<<"\n pension="<<pension;
cout<<"\n nuevaPension="<<nuevaPension<<"\n";
}
system("pause");
return 0;
}
En caso sea mltiple
Se presenta de dos formas:

A) Cuando mas de una alternativa


debe ejecutar la misma accin.
B) Cuando se presentan
selecciones basadas en dos o
mas niveles.
Ejemplo
Mostrar la estacin al cual
pertenece, si se ingresa el
numero de mes: Inicio
Entero: nroMes
Leer (nroMes)
Verano: enero, febrero, marzo En caso sea (nroMes) hacer
Otoo: abril, mayo, junio 1: 2: 3: Escribir(Verano)
Invierno: julio, agosto, setiembre 4: 5: 6: Escribir(Otoo)
Primavera: octubre, noviembre, 7: 8: 9: Escribir(Invierno)
10: 11: 12: Escribir(Primavera)
diciembre Sino
Escribir (Fuera de rango)
Fin_Caso
Fin
#include <conio.c>
PROGRAMA #include "iostream.h"
int main(){
int nroMes;
cout<<"\n Ing Num de mes: ";
cin>>nroMes;
switch(nroMes){
case 1:
case 2:
case 3:cout<<"\n verano\n"; break;
case 4:
case 5:
case 6:cout<<"\n otoo\n";break;
case 7:
case 8:
case 9:cout<<"\n invierno\n";break;
case 10:
case 11:
case 12:cout<<"\n primavera\n";break;
default:
cout<<"\n fuera de rango";
}
system("pause");
return 0;
}
Cuando se presentan selecciones basadas
en dos o mas niveles.
ejemplo
Pseudocdigo para calcular la pensin Colegio de categora
que tiene que pagar un alumno de un procedencia
instituto cuya cuota de matricula tiene un A B C
porcentaje de descuento que se establece
en la siguiente tabla y esta en funcin del
Nacional 50 40 30
colegio de procedencia del alumno y de
las tres categoras que existe en el Particular 15 20 25
instituto. Considere que la pensin esta
exonerada de impuesto.

En la siguiente tabla se
muestran resultados para
diferentes valores de las
variables:

Pensin Colegio Categora Descuento Pensin


final
1000 Nacional A 1000*0.50=500 500
1500 Particular B 1500*0.20=300 1200
Pseudocodigo Cual seria el cdigo en C?
Inicio
real: cuota, dscto, importe 0
caracter: colegio, categora
entero: sw 0
Leer (colegio)
Escribir (Ingresar categora (A, B, C):)
Leer (categoria)
Escribir (Ingresar cuota:)
Leer (cuota) P: En caso sea (categoria) hacer
En caso sea (colegio) hacer A : dscto 0.25 * cuota
N: En caso sea (categoria) hacer B : dscto 0.20 * cuota
A : dscto 0.50 * cuota C : dscto 0.15 * cuota
B : dscto 0.40 * cuota Sino
C : dscto 0.30 * cuota Escribir (Opcin no contemplada)
Sino sw 1
Escribir (Opcin no contemplada) Fin_caso
sw 1 Sino
Fin_caso Escribir (Opcin no contemplada)
sw 1
Fin_caso
Si (sw = 0) entonces
importe cuota dscto
Escribir(El importe a pagar es: , importe)
Fin_si
Fin
EJERCICIOS
1. Escriba un pseudocdigo lea como dato el sueldo de un trabajador, aplique
un aumento del 15% si su sueldo es inferior a 500 y 10% en caso
contrario. Imprima el nuevo sueldo del trabajador.

2. Escriba un pseudocdigo que calcule el total a pagar por la compra de


camisas. Si se compran cinco camisas o ms se aplica un descuento del
25% sobre el total de la compra, sino se aplica un descuento del 10%.

3. En una tienda se realizan descuentos en las compras en funcin del


importe total de dichas compras. Se desea calcular el importe que se cobra
a un cliente, teniendo en cuenta los siguientes supuestos:

Si el importe total de la compra es menor de 200 soles no hay


descuentos.
Si el importe total de la compra est comprendido entre 200 y 800 se
hace un descuento del 10%
Si el importe total de la compra es mayor de 800 se hace un
descuento del 20%.

Se pide mostrar el nombre del cliente, el importe total, el descuento y


el importe a cobrar a un cliente cualquiera

Potrebbero piacerti anche