I don't have enough reputation to post this as a comment; it's pretty long and not directly an answer:
These pattern recognition tests function well when used naively, but they break down completely once a participant knows something more advanced about math. If you care about this, for every finite sequence S of length N and for every new element E, there is a finite sequence S' of length N+1 that starts with the S and ends with E, i.e. S' = (S, E). You can basically append whatever you want at the end and still be mathematically sound.
Keeping in mind that these tests are nonsense once you see through them, I actually went with D as well when trying to play along. My reasoning is the following: (I'm going from right to left in this)
- The black onces have positions (l, l, t, b). If you encode that in numbers, you could for example get (0, 0, 1, 3). The differences between them are (0, 1, 2).
- The white onces have position (r, b, l, t). If you encode that in numbers, you could get (0, 1, 2, 3). The differences between them are (1, 1, 1).
My reasoning now was the following: It is obvious (...), that the next white position will be 1 away from the last one, which is 4 (or 0 if you're calculating in a clock fashion), so it should be on the right. The next difference for the black ones they wanted to get is 3, so it would be on the right (giving E as the answer). I, however, didn't feel that way (not trying to actively break the test); I was feeling like the sequence of positions should be left. Why? In my calculations, 0 ~ 4 (they are at the same position, as is 12 am and 12 pm on an analogue clock), so I was seeing the positions more like (0, 4, 1, 3) with (0+4 = 1+3). And I felt like repeating should be the way to go. That would give me the sequence (0, 0, 1, 3, 0, 0, 1, 3). Of course, this could also be (0, 0, 1, 3, 2, 2, 3, 1), but that's just the point.
As a conclusion:
People using math that don't understand math to try to get rid of people not understanding math is always amusing when knowing something about math ;)