# Transcribing English to Predicate Logic wffs

• November 7th, 2009, 01:43 PM
scientist91
Transcribing English to Predicate Logic wffs
Hello! I got one problem.

Let H(x) means x is happy and let the universe be the set of people.

I need to translate "If every one is happy, then Tom is happy" with universal and/or existential quantifier.

I do it like:

(for every x) ( H(x) -> H(Tom) ).

But why it is wrong?

Also I believe (in this case) that it is same like saying:

(for every x) (H(x)) -> H(Tom).

Regards.
• November 7th, 2009, 01:50 PM
MagiMaster
The two are definitely not the same. The first one says something more like, if anyone is happy, Tom is happy. The second says everyone is happy, therefore Tom is happy.
• November 7th, 2009, 03:10 PM
scientist91
Quote:

Originally Posted by MagiMaster
The two are definitely not the same. The first one says something more like, if anyone is happy, Tom is happy. The second says everyone is happy, therefore Tom is happy.

But the second is also if...else statement.

So If (every x) (H(x)) then H(Tom).

Am I right?
• November 7th, 2009, 05:48 PM
MagiMaster
Yeah but the position of the parentheses matters.

The second does say:
If (for every x, H(x)) then H(Tom)

The first, though, says:
For every x, if H(x) then H(Tom)
• November 8th, 2009, 03:32 AM
scientist91
Thank you. I see now what are you talking about.

But in English the meaning is practically same since there isn't another H(x) but there is already a constant Tom, H(Tom)

Is it valid this:

(for every x) ( H(x) --> p) <=> (for every x) (H(x)) --> p

??? because in this case we can consider p=H(Tom)
• November 8th, 2009, 11:27 PM
MagiMaster
But they aren't the same. Consider the universe of three people and build the truth tables.

Code:

```A B C (for every x, H(x)) (for every x, H(x))->H(a) 0 0 0          0                      1 0 0 1          0                      1 0 1 0          0                      1 0 1 1          0                      1 1 0 0          0                      1 1 0 1          0                      1 1 1 0          0                      1 1 1 1          1                      1 A B C (H(x)->H(a)) for every x, (H(x)->H(a)) 0 0 0    1 1 1                1 0 0 1    1 1 0                0 0 1 0    1 0 1                0 0 1 1    1 0 0                0 1 0 0    1 1 1                1 1 0 1    1 1 1                1 1 1 0    1 1 1                1 1 1 1    1 1 1                1```
The second one isn't always true.
• November 9th, 2009, 08:57 AM
scientist91
Thank you.

But I do not understand the truth tables.

Are A,B,C the three people?

So, H(A), H(B), H(C) is true because of (for every x, H(x)).

(for every x, H(x))->H(a) is always true because (for every x, H(x)) is always true.

Could you please explain the truth tables?

Thank you.
• November 9th, 2009, 01:57 PM
MagiMaster
A, B and C are people, and the first three columns are whether or not H(x) is true for each.

In the top table, the second column is (for every x, H(x)), which means is H(x) true for all x. The third is (for every x, H(x))->H(A). That means, everyone's H implies A is H, and the truth table shows if the implication holds. The only time an implication doesn't hold is when the left side is true but the right side is false. That never happens here.

In the bottom table, the second set of three columns is (H(x)->H(a)) for each x. Obviously, H(A)->H(A) is always true, but H(B)->H(A) and H(C)->H(A) sometimes aren't. Then the last column says for every x, (H(x)->H(A)), means are all three of the middle columns true, which doesn't always happen, which means that this statement isn't generally true.
• November 10th, 2009, 04:39 PM
scientist91
Ok. I will try creating different truth tables.

--------------------
0-------------0-------------------1
0-------------1-------------------1
1-------------0-------------------n.a
1-------------1-------------------1

Now \forall x (H(x) -> H(A)) <=> \forall x (~H(x) v H(A)) <=> \forall x (~H(x)) v H(A) <=> \exists x H(x) -> H(A) because H(A) is either true or false (it is constant). If it was a function we can not separate it like that, and I guess we could not create truth tables.

-------
0--------------------------0
0--------------------------1
1--------------------------0
1--------------------------1

1
n.a
0
1

n.a means not applicable.

Now, are my truth tables correct?
• November 10th, 2009, 05:03 PM
MagiMaster
I think they're OK.
• November 12th, 2009, 10:43 AM
scientist91
Thank you very much.

And if M non-empty set and f(x) is propositional function then:

(for every x) f(x) <=> {x in M | f(x)}=M
(for some x) f(x) <=> {x in M| f(x)} not equal to empty set

My question is:

If for some x, f(x) is true, does that imply that it is not true for some other x and vice verse?
• November 12th, 2009, 12:14 PM
MagiMaster
Quote:

(for every x) f(x) <=> {x in M | f(x)}=M
This is only true in one direction.

Quote:

(for some x) f(x) <=> {x in M| f(x)} not equal to empty set
This is only true in the other direction.

Quote:

If for some x, f(x) is true, does that imply that it is not true for some other x and vice verse?
f(x) could be true for everything, or it could be true for nothing. There's not much you can assume about f.
• November 12th, 2009, 01:57 PM
scientist91
(for every x) f(x) represented as set is {x in M | f(x)}=M

and

(for some x) f(x) represented as set is {x in M| f(x)} not equal to empty set

I am asking does (for some x) f(x) imply (for some x) ~f(x) ??
• November 12th, 2009, 08:09 PM
MagiMaster
Is M the set of all x? Either way, the answer to your question is no. (for some x, f(x)) is still true if (for all x, f(x)).