new way of computing diff exp