Consider the sentence "If all the birds in my house are peacocks, then Charlie is a peacock," and let the provided symbols be denoted as B for bird, H for house, P for peacock, and c for Charlie.

Are the following two translations exactly equivalent?

  1. (x)( ( (Bx & Hx) → Px) → Pc)
  2. ((x)( ( (Bx & Hx) → Px)) → Pc

If they are different, what is the exact difference? In particular, what is an example that works for (1) and not (2) (and vice versa). If they are equivalent, how can I generalize the situations for which the correctness of the translation is not changed by moving the position of the parentheses?

As a note, the textbook that I am using denotes (x) as a universal qualifier instead of using (∀x).

  • 1
    They are not equivalent. To move quantifiers out of implications correctly see prenex normal form: (∀x ϕ) → ψ is equivalent to ∃x(ϕ → ψ), not to ∀x(ϕ → ψ).
    – Conifold
    Commented Nov 13, 2019 at 18:53
  • a priori that Charlie is a bird. Commented Nov 14, 2019 at 4:49
  • Well 2 isn't a well-formed formula. Did you mean to add another closed parenthesis? Moreover there is an effective procedure for adding parenthesis such that these questions shouldn't arise. Commented Nov 15, 2019 at 19:18

1 Answer 1


They are not equivalent. Here is an example. Suppose one (but not all) of the birds in your house is a peacock, and that Charlie isn't a peacock. Then:

  1. (Bx & Hx) → Px) = T for some x, and Pc = F.
  2. So, (x)(((Bx & Hx) → Px) → Pc) = F.
  3. But ((x)(((Bx & Hx) → Px)) = F.
  4. Therefore, ((x)(((Bx & Hx) → Px)) → Pc = T.

2 and 4 show that the translations are not equivalent. In general, (x)(Ax → B) is not equivalent to (x)(Ax) → B. (You can see more on this here.) In your case, the latter formulation is correct. Your statement is conditional: if [...], then [...]. So its main connective should be →, and it should connect "all the birds are ..." and "Charlie is ...". So the correct form is (x)(Ax) → B.

Another way to see this is to note that (x)(Ax → B) says Ax → B about each individual x. That is, it is like saying: (Aa → B) & (Ab → B) & (Ac → B) & .... But this is not what you want to say -- you don't want to say that if that bird is a peacock then Charlie is a peacock, and if this bird is a peacock then Charlie is a peacock, and so on for every single bird. You want to say that if everyone is then Charlie is.

A good rule of thumb to get the correct translations in these kinds of cases is to have your quantifier range only over where its variable occurs. For example, in (x)(((Bx & Hx) → Px) → Pc), the variable x doesn't occur in 'Pc', so according to this rule of thumb the (x) quantifier shouldn't range over it.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .