-
Notifications
You must be signed in to change notification settings - Fork 637
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added theorem Nat.bezout_comm. #11127
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's an interesting property!
Concerning the integration to the library, would the proof have to be reworked a lot so that it can be done in file NGcd.v
and thus automatically exported to all implementations of natural numbers? Then Ngcd.gcd_bezout
could take benefit of the new commutativity lemma to be a one-line proof.
I first tried to put it in |
Bon, je l'ai mis dans |
This should be good now. |
Thanks for bullets. That's true that it makes the indentation slowly sliding to the right. Anyway, let's keep it like this. Thanks a lot. I'll merge it tomorrow. |
PS: Please also squash and add a changelog entry as noticed by @Zimmi48 (use |
@Zimmi48: do you have further remarks or can I merge? |
Well, this PR still contains 6 commits instead of just one or two. I can show Daniel how to squash when I get the chance to see him (not today). |
I just made it, thanks to @herbelin |
Ack-by: Zimmi48 Ack-by: herbelin
In natural numbers, since there are no negatives, Bézout is either ∃ u v, au=bv+1 or ∃ u v, bv=au+1. Two cases are considered in Nat.gcd_bezout. But they are actually the same. The first case is equivalent to the second case (with different pairs (u, v)), providing a≠0 and b≠0. The new theorem Nat.bezout_com transforms one case to the other one.