Which statement is correct grammatically?

I would be sleeping right now if I had known that the class will get cancelled. (due to rain)

I would have been sleeping right now if I knew the class is going to get cancelled. (due to heavy rain/rains)

I've highlighted several parts and I would appreciate if someone could point out the mistake in each of them.

  • Has the class been cancelled at the time you say this, or are you merely confident that it will be cancelled at some time after you say this? Jul 29, 2015 at 1:23
  • @StoneyB The context is like this... 1. There was no notification that class is cancelled. 2. Students who've unfortunately come are expressing dissatisfaction amongst themselves.
    – Phoenix
    Jul 29, 2015 at 2:45

1 Answer 1


Apparently, class was cancelled at some time before you say this, but after you got up.

For instance, you got up at 7 am for an 8 am class, and discovered when you arrived that the class had been cancelled. You say this at 8:15.

If that is the case, you want

  • a Present Irrealis ('unreal') form for your imaginary present state of sleeping, with the past-form modal would expressing present-tense irreality
  • a Past Irrealis for your imaginary past knowledge, with the 'sham' past perfect or double past, one past form expressing irreality and the other expressing past tense)
  • a Past Realis for the real fact, with the past-form modal would expressing that the cancellation lay in the future when you got up in the past

I would be sleepingPres Irr right now if I had knownPast Irr [when I got up] that the class { would / was going to}Past Rea Fut get cancelled.

  • That's all fine and good, but is the OP just supposed to take your word for it?
    – user20792
    Jul 29, 2015 at 17:09
  • 3
    @User1 It's a chronic problem here, and on ELU, and in English pedagogy generally, that there is no Standard Grammatical Authority to which questioners can be readily referred, or even a Standard Grammatical Terminology, because English grammar has been continually transforming for 50 years. The references I consult when I'm in doubt (H&P, Aarts, McCawley) are not accessible online, and the EFL sites I've seen show no evidence of knowing more about English grammar than I do. So, yeah: I can spend my time here looking up spurious footnotes, or I can spend it giving sound answers. Jul 29, 2015 at 17:53
  • @StoneyB Is it OK to say "I would have been sleeping right now if I had known that the class was going to get cancelled"? I think it works. :)
    – Kinzle B
    Oct 21, 2015 at 15:21
  • @KinzleB Not really, though it's not impossible that a) there could be some odd circumstances where would have been in the main clause would reflect a futurive inference in the past, or b) a native speaker might inadvertently produce it out of the tangle of time references. Oct 21, 2015 at 17:30

You must log in to answer this question.

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