direct_sum_is_internal
⟷
Counterexamples.DirectSumIsInternal
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -92,11 +92,11 @@ theorem withSign.not_injective :
DirectSum.lof ℕ _ (fun i => with_sign i) 1 p1 + DirectSum.lof ℕ _ (fun i => with_sign i) (-1) n1
have : z ≠ 0 := by
intro h
- dsimp [z, DirectSum.lof_eq_of, DirectSum.of] at h
+ dsimp [z, DirectSum.lof_eq_of, DirectSum.of] at h
replace h := dfinsupp.ext_iff.mp h 1
rw [DFinsupp.zero_apply, DFinsupp.add_apply, DFinsupp.single_eq_same,
DFinsupp.single_eq_of_ne units_int.one_ne_neg_one.symm, add_zero, Subtype.ext_iff,
- Submodule.coe_zero] at h
+ Submodule.coe_zero] at h
apply zero_ne_one h.symm
apply hinj.ne this
rw [LinearMap.map_zero, LinearMap.map_add, DirectSum.toModule_lof, DirectSum.toModule_lof]
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,9 +3,9 @@ Copyright (c) 2021 Eric Wieser. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Eric Wieser, Kevin Buzzard
-/
-import Mathbin.Algebra.DirectSum.Module
-import Mathbin.Algebra.Group.ConjFinite
-import Mathbin.Tactic.FinCases
+import Algebra.DirectSum.Module
+import Algebra.Group.ConjFinite
+import Tactic.FinCases
#align_import direct_sum_is_internal from "leanprover-community/mathlib"@"08b081ea92d80e3a41f899eea36ef6d56e0f1db0"
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,16 +2,13 @@
Copyright (c) 2021 Eric Wieser. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Eric Wieser, Kevin Buzzard
-
-! This file was ported from Lean 3 source module direct_sum_is_internal
-! leanprover-community/mathlib commit 08b081ea92d80e3a41f899eea36ef6d56e0f1db0
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.Algebra.DirectSum.Module
import Mathbin.Algebra.Group.ConjFinite
import Mathbin.Tactic.FinCases
+#align_import direct_sum_is_internal from "leanprover-community/mathlib"@"08b081ea92d80e3a41f899eea36ef6d56e0f1db0"
+
/-!
# Not all complementary decompositions of a module over a semiring make up a direct sum
mathlib commit https://github.com/leanprover-community/mathlib/commit/bf2428c9486c407ca38b5b3fb10b87dad0bc99fa
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Eric Wieser, Kevin Buzzard
! This file was ported from Lean 3 source module direct_sum_is_internal
-! leanprover-community/mathlib commit 328375597f2c0dd00522d9c2e5a33b6a6128feeb
+! leanprover-community/mathlib commit 08b081ea92d80e3a41f899eea36ef6d56e0f1db0
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -15,6 +15,9 @@ import Mathbin.Tactic.FinCases
/-!
# Not all complementary decompositions of a module over a semiring make up a direct sum
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
This shows that while `ℤ≤0` and `ℤ≥0` are complementary `ℕ`-submodules of `ℤ`, which in turn
implies as a collection they are `complete_lattice.independent` and that they span all of `ℤ`, they
do not form a decomposition into a direct sum.
mathlib commit https://github.com/leanprover-community/mathlib/commit/4e24c4bfcff371c71f7ba22050308aa17815626c
@@ -94,8 +94,8 @@ theorem withSign.not_injective :
intro h
dsimp [z, DirectSum.lof_eq_of, DirectSum.of] at h
replace h := dfinsupp.ext_iff.mp h 1
- rw [Dfinsupp.zero_apply, Dfinsupp.add_apply, Dfinsupp.single_eq_same,
- Dfinsupp.single_eq_of_ne units_int.one_ne_neg_one.symm, add_zero, Subtype.ext_iff,
+ rw [DFinsupp.zero_apply, DFinsupp.add_apply, DFinsupp.single_eq_same,
+ DFinsupp.single_eq_of_ne units_int.one_ne_neg_one.symm, add_zero, Subtype.ext_iff,
Submodule.coe_zero] at h
apply zero_ne_one h.symm
apply hinj.ne this
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -41,10 +41,8 @@ def withSign (i : ℤˣ) : Submodule ℕ ℤ :=
exact add_nonneg hx hy }
#align counterexample.with_sign Counterexample.withSign
--- mathport name: «exprℤ≥0»
local notation "ℤ≥0" => withSign 1
--- mathport name: «exprℤ≤0»
local notation "ℤ≤0" => withSign (-1)
theorem mem_withSign_one {x : ℤ} : x ∈ ℤ≥0 ↔ 0 ≤ x :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/a3209ddf94136d36e5e5c624b10b2a347cc9d090
@@ -60,8 +60,8 @@ theorem withSign.isCompl : IsCompl ℤ≥0 ℤ≤0 := by
· rw [codisjoint_iff_le_sup]
intro x _hx
obtain hp | hn := (le_refl (0 : ℤ)).le_or_le x
- exact Submodule.mem_sup_left (mem_withSign_one.mpr hp)
- exact Submodule.mem_sup_right (mem_withSign_neg_one.mpr hn)
+ · exact Submodule.mem_sup_left (mem_withSign_one.mpr hp)
+ · exact Submodule.mem_sup_right (mem_withSign_neg_one.mpr hn)
#align counterexample.with_sign.is_compl Counterexample.withSign.isCompl
def withSign.independent : CompleteLattice.Independent withSign := by
@@ -86,8 +86,6 @@ theorem withSign.not_injective :
DirectSum.lof ℕ _ (fun i => withSign i) 1 p1 + DirectSum.lof ℕ _ (fun i => withSign i) (-1) n1
have : z ≠ 0 := by
intro h
- -- porting note: `DFinsupp.singleAddHom_apply` doesn't work so we have to unfold
- dsimp [DirectSum.lof_eq_of, DirectSum.of, DFinsupp.singleAddHom] at h
replace h := DFunLike.congr_fun h 1
-- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
erw [DFinsupp.zero_apply, DFinsupp.add_apply, DFinsupp.single_eq_same,
@@ -5,6 +5,7 @@ Authors: Eric Wieser, Kevin Buzzard
-/
import Mathlib.Algebra.DirectSum.Module
import Mathlib.Algebra.Group.ConjFinite
+import Mathlib.Data.Fintype.Lattice
import Mathlib.Tactic.FinCases
#align_import direct_sum_is_internal from "leanprover-community/mathlib"@"328375597f2c0dd00522d9c2e5a33b6a6128feeb"
FunLike
to DFunLike
(#9785)
This prepares for the introduction of a non-dependent synonym of FunLike, which helps a lot with keeping #8386 readable.
This is entirely search-and-replace in 680197f combined with manual fixes in 4145626, e900597 and b8428f8. The commands that generated this change:
sed -i 's/\bFunLike\b/DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoFunLike\b/toDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/import Mathlib.Data.DFunLike/import Mathlib.Data.FunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bHom_FunLike\b/Hom_DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\binstFunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bfunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoo many metavariables to apply `fun_like.has_coe_to_fun`/too many metavariables to apply `DFunLike.hasCoeToFun`/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>
@@ -87,7 +87,7 @@ theorem withSign.not_injective :
intro h
-- porting note: `DFinsupp.singleAddHom_apply` doesn't work so we have to unfold
dsimp [DirectSum.lof_eq_of, DirectSum.of, DFinsupp.singleAddHom] at h
- replace h := FunLike.congr_fun h 1
+ replace h := DFunLike.congr_fun h 1
-- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
erw [DFinsupp.zero_apply, DFinsupp.add_apply, DFinsupp.single_eq_same,
DFinsupp.single_eq_of_ne UnitsInt.one_ne_neg_one.symm, add_zero, Subtype.ext_iff,
@@ -88,7 +88,8 @@ theorem withSign.not_injective :
-- porting note: `DFinsupp.singleAddHom_apply` doesn't work so we have to unfold
dsimp [DirectSum.lof_eq_of, DirectSum.of, DFinsupp.singleAddHom] at h
replace h := FunLike.congr_fun h 1
- rw [DFinsupp.zero_apply, DFinsupp.add_apply, DFinsupp.single_eq_same,
+ -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
+ erw [DFinsupp.zero_apply, DFinsupp.add_apply, DFinsupp.single_eq_same,
DFinsupp.single_eq_of_ne UnitsInt.one_ne_neg_one.symm, add_zero, Subtype.ext_iff,
Submodule.coe_zero] at h
apply zero_ne_one h.symm
@@ -88,8 +88,7 @@ theorem withSign.not_injective :
-- porting note: `DFinsupp.singleAddHom_apply` doesn't work so we have to unfold
dsimp [DirectSum.lof_eq_of, DirectSum.of, DFinsupp.singleAddHom] at h
replace h := FunLike.congr_fun h 1
- -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
- erw [DFinsupp.zero_apply, DFinsupp.add_apply, DFinsupp.single_eq_same,
+ rw [DFinsupp.zero_apply, DFinsupp.add_apply, DFinsupp.single_eq_same,
DFinsupp.single_eq_of_ne UnitsInt.one_ne_neg_one.symm, add_zero, Subtype.ext_iff,
Submodule.coe_zero] at h
apply zero_ne_one h.symm
@@ -88,7 +88,8 @@ theorem withSign.not_injective :
-- porting note: `DFinsupp.singleAddHom_apply` doesn't work so we have to unfold
dsimp [DirectSum.lof_eq_of, DirectSum.of, DFinsupp.singleAddHom] at h
replace h := FunLike.congr_fun h 1
- rw [DFinsupp.zero_apply, DFinsupp.add_apply, DFinsupp.single_eq_same,
+ -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
+ erw [DFinsupp.zero_apply, DFinsupp.add_apply, DFinsupp.single_eq_same,
DFinsupp.single_eq_of_ne UnitsInt.one_ne_neg_one.symm, add_zero, Subtype.ext_iff,
Submodule.coe_zero] at h
apply zero_ne_one h.symm
@eric-wieser, would you be able to find a better solution to this?
Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
@@ -87,7 +87,7 @@ theorem withSign.not_injective :
intro h
-- porting note: `DFinsupp.singleAddHom_apply` doesn't work so we have to unfold
dsimp [DirectSum.lof_eq_of, DirectSum.of, DFinsupp.singleAddHom] at h
- replace h := DFinsupp.ext_iff.mp h 1
+ replace h := FunLike.congr_fun h 1
rw [DFinsupp.zero_apply, DFinsupp.add_apply, DFinsupp.single_eq_same,
DFinsupp.single_eq_of_ne UnitsInt.one_ne_neg_one.symm, add_zero, Subtype.ext_iff,
Submodule.coe_zero] at h
@@ -2,16 +2,13 @@
Copyright (c) 2021 Eric Wieser. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Eric Wieser, Kevin Buzzard
-
-! This file was ported from Lean 3 source module direct_sum_is_internal
-! leanprover-community/mathlib commit 328375597f2c0dd00522d9c2e5a33b6a6128feeb
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.Algebra.DirectSum.Module
import Mathlib.Algebra.Group.ConjFinite
import Mathlib.Tactic.FinCases
+#align_import direct_sum_is_internal from "leanprover-community/mathlib"@"328375597f2c0dd00522d9c2e5a33b6a6128feeb"
+
/-!
# Not all complementary decompositions of a module over a semiring make up a direct sum
@@ -88,11 +88,11 @@ theorem withSign.not_injective :
DirectSum.lof ℕ _ (fun i => withSign i) 1 p1 + DirectSum.lof ℕ _ (fun i => withSign i) (-1) n1
have : z ≠ 0 := by
intro h
- -- porting note: `Dfinsupp.singleAddHom_apply` doesn't work so we have to unfold
- dsimp [DirectSum.lof_eq_of, DirectSum.of, Dfinsupp.singleAddHom] at h
- replace h := Dfinsupp.ext_iff.mp h 1
- rw [Dfinsupp.zero_apply, Dfinsupp.add_apply, Dfinsupp.single_eq_same,
- Dfinsupp.single_eq_of_ne UnitsInt.one_ne_neg_one.symm, add_zero, Subtype.ext_iff,
+ -- porting note: `DFinsupp.singleAddHom_apply` doesn't work so we have to unfold
+ dsimp [DirectSum.lof_eq_of, DirectSum.of, DFinsupp.singleAddHom] at h
+ replace h := DFinsupp.ext_iff.mp h 1
+ rw [DFinsupp.zero_apply, DFinsupp.add_apply, DFinsupp.single_eq_same,
+ DFinsupp.single_eq_of_ne UnitsInt.one_ne_neg_one.symm, add_zero, Subtype.ext_iff,
Submodule.coe_zero] at h
apply zero_ne_one h.symm
apply hinj.ne this
The unported dependencies are