update precondition