[Math] Expressing statements with quantifiers and predicate functions

discrete mathematicsquantifiers

The problem states:

Express this statement in the terms of a quantifier:
There is a major such that there is a student in the class 
in every year of study with that major.

My response was:

∃x∃y∀z [x=major y=student z=year]

The graders response was that I needed a predicate function and that my logic was incorrect.

If i changed it to:

∃x∃y∀z(InClass(xyz)) [x=major y=student z=year]

would that satisfy the need for a predicate function? Or do I need to be more explicit?

I still dont see that my logic is incorrect. What am I missing?

Best Answer

I think what the grader wanted was for you to write "major", "student" and "year" as predicate functions. It's not generally considered syntactically correct to write "major = x". Also, you need to change the order of your quantifiers:

$ \exists m \forall y \exists s[\mbox{InClass}(s) \wedge \mbox{Major}(s,m) \wedge \mbox{Year}(s,y)]$

That reads "there exists a major, and for all years, there exists a student in class, whose major is $m$ and whose years is $y$. Note how everything is in predicate form. Note also the contextual meaning of the problem. There is no student who is in every year of study for major $m$, as suggested by your sentence. That would be silly, besides violating school policy. Rather, there is a separate student for each year.

Related Question