0
$\begingroup$

So here I am again... Still stumped, with little progress made. Please help me translate the following sentences to QL.

  1. Anyone who knows everyone Alma knows knows Alma

  2. Everyone who knows everyone Alma knows knows someone who knows Alma.

I have somewhat of an attempted at the first one. I think it may be... Let Kxy mean x knowns y and the universe of discourse be all humans. Then, ∀x∀y[(Kxy∧Kay)→Kxa]

What do you guys think?

Thank you.

$\endgroup$
  • $\begingroup$ What is QL? Explaining that might help you get more and/or better answers... $\endgroup$ – fgp Mar 2 '14 at 2:54
  • $\begingroup$ Predicate Logic. Also, I think this is clear from the context of the question. $\endgroup$ – Valentino Mar 2 '14 at 2:56
  • $\begingroup$ It's not. Different people use different abbreviations for "predicate logic" - for me e.g. QL isn't one that I use or see regularly. Also, there are way more kinds of logic than propositional and predicate logic, so you might easily be asking about something more specific... $\endgroup$ – fgp Mar 2 '14 at 3:07
1
$\begingroup$

Anyone who knows everyone Alma knows knows Alma

Textbooks (mine, for example!) often suggest tackling this kind of translation task by using "Loglish", a half-way mixture of English and logical notation, as a stepping stone.

First step: render the English quantifiers in the form "Everyone $x$ is such that", "Everyone $y$ is such that", so ...

Everyone $x$ is such that (if $x$ knows everyone Alma knows, then $x$ knows Alma)

and then

Everyone $x$ is such that (if [everyone $y$ is such that, if Alma knows $y$, $x$ knows $y$], then $x$ knows Alma)

which gives us

$\forall x([\forall $y$(Kay \to Kxy)] \to Kxa)$

$\endgroup$
  • $\begingroup$ Beautiful! You are an excellent instructor Dr. Smith. Thank you once again. $\endgroup$ – Valentino Mar 2 '14 at 17:34
  • $\begingroup$ So I am having a go at the second one "Everyone who knows everyone Alma knows knows someone who knows Alma." So here is my "Loglish." "Everyone x is s.t (If(Everyone y is s.t(If a knows y, then x knows y), then x knows someone who knows a." However I am having some difficulty in expressing "x knows someone who knows a" I wanted to say For some z is s.t(if z knows a, then x knows z). What do you think Dr. Smith? $\endgroup$ – Valentino Mar 2 '14 at 20:04
  • 1
    $\begingroup$ @Valentino Nearly. But why the "if-then" in "if z knows a, then x knows z"? "a knows b who knows c" is just an abbreviated way of saying "a knows b and b knows c", which you can express as $Kab \land Kbc$. $\endgroup$ – fgp Mar 3 '14 at 2:46
1
$\begingroup$

These things are easier if done stepwise. Let's represent "x knows y" as $x\,K\,y$, and let's abbreviate "Alma" as $a$. Now we'll handle "x knows everyone Alma knows". That's the same as saying "if Alma knows y, x knows y", which we can write as$$ \forall y\: (a\,K\, y) \rightarrow (x\,K\,y). $$ Then we look at the second part "Anyone who ... knows Alma", where "..." stands for the first part, and is assumed to be some statement about this "anyone". We'll abbreviate that statement as $\varphi(x)$, and get $$ \forall x\: \varphi(x) \rightarrow (x\,K\,a) $$

Now you just have to plug the first part in for $\varphi(x)$ to get $$ \forall x\: \left(\forall y\: (a\,K\, y) \rightarrow (x\,K\,y)\right) \rightarrow (x\,K\,a) $$


Note $\forall$ is assumed to have low precedence here, i.e. $\forall x\: \alpha\rightarrow \beta$ is to be read as $\forall x\: \left(\alpha \rightarrow \beta\right)$, not as $\left(\forall x\: \alpha\right)\rightarrow \beta$.

$\endgroup$
  • $\begingroup$ Thank you fgp, sorry if I came off rude earlier. $\endgroup$ – Valentino Mar 2 '14 at 20:14
  • 1
    $\begingroup$ @Valentino No worries - your response certainly didn't offend me. I didn't agree with it, but hey, where'd be the fun in arguing if everybody agreed all the time? ;-) $\endgroup$ – fgp Mar 2 '14 at 20:21
  • $\begingroup$ lol this is true :). Also, what do you think of my problem on number 2? I posted my attempted solution under comments of Dr. Smith $\endgroup$ – Valentino Mar 2 '14 at 20:54
  • $\begingroup$ Okay here is my cleaned up solution taking into consideration what you mentioned in the above comment. $\forall x(\forall y(Kay\rightarrow Kxy)\rightarrow \exists z (Kxz\wedge Kza))$ $\endgroup$ – Valentino Mar 3 '14 at 3:11
  • 1
    $\begingroup$ @Valentino Look good to me $\endgroup$ – fgp Mar 3 '14 at 14:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.