Is there formal event for Product Owner and Dev Team to re-negotiate the Sprint Goal or Sprint Objecives
Scrum guide mentions :
If the work turns out to be different than the Development Team expected, they collaborate with the Product Owner to negotiate the scope of Sprint Backlog within the Sprint.
I am confused about when do the do it? Is there a formal meeting or just ad-hock meeting between PO and Dev team?
It may not always be the case where the work turns out to be different than expected so there is no formal event for such a thing.
I'd think, as a Product Owner, that I would want to discuss this during the Sprint at a time close to it's discovery to improve the chances of still meeting the Sprint Goal.
Is there formal event for Product Owner and Dev Team to re-negotiate the Sprint Goal or Sprint Objecives
Why do you think that the Sprint Goal can be renegotiated at all?
Why do you need a formal event if the Scrum Team is constantly communicating? And as @Ian Mitchell points out, why does the Sprint Goal need to be renegotiated? The scope of work undertaken during the Sprint can be renegotiated but it should be done in order to support the Development Team's ability to achieve the Sprint Goal. If you change the goal then aren't you changing the purpose for the Sprint? That would lead to cancelling of the Sprint which is something you want to do sparingly.
Notice that @Tony Divel also provides his answer in context of supporting the current Sprint Goal and assuming constant communication across the Scrum Team.
It's important to understand that while a Sprint Goal does not change during the sprint, a well crafted Sprint Goal will allow sufficient opportunities for the Development Team to Inspect and Adapt its plan.
For an online shop, you might have a very rigid Sprint Goal, such as:
Implement the agreed workflow for the checkout page
Or you can have one that's more flexible, but focused on solving a problem, like:
Make it possible to buy extra items from the checkout page
Or you might even choose an outcome-focused Sprint Goal, like:
Increase the average checkout spend by 25%
By liberating the Sprint Goal from fixed scope, the Development Team might be able to deviate from the original plan. Certainly Scrum allows them to modify their Sprint Backlog in order to achieve this.
As the whole Scrum Team crafts the Sprint Goal, I would expect the Product Owner to make it clear if he or she has particular expectations or constraints around the way the goal is achieved.
If the Development Team has reason to believe that the Product Owner may not be supportive of a particular approach, it's probably a good idea for them to inform the Product Owner, and potentially instigate a discussion.