batteries
batteries copied to clipboard
feat: backport `Function.Injective` etc from Mathlib
Also move Std.Logic to Std.Logic.Basic.
I changed some names and deduplicated lemmas while backporting, so review carefully, please.
Std.Logic should be re-added as a import-only file for backward compatibility
awaiting-review
I changed some names and deduplicated lemmas while backporting, so review carefully, please.
I'm not suggesting going back in this instance, but I think it is usually overall easier to do the refactor in Mathlib, then have a copy-and-paste migration to Std, then have a just-delete-stuff adaptation PR to Mathlib, rather than risking having a nightmarish adaptation PR to Mathlib due to unexpected consequences of changes during the migration.
I changed some names and deduplicated lemmas while backporting, so review carefully, please.
I'm not suggesting going back in this instance, but I think it is usually overall easier to do the refactor in Mathlib, then have a copy-and-paste migration to Std, then have a just-delete-stuff adaptation PR to Mathlib, rather than risking having a nightmarish adaptation PR to Mathlib due to unexpected consequences of changes during the migration.
Thank you for the information. I volunteer to adapt Mathlib.
I've started doing the same changes in Mathlib, see leanprover-community/mathlib4#9738 for the first batch. Let's wait with merging this PR till I sync Mathlib with it.
awaiting-author
UPD: @sgouezel is working on changing Surjective f from ∀ y, ∃ x, f x = y to ∀ y, ∃ x, y = f x. Waiting for updates.