This answer does not attempt to directly answer the question, but to help understand why it's solvable.
There is some confusion occurring due to the language used in some other answers - they imply that the logicians are able to directly deduce things like "Rose doesn't have 2" from failure to respond. This isn't quite right.
Instead, it's about depth of knowledge - think of the initial knowledge like this:
Depth 0: Mark has 12, and Rose has 8.
Depth 1: Mark knows that Rose has either 6 or 8, and Rose knows that Mark has either 10 or 12.
Depth 2: Mark knows that Rose knows that Mark has either (10 or 12) or (12 or 14), and Rose knows that Mark knows that Rose has either (6 or 8) or (8 or 10).
And so on down.
When Mark initially is asked on Day 1, it's his Depth 1 knowledge being tested - he has 12, so he can't know whether Rose has 6 or 8, and thus cannot answer.
When Rose is asked on Night 1, it's her Depth 2 knowledge being tested. Why? Because if she could rule out which pair Mark considers possibilities because he couldn't answer, then that tells her which ones are possible.
To see this, let's consider a different case: Mark has 16, Rose has 2.
In this case, Rose knows that Mark knows that Rose has either (0 or 2) or (2 or 4).
But if he knew the options for Rose were 0 or 2, he'd know the answer was 2. Therefore, she can rule out the idea that Mark thinks that Rose has either 0 or 2. Thus Rose knows that Mark knows that Rose has "either 2 or 4". The only way he'd see that is if Mark had 16. Therefore, Rose knows Mark has 16, and she answers 18.
On Day 2, Mark is now being tested on his Depth 3 knowledge.
Again, let's see it in action with an example: Mark has 16, Rose has 4. Now Mark knows that Rose knows that Mark knows that Rose has either [(0 or 2) or (2 or 4)] or [(2 or 4) or (4 or 6)]. If Rose knew that Mark knew that Rose had either (0 or 2) or (2 or 4), as discussed earlier, she would have answered. But she didn't answer, so Mark now knows that Rose knows that Mark knows that Rose has "either (2 or 4) or (4 or 6)".
Yes, I know it's getting hard to follow.
This allows Mark to determine the answer in this example. Mark knows Rose's Depth 2 knowledge, now. For Rose to know that Mark knows that Rose has either (2 or 4) or (4 or 6), it is necessary for Rose to think that Mark has either 14 or 16. And for that to be true, Rose must have 4. Thus, Mark can answer 20.
To get to the final answer, Mark is going to have to determine the truth from Depth 7.
In other words...
Mark knows that Rose knows that Mark knows that Rose knows that Mark knows that Rose knows that Mark has either [([([(0 or 2) or (2 or 4)] or [(2 or 4) or (4 or 6)]) or ([(2 or 4) or (4 or 6)] or [(4 or 6) or (6 or 8)])] or [([(2 or 4) or (4 or 6)] or...
... and it keeps on going like that. The "0 or 2" at the start is what allows Mark to get the answer.