Turn sentence to predicat formula

55 Views Asked by At

I am to write this senten "I have read atleast 2 books" into formula of predicat logic where C(x) = i have read x;

The only thing i can think of is

$(\exists x)\wedge (\exists y)(C(x) \wedge C(y)\wedge (\forall z)(('(z=x)\wedge '(z=y))\Rightarrow (C(z)\vee 'C(z)))$

but in this there could be a state , when i havent read any of Z and that would mean i have read only two books , what is the right formula for this kind of sentence?

1

There are 1 best solutions below

4
On BEST ANSWER

First of all, you can't write $\land$ between two quantifiers: it's not well-formed. Not to mention that primes are never written over logical connectives ($\land'$, for example, occurs in no well-formed formula of first order logic).

In logic-like English, what you want to express is: there are books $x,y$ such that I have read $x$ and I have read $y$ and $x\ne y$. Symbolically: $$ \exists x \,\exists y\,(C(x) \land C(y) \land x\ne y) $$ Added in response to question in comments

The above formula says that $x,y$ are distinct books I have read — so there are at least two. In order to express that there are also at most two, you have to conjoin another clause saying that any book I have read is either $x$ or $y$. The formula for "I have read exactly two books" is therefore: $$ \exists x \,\exists y\,[(C(x) \land C(y) \land x\ne y) \land \forall z\,(C(z)\to (z=y\lor z=x))] $$