# logic: expressing "or" in terms of "implies not"

• Sep 27th 2007, 08:39 PM
Roboris
logic: expressing "or" in terms of "implies not"
Hi,

I have to express "p | q" (p or q) by using only =>~ (implies not)

I posted this yesterday night, this morning I looked at it again and I came up with a solution:

Let ->~ be *

p|q is equivalent to (( ((P*Q)*P) * ( (P*Q)*Q))*(P*Q) ) * (((p*q)*(p*q))*q)

My first approach was using truth tables, finding new ones and trying to combine them to get the result I am looking for. This worked in the end, I was able to find a working combination with those truth tables I created, but there must be better ways to solve this kind of problems and to make sure one gets as simple a solution as possible, mine seems too long to be the simplest one.

Anyone knows the right way to solve this?

Thank you
• Sep 28th 2007, 03:50 AM
Plato
It is very hard to follow what you have written.
However, here are some standard equivalencies.

$\displaystyle \begin{array}{l} \left[ {P \Rightarrow Q} \right] \Leftrightarrow \left[ {\neg P \vee Q} \right] \\ \left[ { P \vee Q} \right] \Leftrightarrow \left[ {\neg P \Rightarrow Q} \right] \Leftrightarrow \left[ {\neg Q \Rightarrow P} \right] \\ \end{array}$
• Sep 29th 2007, 12:30 AM
Opalg
If I understand this right, $\displaystyle P*P$ has the same truth table as $\displaystyle \neg P$. So $\displaystyle P\vee Q$ is equivalent to $\displaystyle (P*P)*(Q*Q)$.
• Sep 29th 2007, 06:55 AM
Roboris
Quote:

Originally Posted by Opalg
If I understand this right, $\displaystyle P*P$ has the same truth table as $\displaystyle \neg P$. So $\displaystyle P\vee Q$ is equivalent to $\displaystyle (P*P)*(Q*Q)$.

Yes, you are totally right, I even had $\displaystyle \neg P$ to express in terms of *. Now I see for sure that my answer, even though it works, was way too long.

Thank you :)