Atomic Requirements in teaching Logic Implementation