discrete mathematics..help!!!!!

1. Consider these lines of code from a C program:

if (!(x != 1 && x*y < 0) && (x == 1 || y/x

≥ 5)

printf (“

:) ”);

else

printf (“

:( ”);

a.

*Express *the code in this statement as a compound statement using the logical

connectives ¬, , , , and these predicates:

P(x)

: *x *= 1

Q(x,y): x*y < 0

R(x,y): y/x ≥ 5

W(z): “ z is assigned to printf ”

where

*x *and *y *are integers and z is a Boolean variable (with values True and False)

b. Use the *laws of propositional logic *to simplify the statement by expressing it in a

simpler form.

c. *Translate *the answer in part (b) back into C codes.

2.

Given: Prove �� → ��∨ ��using the *Proof by Contradiction *method*.*

[Hint: Use a combination of Equivalence Laws and Rules of Inference to solve this

question]