My pal Owen Barder has an interesting post on Facebook:

So here is how this could go.

We invoke Article 50 in October.

We negotiate a new deal which is roughly Norway / European Economic Area. The UK has to accept Free Movement of Labour, and a net financial contribution. But we lose the rebate and don't participate in Single Market rule setting.

There is a general election before the actual exit. A progressive centre left coalition runs on a platform of remaining in the EU.

The public realises that staying in is a far better deal than they are getting from exit (which is now an explicitly-defined alternative) and, satisfied they have give the political class a bloody nose, votes for the remain coalition.

The new government withdraws the notification of Article 50. There is no procedure for this, but it is in everyone's interest to invent one.