Chandra broke the SAL computer back on Earth when he tested her logic circuits.That's why he almost angrily says to Hal that he doesn't know if he'll dream. He could have simply said SAL did or did not dream, but instead was reminded of the mess he made.
Hal was toying with the crew of the Leonov when questioning Chandra during their escape from Jupiter.As the one to control the Discovery during the procedure, Hal knew the date they needed to leave and how it was to be accomplished. From this, it would be easy to see the Discovery would not be able to return to Earth, so why did Hal hold off asking about it? Because he wanted to mess around with the crew, that's why.