This repository was archived by the owner on Jul 24, 2024. It is now read-only.
fix(algebra/euclidean_domain): remove decidable_eq assumption#2362
Merged
mergify[bot] merged 3 commits intomasterfrom Apr 9, 2020
Merged
fix(algebra/euclidean_domain): remove decidable_eq assumption#2362mergify[bot] merged 3 commits intomasterfrom
mergify[bot] merged 3 commits intomasterfrom
Conversation
sgouezel
approved these changes
Apr 8, 2020
butterthebuddha
pushed a commit
to butterthebuddha/mathlib
that referenced
this pull request
May 15, 2020
…over-community#2362) This PR removes the `decidable_eq` assumption on the `field.to_euclidean_domain` instance. Decidable equality was only used to define the remainder with an if-then-else, but this can also be done by exploiting the fact that `0⁻¹ = 0`. The current instance is a bit problematic since it can cause `a + b : ℝ` to be noncomputable if type-class inference happens to choose the wrong instance (going through `euclidean_domain` instead of "directly" through some kind of ring).
butterthebuddha
pushed a commit
to butterthebuddha/mathlib
that referenced
this pull request
May 16, 2020
…over-community#2362) This PR removes the `decidable_eq` assumption on the `field.to_euclidean_domain` instance. Decidable equality was only used to define the remainder with an if-then-else, but this can also be done by exploiting the fact that `0⁻¹ = 0`. The current instance is a bit problematic since it can cause `a + b : ℝ` to be noncomputable if type-class inference happens to choose the wrong instance (going through `euclidean_domain` instead of "directly" through some kind of ring).
cipher1024
pushed a commit
to cipher1024/mathlib
that referenced
this pull request
Mar 15, 2022
…over-community#2362) This PR removes the `decidable_eq` assumption on the `field.to_euclidean_domain` instance. Decidable equality was only used to define the remainder with an if-then-else, but this can also be done by exploiting the fact that `0⁻¹ = 0`. The current instance is a bit problematic since it can cause `a + b : ℝ` to be noncomputable if type-class inference happens to choose the wrong instance (going through `euclidean_domain` instead of "directly" through some kind of ring).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Commit Message
This PR removes the
decidable_eqassumption on thefield.to_euclidean_domaininstance. Decidable equality was only used to define the remainder with an if-then-else, but this can also be done by exploiting the fact that0⁻¹ = 0.The current instance is a bit problematic since it can cause
a + b : ℝto be noncomputable if type-class inference happens to choose the wrong instance (going througheuclidean_domaininstead of "directly" through some kind of ring).TO CONTRIBUTORS:
Make sure you have:
If this PR is related to a discussion on Zulip, please include a link in the discussion.
For reviewers: code review check list