2

I was working my way through some Propositional Logic Questions in Discrete Maths by Rosen, when I came across the following question:

When planning a party you want to know whom to invite. Among the people you would like to invite are three touchy friends. You know that if Jasmine attends, she will become unhappy if Samir is there, Samir will attend only if Kanti will be there, and Kanti will not attend unless Jasmine also does.

Which combinations of these three friends can you invite so as not to make someone unhappy?

My Solution:

1) First convert the given English sentences to logical propositions

Let J, S, K represent Jasmine, Samir, Kanti attending the party. So the propositions become:

$J\Rightarrow\not S$
$S\Rightarrow K$
$\not J\Rightarrow\not K$

2) For three variables, $2^3 = 8$ Truth Value Combinations are Possible. We need to find a combination which is consistent with the above set of propositions.

3) Clearly the combination that works is : J-True ; K-True ; S-False

4) Hence, one should invite Jasmine and Kanti and leave out Samir.

Doubt:

Am I correct in saying my answer will work? It is a bit lengthy . In more complicated problems , say involving > 5 variables , it would be futile to do the way I have done .

pranav
  • 1,473
  • 2
    Darn! Another party I'm not invited to. – marty cohen Dec 27 '14 at 04:49
  • 1
    @martycohen You might still get invited. The problem only said that among the potential invites there are three who are picky and might be unhappy depending on who else is or isn't going to be there. There is hope for you yet! On that note though, the problem did ask for you to state which combinations (plural) would work (if indeed multiple or any are consistent), and not just for one such combination. – JMoravitz Dec 27 '14 at 06:20

1 Answers1

4

Represent the three conditions as you mentioned in logical form and add “and”s between to signify that all must be met simultaneously.

$(J\implies S^c)\land (S\implies K)\land (J^c\implies K^c)$

$\equiv(J^c\lor S^c)\land (S^c\lor K)\land (J\lor K^c)$

$\equiv(J^c\land S^c\land J)\lor (J^c\land S^c\land K^c)\lor (J^c\land K\land J)\lor (J^c\land K\land K^c)\lor (S^c\land S^c\land J)\lor (S^c\land S^c \land K^c)\lor (S^c\land K\land J)\lor (S^c\land K\land K^c)$

$\equiv\emptyset \lor (J^c\land S^c\land K^c) \lor \emptyset \lor \emptyset \lor (S^c\land J)\lor (S^c\land K^c)\lor (S^c\land K\land J)\lor \emptyset$

$\equiv(J^c\land S^c\land K^c) \lor (S^c\land J)\lor (S^c\land K^c)\lor (S^c\land K\land J)$

$\equiv(J^c\land S^c\land K^c) \lor \left[(S^c\land J\land K)\lor (S^c\land J\land K^c)\right]\lor \left[(S^c\land K^c\land J)\lor(S^c\land K^c\land J^c)\right]\lor (S^c\land K\land J)$

$\equiv(J^c\land S^c\land K^c)\lor (S^c\land J\land K)\lor (S^c\land J\land K^c)$

Interpreting the final line, the possible solutions are

  • to invite noone,
  • to invite Jasmine and neither invite Samir nor Kanti, or
  • to invite Jasmine and Kanti but not Samir.

Note, the question did ask "which combinations", which is different than asking "name at least one combination." As it so happened, there are three possible solutions for these statements. Before you say a party with no guests is not much of a party, note that the way the problem was worded suggests that there are potentially other friends you are inviting which aren't going to be upset by who you do or don't invite.

The question of if this method is any faster than building a truth table is up to you. It is certainly easy to make a transcription error here. There is the chance though that we can save several steps in the case of a larger number of truth values but fewer propositions.

alexwlchan
  • 2,060
JMoravitz
  • 79,518
  • Thanks @JMoravitz , that will do :) . Just , curious - is there any other way -- other than the two listed here ? – pranav Dec 27 '14 at 06:20
  • 1
    Brute force and graphical methods in some cases I suppose, though in the end most methods will boil down to boolean algebra in one form or the other. The flavor may change and you might be able to make a few shortcuts depending on the exact scenario. – JMoravitz Dec 27 '14 at 06:33
  • 1
    @JMoravitz Shortcut:$\newcommand{\calcop}[2]{\#1\quad&\quad\text{"#2"}\\quad&}$ $$\begin{align}\quad&(J\Rightarrow\lnot S);\land;(S\Rightarrow K);\land;(\lnot J\Rightarrow\lnot K)\calcop={write $;P\Rightarrow Q;$ as $;\lnot P\lor Q;$}(\lnot J\lor\lnot S);\land;(\lnot S\lor K);\land;(J\lor\lnot K)\calcop={extract $;\lnot S\lor;$}(\lnot S\lor(\lnot J;\land;K));\land;(J\lor\lnot K)\calcop={use $;J\lor\lnot K;$ on other side of $;\land;$}(\lnot S\lor\text{false});\land;(J\lor\lnot K)\calcop={simplify}\lnot S;\land;(J\lor\lnot K)\end{align}$$ – MarnixKlooster ReinstateMonica Dec 27 '14 at 10:04
  • What are the graphical methods , @JMoravitz - do you mean Karnaugh Maps and the like ? – pranav Dec 27 '14 at 15:43
  • 1
    @pranav Yes, I mean things like Karnaugh Maps and Venn Diagrams, maybe even graphtheory graphs in some certain circumstances. They are in my experience used first in rare circumstances since it often takes the same effort of filling out truth tables and such to create the Karnaugh maps in the firstplace. – JMoravitz Dec 27 '14 at 16:51