optimiser uses log space now