topology.algebra.module.multilinear
⟷
Mathlib.Topology.Algebra.Module.Multilinear.Basic
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)
(last sync)
simps
here and there.continuous_multilinear_map.norm_of_subsingleton_le
and continuous_multilinear_map.nnnorm_of_subsingleton_le
.continuous_multilinear_map.cod_restrict
.continuous_multilinear_map.restrict_scalarsₗᵢ
, a linear_isometry_equiv
version of continuous_multilinear_map.restrict_scalars
.continuous_multilinear_map.dom_dom_congr
into 3 definitions: a map, an equivalence, and a linear isometry (the old def).@@ -217,6 +217,12 @@ lemma pi_apply {ι' : Type*} {M' : ι' → Type*} [Π i, add_comm_monoid (M' i)]
pi f m j = f j m :=
rfl
+/-- Restrict the codomain of a continuous multilinear map to a submodule. -/
+@[simps to_multilinear_map apply_coe]
+def cod_restrict (f : continuous_multilinear_map R M₁ M₂) (p : submodule R M₂) (h : ∀ v, f v ∈ p) :
+ continuous_multilinear_map R M₁ p :=
+⟨f.1.cod_restrict p h, f.cont.subtype_mk _⟩
+
section
variables (R M₂)
@@ -276,6 +282,25 @@ def pi_equiv {ι' : Type*} {M' : ι' → Type*} [Π i, add_comm_monoid (M' i)]
left_inv := λ f, by { ext, refl },
right_inv := λ f, by { ext, refl } }
+/-- An equivalence of the index set defines an equivalence between the spaces of continuous
+multilinear maps. This is the forward map of this equivalence. -/
+@[simps to_multilinear_map apply]
+def dom_dom_congr {ι' : Type*} (e : ι ≃ ι') (f : continuous_multilinear_map R (λ _ : ι, M₂) M₃) :
+ continuous_multilinear_map R (λ _ : ι', M₂) M₃ :=
+{ to_multilinear_map := f.dom_dom_congr e,
+ cont := f.cont.comp $ continuous_pi $ λ _, continuous_apply _ }
+
+/-- An equivalence of the index set defines an equivalence between the spaces of continuous
+multilinear maps. In case of normed spaces, this is a linear isometric equivalence, see
+`continuous.multilinear_map.dom_dom_congrₗᵢ`. -/
+@[simps]
+def dom_dom_congr_equiv {ι' : Type*} (e : ι ≃ ι') :
+ continuous_multilinear_map R (λ _ : ι, M₂) M₃ ≃ continuous_multilinear_map R (λ _ : ι', M₂) M₃ :=
+{ to_fun := dom_dom_congr e,
+ inv_fun := dom_dom_congr e.symm,
+ left_inv := λ _, ext $ λ _, by simp,
+ right_inv := λ _, ext $ λ _, by simp }
+
/-- In the specific case of continuous multilinear maps on spaces indexed by `fin (n+1)`, where one
can build an element of `Π(i : fin (n+1)), M i` using `cons`, one can express directly the
additivity of a multilinear map along the first variable. -/
(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)
(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)
(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)
(first ported)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -120,7 +120,7 @@ theorem coe_coe : (f.toMultilinearMap : (∀ i, M₁ i) → M₂) = f :=
#print ContinuousMultilinearMap.ext /-
@[ext]
theorem ext {f f' : ContinuousMultilinearMap R M₁ M₂} (H : ∀ x, f x = f' x) : f = f' :=
- FunLike.ext _ _ H
+ DFunLike.ext _ _ H
#align continuous_multilinear_map.ext ContinuousMultilinearMap.ext
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,8 +3,8 @@ Copyright (c) 2020 Sébastien Gouëzel. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Sébastien Gouëzel
-/
-import Mathbin.Topology.Algebra.Module.Basic
-import Mathbin.LinearAlgebra.Multilinear.Basic
+import Topology.Algebra.Module.Basic
+import LinearAlgebra.Multilinear.Basic
#align_import topology.algebra.module.multilinear from "leanprover-community/mathlib"@"f40476639bac089693a489c9e354ebd75dc0f886"
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,15 +2,12 @@
Copyright (c) 2020 Sébastien Gouëzel. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Sébastien Gouëzel
-
-! This file was ported from Lean 3 source module topology.algebra.module.multilinear
-! leanprover-community/mathlib commit f40476639bac089693a489c9e354ebd75dc0f886
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.Topology.Algebra.Module.Basic
import Mathbin.LinearAlgebra.Multilinear.Basic
+#align_import topology.algebra.module.multilinear from "leanprover-community/mathlib"@"f40476639bac089693a489c9e354ebd75dc0f886"
+
/-!
# Continuous multilinear maps
mathlib commit https://github.com/leanprover-community/mathlib/commit/9240e8be927a0955b9a82c6c85ef499ee3a626b8
@@ -323,12 +323,14 @@ theorem pi_apply {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M'
#align continuous_multilinear_map.pi_apply ContinuousMultilinearMap.pi_apply
-/
+#print ContinuousMultilinearMap.codRestrict /-
/-- Restrict the codomain of a continuous multilinear map to a submodule. -/
@[simps toMultilinearMap apply_coe]
def codRestrict (f : ContinuousMultilinearMap R M₁ M₂) (p : Submodule R M₂) (h : ∀ v, f v ∈ p) :
ContinuousMultilinearMap R M₁ p :=
⟨f.1.codRestrict p h, f.cont.subtype_mk _⟩
#align continuous_multilinear_map.cod_restrict ContinuousMultilinearMap.codRestrict
+-/
section
@@ -424,6 +426,7 @@ def domDomCongr {ι' : Type _} (e : ι ≃ ι') (f : ContinuousMultilinearMap R
#align continuous_multilinear_map.dom_dom_congr ContinuousMultilinearMap.domDomCongr
-/
+#print ContinuousMultilinearMap.domDomCongrEquiv /-
/-- An equivalence of the index set defines an equivalence between the spaces of continuous
multilinear maps. In case of normed spaces, this is a linear isometric equivalence, see
`continuous.multilinear_map.dom_dom_congrₗᵢ`. -/
@@ -437,6 +440,7 @@ def domDomCongrEquiv {ι' : Type _} (e : ι ≃ ι') :
left_inv _ := ext fun _ => by simp
right_inv _ := ext fun _ => by simp
#align continuous_multilinear_map.dom_dom_congr_equiv ContinuousMultilinearMap.domDomCongrEquiv
+-/
#print ContinuousMultilinearMap.cons_add /-
/-- In the specific case of continuous multilinear maps on spaces indexed by `fin (n+1)`, where one
mathlib commit https://github.com/leanprover-community/mathlib/commit/d30d31261cdb4d2f5e612eabc3c4bf45556350d5
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Sébastien Gouëzel
! This file was ported from Lean 3 source module topology.algebra.module.multilinear
-! leanprover-community/mathlib commit f2b757fc5c341d88741b9c4630b1e8ba973c5726
+! leanprover-community/mathlib commit f40476639bac089693a489c9e354ebd75dc0f886
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -323,6 +323,13 @@ theorem pi_apply {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M'
#align continuous_multilinear_map.pi_apply ContinuousMultilinearMap.pi_apply
-/
+/-- Restrict the codomain of a continuous multilinear map to a submodule. -/
+@[simps toMultilinearMap apply_coe]
+def codRestrict (f : ContinuousMultilinearMap R M₁ M₂) (p : Submodule R M₂) (h : ∀ v, f v ∈ p) :
+ ContinuousMultilinearMap R M₁ p :=
+ ⟨f.1.codRestrict p h, f.cont.subtype_mk _⟩
+#align continuous_multilinear_map.cod_restrict ContinuousMultilinearMap.codRestrict
+
section
variable (R M₂)
@@ -405,6 +412,32 @@ def piEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
#align continuous_multilinear_map.pi_equiv ContinuousMultilinearMap.piEquiv
-/
+#print ContinuousMultilinearMap.domDomCongr /-
+/-- An equivalence of the index set defines an equivalence between the spaces of continuous
+multilinear maps. This is the forward map of this equivalence. -/
+@[simps toMultilinearMap apply]
+def domDomCongr {ι' : Type _} (e : ι ≃ ι') (f : ContinuousMultilinearMap R (fun _ : ι => M₂) M₃) :
+ ContinuousMultilinearMap R (fun _ : ι' => M₂) M₃
+ where
+ toMultilinearMap := f.domDomCongr e
+ cont := f.cont.comp <| continuous_pi fun _ => continuous_apply _
+#align continuous_multilinear_map.dom_dom_congr ContinuousMultilinearMap.domDomCongr
+-/
+
+/-- An equivalence of the index set defines an equivalence between the spaces of continuous
+multilinear maps. In case of normed spaces, this is a linear isometric equivalence, see
+`continuous.multilinear_map.dom_dom_congrₗᵢ`. -/
+@[simps]
+def domDomCongrEquiv {ι' : Type _} (e : ι ≃ ι') :
+ ContinuousMultilinearMap R (fun _ : ι => M₂) M₃ ≃
+ ContinuousMultilinearMap R (fun _ : ι' => M₂) M₃
+ where
+ toFun := domDomCongr e
+ invFun := domDomCongr e.symm
+ left_inv _ := ext fun _ => by simp
+ right_inv _ := ext fun _ => by simp
+#align continuous_multilinear_map.dom_dom_congr_equiv ContinuousMultilinearMap.domDomCongrEquiv
+
#print ContinuousMultilinearMap.cons_add /-
/-- In the specific case of continuous multilinear maps on spaces indexed by `fin (n+1)`, where one
can build an element of `Π(i : fin (n+1)), M i` using `cons`, one can express directly the
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -61,7 +61,6 @@ structure ContinuousMultilinearMap (R : Type u) {ι : Type v} (M₁ : ι → Typ
#align continuous_multilinear_map ContinuousMultilinearMap
-/
--- mathport name: «expr [× ]→L[ ] »
notation:25 M "[×" n "]→L[" R "] " M' => ContinuousMultilinearMap R (fun i : Fin n => M) M'
namespace ContinuousMultilinearMap
@@ -134,11 +133,13 @@ theorem ext_iff {f f' : ContinuousMultilinearMap R M₁ M₂} : f = f' ↔ ∀ x
#align continuous_multilinear_map.ext_iff ContinuousMultilinearMap.ext_iff
-/
+#print ContinuousMultilinearMap.map_add /-
@[simp]
theorem map_add [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (x y : M₁ i) :
f (update m i (x + y)) = f (update m i x) + f (update m i y) :=
f.map_add' m i x y
#align continuous_multilinear_map.map_add ContinuousMultilinearMap.map_add
+-/
#print ContinuousMultilinearMap.map_smul /-
@[simp]
@@ -148,14 +149,18 @@ theorem map_smul [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (c : R) (x : M₁
#align continuous_multilinear_map.map_smul ContinuousMultilinearMap.map_smul
-/
+#print ContinuousMultilinearMap.map_coord_zero /-
theorem map_coord_zero {m : ∀ i, M₁ i} (i : ι) (h : m i = 0) : f m = 0 :=
f.toMultilinearMap.map_coord_zero i h
#align continuous_multilinear_map.map_coord_zero ContinuousMultilinearMap.map_coord_zero
+-/
+#print ContinuousMultilinearMap.map_zero /-
@[simp]
theorem map_zero [Nonempty ι] : f 0 = 0 :=
f.toMultilinearMap.map_zero
#align continuous_multilinear_map.map_zero ContinuousMultilinearMap.map_zero
+-/
instance : Zero (ContinuousMultilinearMap R M₁ M₂) :=
⟨{ (0 : MultilinearMap R M₁ M₂) with cont := continuous_const }⟩
@@ -163,15 +168,19 @@ instance : Zero (ContinuousMultilinearMap R M₁ M₂) :=
instance : Inhabited (ContinuousMultilinearMap R M₁ M₂) :=
⟨0⟩
+#print ContinuousMultilinearMap.zero_apply /-
@[simp]
theorem zero_apply (m : ∀ i, M₁ i) : (0 : ContinuousMultilinearMap R M₁ M₂) m = 0 :=
rfl
#align continuous_multilinear_map.zero_apply ContinuousMultilinearMap.zero_apply
+-/
+#print ContinuousMultilinearMap.toMultilinearMap_zero /-
@[simp]
theorem toMultilinearMap_zero : (0 : ContinuousMultilinearMap R M₁ M₂).toMultilinearMap = 0 :=
rfl
#align continuous_multilinear_map.to_multilinear_map_zero ContinuousMultilinearMap.toMultilinearMap_zero
+-/
section SMul
@@ -182,17 +191,21 @@ variable {R' R'' A : Type _} [Monoid R'] [Monoid R''] [Semiring A] [∀ i, Modul
instance : SMul R' (ContinuousMultilinearMap A M₁ M₂) :=
⟨fun c f => { c • f.toMultilinearMap with cont := f.cont.const_smul c }⟩
+#print ContinuousMultilinearMap.smul_apply /-
@[simp]
theorem smul_apply (f : ContinuousMultilinearMap A M₁ M₂) (c : R') (m : ∀ i, M₁ i) :
(c • f) m = c • f m :=
rfl
#align continuous_multilinear_map.smul_apply ContinuousMultilinearMap.smul_apply
+-/
+#print ContinuousMultilinearMap.toMultilinearMap_smul /-
@[simp]
theorem toMultilinearMap_smul (c : R') (f : ContinuousMultilinearMap A M₁ M₂) :
(c • f).toMultilinearMap = c • f.toMultilinearMap :=
rfl
#align continuous_multilinear_map.to_multilinear_map_smul ContinuousMultilinearMap.toMultilinearMap_smul
+-/
instance [SMulCommClass R' R'' M₂] : SMulCommClass R' R'' (ContinuousMultilinearMap A M₁ M₂) :=
⟨fun c₁ c₂ f => ext fun x => smul_comm _ _ _⟩
@@ -217,31 +230,41 @@ variable [ContinuousAdd M₂]
instance : Add (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f f' => ⟨f.toMultilinearMap + f'.toMultilinearMap, f.cont.add f'.cont⟩⟩
+#print ContinuousMultilinearMap.add_apply /-
@[simp]
theorem add_apply (m : ∀ i, M₁ i) : (f + f') m = f m + f' m :=
rfl
#align continuous_multilinear_map.add_apply ContinuousMultilinearMap.add_apply
+-/
+#print ContinuousMultilinearMap.toMultilinearMap_add /-
@[simp]
theorem toMultilinearMap_add (f g : ContinuousMultilinearMap R M₁ M₂) :
(f + g).toMultilinearMap = f.toMultilinearMap + g.toMultilinearMap :=
rfl
#align continuous_multilinear_map.to_multilinear_map_add ContinuousMultilinearMap.toMultilinearMap_add
+-/
+#print ContinuousMultilinearMap.addCommMonoid /-
instance addCommMonoid : AddCommMonoid (ContinuousMultilinearMap R M₁ M₂) :=
toMultilinearMap_injective.AddCommMonoid _ rfl (fun _ _ => rfl) fun _ _ => rfl
#align continuous_multilinear_map.add_comm_monoid ContinuousMultilinearMap.addCommMonoid
+-/
+#print ContinuousMultilinearMap.applyAddHom /-
/-- Evaluation of a `continuous_multilinear_map` at a vector as an `add_monoid_hom`. -/
def applyAddHom (m : ∀ i, M₁ i) : ContinuousMultilinearMap R M₁ M₂ →+ M₂ :=
⟨fun f => f m, rfl, fun _ _ => rfl⟩
#align continuous_multilinear_map.apply_add_hom ContinuousMultilinearMap.applyAddHom
+-/
+#print ContinuousMultilinearMap.sum_apply /-
@[simp]
theorem sum_apply {α : Type _} (f : α → ContinuousMultilinearMap R M₁ M₂) (m : ∀ i, M₁ i)
{s : Finset α} : (∑ a in s, f a) m = ∑ a in s, f a m :=
(applyAddHom m).map_sum f s
#align continuous_multilinear_map.sum_apply ContinuousMultilinearMap.sum_apply
+-/
end ContinuousAdd
@@ -255,11 +278,13 @@ def toContinuousLinearMap [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) : M₁ i
#align continuous_multilinear_map.to_continuous_linear_map ContinuousMultilinearMap.toContinuousLinearMap
-/
+#print ContinuousMultilinearMap.prod /-
/-- The cartesian product of two continuous multilinear maps, as a continuous multilinear map. -/
def prod (f : ContinuousMultilinearMap R M₁ M₂) (g : ContinuousMultilinearMap R M₁ M₃) :
ContinuousMultilinearMap R M₁ (M₂ × M₃) :=
{ f.toMultilinearMap.Prod g.toMultilinearMap with cont := f.cont.prod_mk g.cont }
#align continuous_multilinear_map.prod ContinuousMultilinearMap.prod
+-/
#print ContinuousMultilinearMap.prod_apply /-
@[simp]
@@ -281,18 +306,22 @@ def pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)] [∀ i
#align continuous_multilinear_map.pi ContinuousMultilinearMap.pi
-/
+#print ContinuousMultilinearMap.coe_pi /-
@[simp]
theorem coe_pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
[∀ i, TopologicalSpace (M' i)] [∀ i, Module R (M' i)]
(f : ∀ i, ContinuousMultilinearMap R M₁ (M' i)) : ⇑(pi f) = fun m j => f j m :=
rfl
#align continuous_multilinear_map.coe_pi ContinuousMultilinearMap.coe_pi
+-/
+#print ContinuousMultilinearMap.pi_apply /-
theorem pi_apply {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
[∀ i, TopologicalSpace (M' i)] [∀ i, Module R (M' i)]
(f : ∀ i, ContinuousMultilinearMap R M₁ (M' i)) (m : ∀ i, M₁ i) (j : ι') : pi f m j = f j m :=
rfl
#align continuous_multilinear_map.pi_apply ContinuousMultilinearMap.pi_apply
+-/
section
@@ -334,12 +363,14 @@ def compContinuousLinearMap (g : ContinuousMultilinearMap R M₁' M₄)
#align continuous_multilinear_map.comp_continuous_linear_map ContinuousMultilinearMap.compContinuousLinearMap
-/
+#print ContinuousMultilinearMap.compContinuousLinearMap_apply /-
@[simp]
theorem compContinuousLinearMap_apply (g : ContinuousMultilinearMap R M₁' M₄)
(f : ∀ i : ι, M₁ i →L[R] M₁' i) (m : ∀ i, M₁ i) :
g.compContinuousLinearMap f m = g fun i => f i <| m i :=
rfl
#align continuous_multilinear_map.comp_continuous_linear_map_apply ContinuousMultilinearMap.compContinuousLinearMap_apply
+-/
#print ContinuousLinearMap.compContinuousMultilinearMap /-
/-- Composing a continuous multilinear map with a continuous linear map gives again a
@@ -350,6 +381,7 @@ def ContinuousLinearMap.compContinuousMultilinearMap (g : M₂ →L[R] M₃)
#align continuous_linear_map.comp_continuous_multilinear_map ContinuousLinearMap.compContinuousMultilinearMap
-/
+#print ContinuousLinearMap.compContinuousMultilinearMap_coe /-
@[simp]
theorem ContinuousLinearMap.compContinuousMultilinearMap_coe (g : M₂ →L[R] M₃)
(f : ContinuousMultilinearMap R M₁ M₂) :
@@ -357,6 +389,7 @@ theorem ContinuousLinearMap.compContinuousMultilinearMap_coe (g : M₂ →L[R] M
(g : M₂ → M₃) ∘ (f : (∀ i, M₁ i) → M₂) :=
by ext m; rfl
#align continuous_linear_map.comp_continuous_multilinear_map_coe ContinuousLinearMap.compContinuousMultilinearMap_coe
+-/
#print ContinuousMultilinearMap.piEquiv /-
/-- `continuous_multilinear_map.pi` as an `equiv`. -/
@@ -372,6 +405,7 @@ def piEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
#align continuous_multilinear_map.pi_equiv ContinuousMultilinearMap.piEquiv
-/
+#print ContinuousMultilinearMap.cons_add /-
/-- In the specific case of continuous multilinear maps on spaces indexed by `fin (n+1)`, where one
can build an element of `Π(i : fin (n+1)), M i` using `cons`, one can express directly the
additivity of a multilinear map along the first variable. -/
@@ -379,7 +413,9 @@ theorem cons_add (f : ContinuousMultilinearMap R M M₂) (m : ∀ i : Fin n, M i
f (cons (x + y) m) = f (cons x m) + f (cons y m) :=
f.toMultilinearMap.cons_add m x y
#align continuous_multilinear_map.cons_add ContinuousMultilinearMap.cons_add
+-/
+#print ContinuousMultilinearMap.cons_smul /-
/-- In the specific case of continuous multilinear maps on spaces indexed by `fin (n+1)`, where one
can build an element of `Π(i : fin (n+1)), M i` using `cons`, one can express directly the
multiplicativity of a multilinear map along the first variable. -/
@@ -387,18 +423,23 @@ theorem cons_smul (f : ContinuousMultilinearMap R M M₂) (m : ∀ i : Fin n, M
(x : M 0) : f (cons (c • x) m) = c • f (cons x m) :=
f.toMultilinearMap.cons_smul m c x
#align continuous_multilinear_map.cons_smul ContinuousMultilinearMap.cons_smul
+-/
+#print ContinuousMultilinearMap.map_piecewise_add /-
theorem map_piecewise_add [DecidableEq ι] (m m' : ∀ i, M₁ i) (t : Finset ι) :
f (t.piecewise (m + m') m') = ∑ s in t.powerset, f (s.piecewise m m') :=
f.toMultilinearMap.map_piecewise_add _ _ _
#align continuous_multilinear_map.map_piecewise_add ContinuousMultilinearMap.map_piecewise_add
+-/
+#print ContinuousMultilinearMap.map_add_univ /-
/-- Additivity of a continuous multilinear map along all coordinates at the same time,
writing `f (m + m')` as the sum of `f (s.piecewise m m')` over all sets `s`. -/
theorem map_add_univ [DecidableEq ι] [Fintype ι] (m m' : ∀ i, M₁ i) :
f (m + m') = ∑ s : Finset ι, f (s.piecewise m m') :=
f.toMultilinearMap.map_add_univ _ _
#align continuous_multilinear_map.map_add_univ ContinuousMultilinearMap.map_add_univ
+-/
section ApplySum
@@ -406,6 +447,7 @@ open Fintype Finset
variable {α : ι → Type _} [Fintype ι] (g : ∀ i, α i → M₁ i) (A : ∀ i, Finset (α i))
+#print ContinuousMultilinearMap.map_sum_finset /-
/-- If `f` is continuous multilinear, then `f (Σ_{j₁ ∈ A₁} g₁ j₁, ..., Σ_{jₙ ∈ Aₙ} gₙ jₙ)` is the
sum of `f (g₁ (r 1), ..., gₙ (r n))` where `r` ranges over all functions with `r 1 ∈ A₁`, ...,
`r n ∈ Aₙ`. This follows from multilinearity by expanding successively with respect to each
@@ -414,7 +456,9 @@ theorem map_sum_finset [DecidableEq ι] :
(f fun i => ∑ j in A i, g i j) = ∑ r in piFinset A, f fun i => g i (r i) :=
f.toMultilinearMap.map_sum_finset _ _
#align continuous_multilinear_map.map_sum_finset ContinuousMultilinearMap.map_sum_finset
+-/
+#print ContinuousMultilinearMap.map_sum /-
/-- If `f` is continuous multilinear, then `f (Σ_{j₁} g₁ j₁, ..., Σ_{jₙ} gₙ jₙ)` is the sum of
`f (g₁ (r 1), ..., gₙ (r n))` where `r` ranges over all functions `r`. This follows from
multilinearity by expanding successively with respect to each coordinate. -/
@@ -422,6 +466,7 @@ theorem map_sum [DecidableEq ι] [∀ i, Fintype (α i)] :
(f fun i => ∑ j, g i j) = ∑ r : ∀ i, α i, f fun i => g i (r i) :=
f.toMultilinearMap.map_sum _
#align continuous_multilinear_map.map_sum ContinuousMultilinearMap.map_sum
+-/
end ApplySum
@@ -440,10 +485,12 @@ def restrictScalars (f : ContinuousMultilinearMap A M₁ M₂) : ContinuousMulti
#align continuous_multilinear_map.restrict_scalars ContinuousMultilinearMap.restrictScalars
-/
+#print ContinuousMultilinearMap.coe_restrictScalars /-
@[simp]
theorem coe_restrictScalars (f : ContinuousMultilinearMap A M₁ M₂) : ⇑(f.restrictScalars R) = f :=
rfl
#align continuous_multilinear_map.coe_restrict_scalars ContinuousMultilinearMap.coe_restrictScalars
+-/
end RestrictScalar
@@ -454,11 +501,13 @@ section Ring
variable [Ring R] [∀ i, AddCommGroup (M₁ i)] [AddCommGroup M₂] [∀ i, Module R (M₁ i)] [Module R M₂]
[∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂] (f f' : ContinuousMultilinearMap R M₁ M₂)
+#print ContinuousMultilinearMap.map_sub /-
@[simp]
theorem map_sub [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (x y : M₁ i) :
f (update m i (x - y)) = f (update m i x) - f (update m i y) :=
f.toMultilinearMap.map_sub _ _ _ _
#align continuous_multilinear_map.map_sub ContinuousMultilinearMap.map_sub
+-/
section TopologicalAddGroup
@@ -467,18 +516,22 @@ variable [TopologicalAddGroup M₂]
instance : Neg (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f => { -f.toMultilinearMap with cont := f.cont.neg }⟩
+#print ContinuousMultilinearMap.neg_apply /-
@[simp]
theorem neg_apply (m : ∀ i, M₁ i) : (-f) m = -f m :=
rfl
#align continuous_multilinear_map.neg_apply ContinuousMultilinearMap.neg_apply
+-/
instance : Sub (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f g => { f.toMultilinearMap - g.toMultilinearMap with cont := f.cont.sub g.cont }⟩
+#print ContinuousMultilinearMap.sub_apply /-
@[simp]
theorem sub_apply (m : ∀ i, M₁ i) : (f - f') m = f m - f' m :=
rfl
#align continuous_multilinear_map.sub_apply ContinuousMultilinearMap.sub_apply
+-/
instance : AddCommGroup (ContinuousMultilinearMap R M₁ M₂) :=
toMultilinearMap_injective.AddCommGroup _ rfl (fun _ _ => rfl) (fun _ => rfl) (fun _ _ => rfl)
@@ -538,6 +591,7 @@ instance : Module R' (ContinuousMultilinearMap A M₁ M₂) :=
Function.Injective.module _ ⟨toMultilinearMap, toMultilinearMap_zero, toMultilinearMap_add⟩
toMultilinearMap_injective fun _ _ => rfl
+#print ContinuousMultilinearMap.toMultilinearMapLinear /-
/-- Linear map version of the map `to_multilinear_map` associating to a continuous multilinear map
the corresponding multilinear map. -/
@[simps]
@@ -547,7 +601,9 @@ def toMultilinearMapLinear : ContinuousMultilinearMap A M₁ M₂ →ₗ[R'] Mul
map_add' := toMultilinearMap_add
map_smul' := toMultilinearMap_smul
#align continuous_multilinear_map.to_multilinear_map_linear ContinuousMultilinearMap.toMultilinearMapLinear
+-/
+#print ContinuousMultilinearMap.piLinearEquiv /-
/-- `continuous_multilinear_map.pi` as a `linear_equiv`. -/
@[simps (config := { simpRhs := true })]
def piLinearEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
@@ -558,6 +614,7 @@ def piLinearEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M'
map_add' := fun x y => rfl
map_smul' := fun c x => rfl }
#align continuous_multilinear_map.pi_linear_equiv ContinuousMultilinearMap.piLinearEquiv
+-/
end Module
@@ -566,6 +623,7 @@ section CommAlgebra
variable (R ι) (A : Type _) [Fintype ι] [CommSemiring R] [CommSemiring A] [Algebra R A]
[TopologicalSpace A] [ContinuousMul A]
+#print ContinuousMultilinearMap.mkPiAlgebra /-
/-- The continuous multilinear map on `A^ι`, where `A` is a normed commutative algebra
over `𝕜`, associating to `m` the product of all the `m i`.
@@ -575,11 +633,14 @@ protected def mkPiAlgebra : ContinuousMultilinearMap R (fun i : ι => A) A
cont := continuous_finset_prod _ fun i hi => continuous_apply _
toMultilinearMap := MultilinearMap.mkPiAlgebra R ι A
#align continuous_multilinear_map.mk_pi_algebra ContinuousMultilinearMap.mkPiAlgebra
+-/
+#print ContinuousMultilinearMap.mkPiAlgebra_apply /-
@[simp]
theorem mkPiAlgebra_apply (m : ι → A) : ContinuousMultilinearMap.mkPiAlgebra R ι A m = ∏ i, m i :=
rfl
#align continuous_multilinear_map.mk_pi_algebra_apply ContinuousMultilinearMap.mkPiAlgebra_apply
+-/
end CommAlgebra
@@ -588,6 +649,7 @@ section Algebra
variable (R n) (A : Type _) [CommSemiring R] [Semiring A] [Algebra R A] [TopologicalSpace A]
[ContinuousMul A]
+#print ContinuousMultilinearMap.mkPiAlgebraFin /-
/-- The continuous multilinear map on `A^n`, where `A` is a normed algebra over `𝕜`, associating to
`m` the product of all the `m i`.
@@ -600,14 +662,17 @@ protected def mkPiAlgebraFin : A[×n]→L[R] A
exact continuous_list_prod _ fun i hi => continuous_apply _
toMultilinearMap := MultilinearMap.mkPiAlgebraFin R n A
#align continuous_multilinear_map.mk_pi_algebra_fin ContinuousMultilinearMap.mkPiAlgebraFin
+-/
variable {R n A}
+#print ContinuousMultilinearMap.mkPiAlgebraFin_apply /-
@[simp]
theorem mkPiAlgebraFin_apply (m : Fin n → A) :
ContinuousMultilinearMap.mkPiAlgebraFin R n A m = (List.ofFn m).Prod :=
rfl
#align continuous_multilinear_map.mk_pi_algebra_fin_apply ContinuousMultilinearMap.mkPiAlgebraFin_apply
+-/
end Algebra
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -55,8 +55,8 @@ are modules over `R` with a topological structure. In applications, there will b
conditions between the algebraic and the topological structures, but this is not needed for the
definition. -/
structure ContinuousMultilinearMap (R : Type u) {ι : Type v} (M₁ : ι → Type w₁) (M₂ : Type w₂)
- [Semiring R] [∀ i, AddCommMonoid (M₁ i)] [AddCommMonoid M₂] [∀ i, Module R (M₁ i)] [Module R M₂]
- [∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂] extends MultilinearMap R M₁ M₂ where
+ [Semiring R] [∀ i, AddCommMonoid (M₁ i)] [AddCommMonoid M₂] [∀ i, Module R (M₁ i)] [Module R M₂]
+ [∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂] extends MultilinearMap R M₁ M₂ where
cont : Continuous to_fun
#align continuous_multilinear_map ContinuousMultilinearMap
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -42,7 +42,7 @@ especially when defining iterated derivatives.
open Function Fin Set
-open BigOperators
+open scoped BigOperators
universe u v w w₁ w₁' w₂ w₃ w₄
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -134,9 +134,6 @@ theorem ext_iff {f f' : ContinuousMultilinearMap R M₁ M₂} : f = f' ↔ ∀ x
#align continuous_multilinear_map.ext_iff ContinuousMultilinearMap.ext_iff
-/
-/- warning: continuous_multilinear_map.map_add -> ContinuousMultilinearMap.map_add is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_add ContinuousMultilinearMap.map_addₓ'. -/
@[simp]
theorem map_add [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (x y : M₁ i) :
f (update m i (x + y)) = f (update m i x) + f (update m i y) :=
@@ -151,16 +148,10 @@ theorem map_smul [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (c : R) (x : M₁
#align continuous_multilinear_map.map_smul ContinuousMultilinearMap.map_smul
-/
-/- warning: continuous_multilinear_map.map_coord_zero -> ContinuousMultilinearMap.map_coord_zero is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_coord_zero ContinuousMultilinearMap.map_coord_zeroₓ'. -/
theorem map_coord_zero {m : ∀ i, M₁ i} (i : ι) (h : m i = 0) : f m = 0 :=
f.toMultilinearMap.map_coord_zero i h
#align continuous_multilinear_map.map_coord_zero ContinuousMultilinearMap.map_coord_zero
-/- warning: continuous_multilinear_map.map_zero -> ContinuousMultilinearMap.map_zero is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_zero ContinuousMultilinearMap.map_zeroₓ'. -/
@[simp]
theorem map_zero [Nonempty ι] : f 0 = 0 :=
f.toMultilinearMap.map_zero
@@ -172,20 +163,11 @@ instance : Zero (ContinuousMultilinearMap R M₁ M₂) :=
instance : Inhabited (ContinuousMultilinearMap R M₁ M₂) :=
⟨0⟩
-/- warning: continuous_multilinear_map.zero_apply -> ContinuousMultilinearMap.zero_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.zero_apply ContinuousMultilinearMap.zero_applyₓ'. -/
@[simp]
theorem zero_apply (m : ∀ i, M₁ i) : (0 : ContinuousMultilinearMap R M₁ M₂) m = 0 :=
rfl
#align continuous_multilinear_map.zero_apply ContinuousMultilinearMap.zero_apply
-/- warning: continuous_multilinear_map.to_multilinear_map_zero -> ContinuousMultilinearMap.toMultilinearMap_zero is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂], Eq.{max (succ u2) (succ u3) (succ u4)} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 (OfNat.ofNat.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) 0 (OfNat.mk.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) 0 (Zero.zero.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.hasZero.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17))))) (OfNat.ofNat.{max u2 u3 u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) 0 (OfNat.mk.{max u2 u3 u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) 0 (Zero.zero.{max u2 u3 u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.hasZero.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11))))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂], Eq.{max (max (succ u2) (succ u3)) (succ u4)} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 (OfNat.ofNat.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) 0 (Zero.toOfNat0.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.instZeroContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17)))) (OfNat.ofNat.{max (max u2 u3) u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) 0 (Zero.toOfNat0.{max (max u2 u3) u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.instZeroMultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11)))
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.to_multilinear_map_zero ContinuousMultilinearMap.toMultilinearMap_zeroₓ'. -/
@[simp]
theorem toMultilinearMap_zero : (0 : ContinuousMultilinearMap R M₁ M₂).toMultilinearMap = 0 :=
rfl
@@ -200,18 +182,12 @@ variable {R' R'' A : Type _} [Monoid R'] [Monoid R''] [Semiring A] [∀ i, Modul
instance : SMul R' (ContinuousMultilinearMap A M₁ M₂) :=
⟨fun c f => { c • f.toMultilinearMap with cont := f.cont.const_smul c }⟩
-/- warning: continuous_multilinear_map.smul_apply -> ContinuousMultilinearMap.smul_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.smul_apply ContinuousMultilinearMap.smul_applyₓ'. -/
@[simp]
theorem smul_apply (f : ContinuousMultilinearMap A M₁ M₂) (c : R') (m : ∀ i, M₁ i) :
(c • f) m = c • f m :=
rfl
#align continuous_multilinear_map.smul_apply ContinuousMultilinearMap.smul_apply
-/- warning: continuous_multilinear_map.to_multilinear_map_smul -> ContinuousMultilinearMap.toMultilinearMap_smul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.to_multilinear_map_smul ContinuousMultilinearMap.toMultilinearMap_smulₓ'. -/
@[simp]
theorem toMultilinearMap_smul (c : R') (f : ContinuousMultilinearMap A M₁ M₂) :
(c • f).toMultilinearMap = c • f.toMultilinearMap :=
@@ -241,47 +217,26 @@ variable [ContinuousAdd M₂]
instance : Add (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f f' => ⟨f.toMultilinearMap + f'.toMultilinearMap, f.cont.add f'.cont⟩⟩
-/- warning: continuous_multilinear_map.add_apply -> ContinuousMultilinearMap.add_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.add_apply ContinuousMultilinearMap.add_applyₓ'. -/
@[simp]
theorem add_apply (m : ∀ i, M₁ i) : (f + f') m = f m + f' m :=
rfl
#align continuous_multilinear_map.add_apply ContinuousMultilinearMap.add_apply
-/- warning: continuous_multilinear_map.to_multilinear_map_add -> ContinuousMultilinearMap.toMultilinearMap_add is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.to_multilinear_map_add ContinuousMultilinearMap.toMultilinearMap_addₓ'. -/
@[simp]
theorem toMultilinearMap_add (f g : ContinuousMultilinearMap R M₁ M₂) :
(f + g).toMultilinearMap = f.toMultilinearMap + g.toMultilinearMap :=
rfl
#align continuous_multilinear_map.to_multilinear_map_add ContinuousMultilinearMap.toMultilinearMap_add
-/- warning: continuous_multilinear_map.add_comm_monoid -> ContinuousMultilinearMap.addCommMonoid is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))], AddCommMonoid.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17)
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))], AddCommMonoid.{max (max u4 u3) u2} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17)
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.add_comm_monoid ContinuousMultilinearMap.addCommMonoidₓ'. -/
instance addCommMonoid : AddCommMonoid (ContinuousMultilinearMap R M₁ M₂) :=
toMultilinearMap_injective.AddCommMonoid _ rfl (fun _ _ => rfl) fun _ _ => rfl
#align continuous_multilinear_map.add_comm_monoid ContinuousMultilinearMap.addCommMonoid
-/- warning: continuous_multilinear_map.apply_add_hom -> ContinuousMultilinearMap.applyAddHom is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))], (forall (i : ι), M₁ i) -> (AddMonoidHom.{max u2 u3 u4, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) M₂ (AddMonoid.toAddZeroClass.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (AddCommMonoid.toAddMonoid.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.addCommMonoid.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20))) (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))], (forall (i : ι), M₁ i) -> (AddMonoidHom.{max (max u4 u3) u2, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) M₂ (AddMonoid.toAddZeroClass.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (AddCommMonoid.toAddMonoid.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.addCommMonoid.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20))) (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.apply_add_hom ContinuousMultilinearMap.applyAddHomₓ'. -/
/-- Evaluation of a `continuous_multilinear_map` at a vector as an `add_monoid_hom`. -/
def applyAddHom (m : ∀ i, M₁ i) : ContinuousMultilinearMap R M₁ M₂ →+ M₂ :=
⟨fun f => f m, rfl, fun _ _ => rfl⟩
#align continuous_multilinear_map.apply_add_hom ContinuousMultilinearMap.applyAddHom
-/- warning: continuous_multilinear_map.sum_apply -> ContinuousMultilinearMap.sum_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.sum_apply ContinuousMultilinearMap.sum_applyₓ'. -/
@[simp]
theorem sum_apply {α : Type _} (f : α → ContinuousMultilinearMap R M₁ M₂) (m : ∀ i, M₁ i)
{s : Finset α} : (∑ a in s, f a) m = ∑ a in s, f a m :=
@@ -300,12 +255,6 @@ def toContinuousLinearMap [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) : M₁ i
#align continuous_multilinear_map.to_continuous_linear_map ContinuousMultilinearMap.toContinuousLinearMap
-/
-/- warning: continuous_multilinear_map.prod -> ContinuousMultilinearMap.prod is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} {M₃ : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_6 : AddCommMonoid.{u5} M₃] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_12 : Module.{u1, u5} R M₃ _inst_1 _inst_6] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_18 : TopologicalSpace.{u5} M₃], (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) -> (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => _inst_3 i) _inst_6 (fun (i : ι) => _inst_9 i) _inst_12 (fun (i : ι) => _inst_15 i) _inst_18) -> (ContinuousMultilinearMap.{u1, u2, u3, max u4 u5} R ι M₁ (Prod.{u4, u5} M₂ M₃) _inst_1 (fun (i : ι) => _inst_3 i) (Prod.addCommMonoid.{u4, u5} M₂ M₃ _inst_5 _inst_6) (fun (i : ι) => _inst_9 i) (Prod.module.{u1, u4, u5} R M₂ M₃ _inst_1 _inst_5 _inst_6 _inst_11 _inst_12) (fun (i : ι) => _inst_15 i) (Prod.topologicalSpace.{u4, u5} M₂ M₃ _inst_17 _inst_18))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} {M₃ : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_6 : AddCommMonoid.{u5} M₃] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_12 : Module.{u1, u5} R M₃ _inst_1 _inst_6] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_18 : TopologicalSpace.{u5} M₃], (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) -> (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => _inst_3 i) _inst_6 (fun (i : ι) => _inst_9 i) _inst_12 (fun (i : ι) => _inst_15 i) _inst_18) -> (ContinuousMultilinearMap.{u1, u2, u3, max u5 u4} R ι M₁ (Prod.{u4, u5} M₂ M₃) _inst_1 (fun (i : ι) => _inst_3 i) (Prod.instAddCommMonoidSum.{u4, u5} M₂ M₃ _inst_5 _inst_6) (fun (i : ι) => _inst_9 i) (Prod.module.{u1, u4, u5} R M₂ M₃ _inst_1 _inst_5 _inst_6 _inst_11 _inst_12) (fun (i : ι) => _inst_15 i) (instTopologicalSpaceProd.{u4, u5} M₂ M₃ _inst_17 _inst_18))
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.prod ContinuousMultilinearMap.prodₓ'. -/
/-- The cartesian product of two continuous multilinear maps, as a continuous multilinear map. -/
def prod (f : ContinuousMultilinearMap R M₁ M₂) (g : ContinuousMultilinearMap R M₁ M₃) :
ContinuousMultilinearMap R M₁ (M₂ × M₃) :=
@@ -332,9 +281,6 @@ def pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)] [∀ i
#align continuous_multilinear_map.pi ContinuousMultilinearMap.pi
-/
-/- warning: continuous_multilinear_map.coe_pi -> ContinuousMultilinearMap.coe_pi is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.coe_pi ContinuousMultilinearMap.coe_piₓ'. -/
@[simp]
theorem coe_pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
[∀ i, TopologicalSpace (M' i)] [∀ i, Module R (M' i)]
@@ -342,9 +288,6 @@ theorem coe_pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)
rfl
#align continuous_multilinear_map.coe_pi ContinuousMultilinearMap.coe_pi
-/- warning: continuous_multilinear_map.pi_apply -> ContinuousMultilinearMap.pi_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.pi_apply ContinuousMultilinearMap.pi_applyₓ'. -/
theorem pi_apply {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
[∀ i, TopologicalSpace (M' i)] [∀ i, Module R (M' i)]
(f : ∀ i, ContinuousMultilinearMap R M₁ (M' i)) (m : ∀ i, M₁ i) (j : ι') : pi f m j = f j m :=
@@ -391,9 +334,6 @@ def compContinuousLinearMap (g : ContinuousMultilinearMap R M₁' M₄)
#align continuous_multilinear_map.comp_continuous_linear_map ContinuousMultilinearMap.compContinuousLinearMap
-/
-/- warning: continuous_multilinear_map.comp_continuous_linear_map_apply -> ContinuousMultilinearMap.compContinuousLinearMap_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.comp_continuous_linear_map_apply ContinuousMultilinearMap.compContinuousLinearMap_applyₓ'. -/
@[simp]
theorem compContinuousLinearMap_apply (g : ContinuousMultilinearMap R M₁' M₄)
(f : ∀ i : ι, M₁ i →L[R] M₁' i) (m : ∀ i, M₁ i) :
@@ -410,9 +350,6 @@ def ContinuousLinearMap.compContinuousMultilinearMap (g : M₂ →L[R] M₃)
#align continuous_linear_map.comp_continuous_multilinear_map ContinuousLinearMap.compContinuousMultilinearMap
-/
-/- warning: continuous_linear_map.comp_continuous_multilinear_map_coe -> ContinuousLinearMap.compContinuousMultilinearMap_coe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_linear_map.comp_continuous_multilinear_map_coe ContinuousLinearMap.compContinuousMultilinearMap_coeₓ'. -/
@[simp]
theorem ContinuousLinearMap.compContinuousMultilinearMap_coe (g : M₂ →L[R] M₃)
(f : ContinuousMultilinearMap R M₁ M₂) :
@@ -435,9 +372,6 @@ def piEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
#align continuous_multilinear_map.pi_equiv ContinuousMultilinearMap.piEquiv
-/
-/- warning: continuous_multilinear_map.cons_add -> ContinuousMultilinearMap.cons_add is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.cons_add ContinuousMultilinearMap.cons_addₓ'. -/
/-- In the specific case of continuous multilinear maps on spaces indexed by `fin (n+1)`, where one
can build an element of `Π(i : fin (n+1)), M i` using `cons`, one can express directly the
additivity of a multilinear map along the first variable. -/
@@ -446,9 +380,6 @@ theorem cons_add (f : ContinuousMultilinearMap R M M₂) (m : ∀ i : Fin n, M i
f.toMultilinearMap.cons_add m x y
#align continuous_multilinear_map.cons_add ContinuousMultilinearMap.cons_add
-/- warning: continuous_multilinear_map.cons_smul -> ContinuousMultilinearMap.cons_smul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.cons_smul ContinuousMultilinearMap.cons_smulₓ'. -/
/-- In the specific case of continuous multilinear maps on spaces indexed by `fin (n+1)`, where one
can build an element of `Π(i : fin (n+1)), M i` using `cons`, one can express directly the
multiplicativity of a multilinear map along the first variable. -/
@@ -457,17 +388,11 @@ theorem cons_smul (f : ContinuousMultilinearMap R M M₂) (m : ∀ i : Fin n, M
f.toMultilinearMap.cons_smul m c x
#align continuous_multilinear_map.cons_smul ContinuousMultilinearMap.cons_smul
-/- warning: continuous_multilinear_map.map_piecewise_add -> ContinuousMultilinearMap.map_piecewise_add is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_piecewise_add ContinuousMultilinearMap.map_piecewise_addₓ'. -/
theorem map_piecewise_add [DecidableEq ι] (m m' : ∀ i, M₁ i) (t : Finset ι) :
f (t.piecewise (m + m') m') = ∑ s in t.powerset, f (s.piecewise m m') :=
f.toMultilinearMap.map_piecewise_add _ _ _
#align continuous_multilinear_map.map_piecewise_add ContinuousMultilinearMap.map_piecewise_add
-/- warning: continuous_multilinear_map.map_add_univ -> ContinuousMultilinearMap.map_add_univ is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_add_univ ContinuousMultilinearMap.map_add_univₓ'. -/
/-- Additivity of a continuous multilinear map along all coordinates at the same time,
writing `f (m + m')` as the sum of `f (s.piecewise m m')` over all sets `s`. -/
theorem map_add_univ [DecidableEq ι] [Fintype ι] (m m' : ∀ i, M₁ i) :
@@ -481,9 +406,6 @@ open Fintype Finset
variable {α : ι → Type _} [Fintype ι] (g : ∀ i, α i → M₁ i) (A : ∀ i, Finset (α i))
-/- warning: continuous_multilinear_map.map_sum_finset -> ContinuousMultilinearMap.map_sum_finset is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_sum_finset ContinuousMultilinearMap.map_sum_finsetₓ'. -/
/-- If `f` is continuous multilinear, then `f (Σ_{j₁ ∈ A₁} g₁ j₁, ..., Σ_{jₙ ∈ Aₙ} gₙ jₙ)` is the
sum of `f (g₁ (r 1), ..., gₙ (r n))` where `r` ranges over all functions with `r 1 ∈ A₁`, ...,
`r n ∈ Aₙ`. This follows from multilinearity by expanding successively with respect to each
@@ -493,9 +415,6 @@ theorem map_sum_finset [DecidableEq ι] :
f.toMultilinearMap.map_sum_finset _ _
#align continuous_multilinear_map.map_sum_finset ContinuousMultilinearMap.map_sum_finset
-/- warning: continuous_multilinear_map.map_sum -> ContinuousMultilinearMap.map_sum is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_sum ContinuousMultilinearMap.map_sumₓ'. -/
/-- If `f` is continuous multilinear, then `f (Σ_{j₁} g₁ j₁, ..., Σ_{jₙ} gₙ jₙ)` is the sum of
`f (g₁ (r 1), ..., gₙ (r n))` where `r` ranges over all functions `r`. This follows from
multilinearity by expanding successively with respect to each coordinate. -/
@@ -521,9 +440,6 @@ def restrictScalars (f : ContinuousMultilinearMap A M₁ M₂) : ContinuousMulti
#align continuous_multilinear_map.restrict_scalars ContinuousMultilinearMap.restrictScalars
-/
-/- warning: continuous_multilinear_map.coe_restrict_scalars -> ContinuousMultilinearMap.coe_restrictScalars is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.coe_restrict_scalars ContinuousMultilinearMap.coe_restrictScalarsₓ'. -/
@[simp]
theorem coe_restrictScalars (f : ContinuousMultilinearMap A M₁ M₂) : ⇑(f.restrictScalars R) = f :=
rfl
@@ -538,9 +454,6 @@ section Ring
variable [Ring R] [∀ i, AddCommGroup (M₁ i)] [AddCommGroup M₂] [∀ i, Module R (M₁ i)] [Module R M₂]
[∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂] (f f' : ContinuousMultilinearMap R M₁ M₂)
-/- warning: continuous_multilinear_map.map_sub -> ContinuousMultilinearMap.map_sub is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_sub ContinuousMultilinearMap.map_subₓ'. -/
@[simp]
theorem map_sub [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (x y : M₁ i) :
f (update m i (x - y)) = f (update m i x) - f (update m i y) :=
@@ -554,9 +467,6 @@ variable [TopologicalAddGroup M₂]
instance : Neg (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f => { -f.toMultilinearMap with cont := f.cont.neg }⟩
-/- warning: continuous_multilinear_map.neg_apply -> ContinuousMultilinearMap.neg_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.neg_apply ContinuousMultilinearMap.neg_applyₓ'. -/
@[simp]
theorem neg_apply (m : ∀ i, M₁ i) : (-f) m = -f m :=
rfl
@@ -565,9 +475,6 @@ theorem neg_apply (m : ∀ i, M₁ i) : (-f) m = -f m :=
instance : Sub (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f g => { f.toMultilinearMap - g.toMultilinearMap with cont := f.cont.sub g.cont }⟩
-/- warning: continuous_multilinear_map.sub_apply -> ContinuousMultilinearMap.sub_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.sub_apply ContinuousMultilinearMap.sub_applyₓ'. -/
@[simp]
theorem sub_apply (m : ∀ i, M₁ i) : (f - f') m = f m - f' m :=
rfl
@@ -631,9 +538,6 @@ instance : Module R' (ContinuousMultilinearMap A M₁ M₂) :=
Function.Injective.module _ ⟨toMultilinearMap, toMultilinearMap_zero, toMultilinearMap_add⟩
toMultilinearMap_injective fun _ _ => rfl
-/- warning: continuous_multilinear_map.to_multilinear_map_linear -> ContinuousMultilinearMap.toMultilinearMapLinear is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.to_multilinear_map_linear ContinuousMultilinearMap.toMultilinearMapLinearₓ'. -/
/-- Linear map version of the map `to_multilinear_map` associating to a continuous multilinear map
the corresponding multilinear map. -/
@[simps]
@@ -644,9 +548,6 @@ def toMultilinearMapLinear : ContinuousMultilinearMap A M₁ M₂ →ₗ[R'] Mul
map_smul' := toMultilinearMap_smul
#align continuous_multilinear_map.to_multilinear_map_linear ContinuousMultilinearMap.toMultilinearMapLinear
-/- warning: continuous_multilinear_map.pi_linear_equiv -> ContinuousMultilinearMap.piLinearEquiv is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.pi_linear_equiv ContinuousMultilinearMap.piLinearEquivₓ'. -/
/-- `continuous_multilinear_map.pi` as a `linear_equiv`. -/
@[simps (config := { simpRhs := true })]
def piLinearEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
@@ -665,12 +566,6 @@ section CommAlgebra
variable (R ι) (A : Type _) [Fintype ι] [CommSemiring R] [CommSemiring A] [Algebra R A]
[TopologicalSpace A] [ContinuousMul A]
-/- warning: continuous_multilinear_map.mk_pi_algebra -> ContinuousMultilinearMap.mkPiAlgebra is a dubious translation:
-lean 3 declaration is
- forall (R : Type.{u1}) (ι : Type.{u2}) (A : Type.{u3}) [_inst_1 : Fintype.{u2} ι] [_inst_2 : CommSemiring.{u1} R] [_inst_3 : CommSemiring.{u3} A] [_inst_4 : Algebra.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3)] [_inst_5 : TopologicalSpace.{u3} A] [_inst_6 : ContinuousMul.{u3} A _inst_5 (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))))], ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5
-but is expected to have type
- forall (R : Type.{u1}) (ι : Type.{u2}) (A : Type.{u3}) [_inst_1 : Fintype.{u2} ι] [_inst_2 : CommSemiring.{u1} R] [_inst_3 : CommSemiring.{u3} A] [_inst_4 : Algebra.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3)] [_inst_5 : TopologicalSpace.{u3} A] [_inst_6 : ContinuousMul.{u3} A _inst_5 (NonUnitalNonAssocSemiring.toMul.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3))))], ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra ContinuousMultilinearMap.mkPiAlgebraₓ'. -/
/-- The continuous multilinear map on `A^ι`, where `A` is a normed commutative algebra
over `𝕜`, associating to `m` the product of all the `m i`.
@@ -681,9 +576,6 @@ protected def mkPiAlgebra : ContinuousMultilinearMap R (fun i : ι => A) A
toMultilinearMap := MultilinearMap.mkPiAlgebra R ι A
#align continuous_multilinear_map.mk_pi_algebra ContinuousMultilinearMap.mkPiAlgebra
-/- warning: continuous_multilinear_map.mk_pi_algebra_apply -> ContinuousMultilinearMap.mkPiAlgebra_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra_apply ContinuousMultilinearMap.mkPiAlgebra_applyₓ'. -/
@[simp]
theorem mkPiAlgebra_apply (m : ι → A) : ContinuousMultilinearMap.mkPiAlgebra R ι A m = ∏ i, m i :=
rfl
@@ -696,12 +588,6 @@ section Algebra
variable (R n) (A : Type _) [CommSemiring R] [Semiring A] [Algebra R A] [TopologicalSpace A]
[ContinuousMul A]
-/- warning: continuous_multilinear_map.mk_pi_algebra_fin -> ContinuousMultilinearMap.mkPiAlgebraFin is a dubious translation:
-lean 3 declaration is
- forall (R : Type.{u1}) (n : Nat) (A : Type.{u2}) [_inst_1 : CommSemiring.{u1} R] [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u2} A] [_inst_5 : ContinuousMul.{u2} A _inst_4 (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))))], ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4
-but is expected to have type
- forall (R : Type.{u1}) (n : Nat) (A : Type.{u2}) [_inst_1 : CommSemiring.{u1} R] [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u2} A] [_inst_5 : ContinuousMul.{u2} A _inst_4 (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2)))], ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u2} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra_fin ContinuousMultilinearMap.mkPiAlgebraFinₓ'. -/
/-- The continuous multilinear map on `A^n`, where `A` is a normed algebra over `𝕜`, associating to
`m` the product of all the `m i`.
@@ -717,9 +603,6 @@ protected def mkPiAlgebraFin : A[×n]→L[R] A
variable {R n A}
-/- warning: continuous_multilinear_map.mk_pi_algebra_fin_apply -> ContinuousMultilinearMap.mkPiAlgebraFin_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra_fin_apply ContinuousMultilinearMap.mkPiAlgebraFin_applyₓ'. -/
@[simp]
theorem mkPiAlgebraFin_apply (m : Fin n → A) :
ContinuousMultilinearMap.mkPiAlgebraFin R n A m = (List.ofFn m).Prod :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -418,9 +418,7 @@ theorem ContinuousLinearMap.compContinuousMultilinearMap_coe (g : M₂ →L[R] M
(f : ContinuousMultilinearMap R M₁ M₂) :
(g.compContinuousMultilinearMap f : (∀ i, M₁ i) → M₃) =
(g : M₂ → M₃) ∘ (f : (∀ i, M₁ i) → M₂) :=
- by
- ext m
- rfl
+ by ext m; rfl
#align continuous_linear_map.comp_continuous_multilinear_map_coe ContinuousLinearMap.compContinuousMultilinearMap_coe
#print ContinuousMultilinearMap.piEquiv /-
@@ -432,12 +430,8 @@ def piEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
where
toFun := ContinuousMultilinearMap.pi
invFun f i := (ContinuousLinearMap.proj i : _ →L[R] M' i).compContinuousMultilinearMap f
- left_inv f := by
- ext
- rfl
- right_inv f := by
- ext
- rfl
+ left_inv f := by ext; rfl
+ right_inv f := by ext; rfl
#align continuous_multilinear_map.pi_equiv ContinuousMultilinearMap.piEquiv
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -135,10 +135,7 @@ theorem ext_iff {f f' : ContinuousMultilinearMap R M₁ M₂} : f = f' ↔ ∀ x
-/
/- warning: continuous_multilinear_map.map_add -> ContinuousMultilinearMap.map_add is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : DecidableEq.{succ u2} ι] (m : forall (i : ι), M₁ i) (i : ι) (x : M₁ i) (y : M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i (HAdd.hAdd.{u3, u3, u3} (M₁ i) (M₁ i) (M₁ i) (instHAdd.{u3} (M₁ i) (AddZeroClass.toHasAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))) x y))) (HAdd.hAdd.{u4, u4, u4} M₂ M₂ M₂ (instHAdd.{u4} M₂ (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i y)))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : DecidableEq.{succ u2} ι] (m : forall (i : ι), M₁ i) (i : ι) (x : M₁ i) (y : M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i (HAdd.hAdd.{u3, u3, u3} (M₁ i) (M₁ i) (M₁ i) (instHAdd.{u3} (M₁ i) (AddZeroClass.toAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))) x y))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i (HAdd.hAdd.{u3, u3, u3} (M₁ i) (M₁ i) (M₁ i) (instHAdd.{u3} (M₁ i) (AddZeroClass.toAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))) x y))) (HAdd.hAdd.{u4, u4, u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i y)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) (instHAdd.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) (AddZeroClass.toAdd.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) (AddMonoid.toAddZeroClass.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) _inst_5)))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i y)))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_add ContinuousMultilinearMap.map_addₓ'. -/
@[simp]
theorem map_add [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (x y : M₁ i) :
@@ -155,20 +152,14 @@ theorem map_smul [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (c : R) (x : M₁
-/
/- warning: continuous_multilinear_map.map_coord_zero -> ContinuousMultilinearMap.map_coord_zero is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) {m : forall (i : ι), M₁ i} (i : ι), (Eq.{succ u3} (M₁ i) (m i) (OfNat.ofNat.{u3} (M₁ i) 0 (OfNat.mk.{u3} (M₁ i) 0 (Zero.zero.{u3} (M₁ i) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))))) -> (Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f m) (OfNat.ofNat.{u4} M₂ 0 (OfNat.mk.{u4} M₂ 0 (Zero.zero.{u4} M₂ (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))))))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) {m : forall (i : ι), M₁ i} (i : ι), (Eq.{succ u3} (M₁ i) (m i) (OfNat.ofNat.{u3} (M₁ i) 0 (Zero.toOfNat0.{u3} (M₁ i) (AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) -> (Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f m) (OfNat.ofNat.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) 0 (Zero.toOfNat0.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_5)))))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_coord_zero ContinuousMultilinearMap.map_coord_zeroₓ'. -/
theorem map_coord_zero {m : ∀ i, M₁ i} (i : ι) (h : m i = 0) : f m = 0 :=
f.toMultilinearMap.map_coord_zero i h
#align continuous_multilinear_map.map_coord_zero ContinuousMultilinearMap.map_coord_zero
/- warning: continuous_multilinear_map.map_zero -> ContinuousMultilinearMap.map_zero is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : Nonempty.{succ u2} ι], Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (OfNat.mk.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.zero.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))))) (OfNat.ofNat.{u4} M₂ 0 (OfNat.mk.{u4} M₂ 0 (Zero.zero.{u4} M₂ (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))))))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : Nonempty.{succ u2} ι], Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.toOfNat0.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.toOfNat0.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))) (OfNat.ofNat.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.toOfNat0.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))) 0 (Zero.toOfNat0.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.toOfNat0.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.toOfNat0.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.toOfNat0.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))) _inst_5))))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_zero ContinuousMultilinearMap.map_zeroₓ'. -/
@[simp]
theorem map_zero [Nonempty ι] : f 0 = 0 :=
@@ -182,10 +173,7 @@ instance : Inhabited (ContinuousMultilinearMap R M₁ M₂) :=
⟨0⟩
/- warning: continuous_multilinear_map.zero_apply -> ContinuousMultilinearMap.zero_apply is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (m : forall (i : ι), M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (OfNat.ofNat.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) 0 (OfNat.mk.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) 0 (Zero.zero.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.hasZero.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17)))) m) (OfNat.ofNat.{u4} M₂ 0 (OfNat.mk.{u4} M₂ 0 (Zero.zero.{u4} M₂ (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))))))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (m : forall (i : ι), M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) (OfNat.ofNat.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) 0 (Zero.toOfNat0.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.instZeroContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17))) m) (OfNat.ofNat.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) 0 (Zero.toOfNat0.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_5))))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.zero_apply ContinuousMultilinearMap.zero_applyₓ'. -/
@[simp]
theorem zero_apply (m : ∀ i, M₁ i) : (0 : ContinuousMultilinearMap R M₁ M₂) m = 0 :=
@@ -213,10 +201,7 @@ instance : SMul R' (ContinuousMultilinearMap A M₁ M₂) :=
⟨fun c f => { c • f.toMultilinearMap with cont := f.cont.const_smul c }⟩
/- warning: continuous_multilinear_map.smul_apply -> ContinuousMultilinearMap.smul_apply is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} {M₁ : ι -> Type.{u2}} {M₂ : Type.{u3}} [_inst_3 : forall (i : ι), AddCommMonoid.{u2} (M₁ i)] [_inst_5 : AddCommMonoid.{u3} M₂] [_inst_15 : forall (i : ι), TopologicalSpace.{u2} (M₁ i)] [_inst_17 : TopologicalSpace.{u3} M₂] {R' : Type.{u4}} {A : Type.{u5}} [_inst_20 : Monoid.{u4} R'] [_inst_22 : Semiring.{u5} A] [_inst_23 : forall (i : ι), Module.{u5, u2} A (M₁ i) _inst_22 (_inst_3 i)] [_inst_24 : Module.{u5, u3} A M₂ _inst_22 _inst_5] [_inst_25 : DistribMulAction.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)] [_inst_26 : ContinuousConstSMul.{u4, u3} R' M₂ _inst_17 (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (DistribSMul.toSmulZeroClass.{u4, u3} R' M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5) _inst_25)))] [_inst_27 : SMulCommClass.{u5, u4, u3} A R' M₂ (SMulZeroClass.toHasSmul.{u5, u3} A M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (SMulWithZero.toSmulZeroClass.{u5, u3} A M₂ (MulZeroClass.toHasZero.{u5} A (MulZeroOneClass.toMulZeroClass.{u5} A (MonoidWithZero.toMulZeroOneClass.{u5} A (Semiring.toMonoidWithZero.{u5} A _inst_22)))) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (MulActionWithZero.toSMulWithZero.{u5, u3} A M₂ (Semiring.toMonoidWithZero.{u5} A _inst_22) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (Module.toMulActionWithZero.{u5, u3} A M₂ _inst_22 _inst_5 _inst_24)))) (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (DistribSMul.toSmulZeroClass.{u4, u3} R' M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5) _inst_25)))] (f : ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (c : R') (m : forall (i : ι), M₁ i), Eq.{succ u3} M₂ (coeFn.{max (succ u1) (succ u2) (succ u3), max (max (succ u1) (succ u2)) (succ u3)} (ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (SMul.smul.{u4, max u1 u2 u3} R' (ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.hasSmul.{u1, u2, u3, u4, u5} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_15 i) _inst_17 R' A _inst_20 _inst_22 (fun (i : ι) => _inst_23 i) _inst_24 _inst_25 _inst_26 _inst_27) c f) m) (SMul.smul.{u4, u3} R' M₂ (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (DistribSMul.toSmulZeroClass.{u4, u3} R' M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5) _inst_25))) c (coeFn.{max (succ u1) (succ u2) (succ u3), max (max (succ u1) (succ u2)) (succ u3)} (ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) f m))
-but is expected to have type
- forall {ι : Type.{u3}} {M₁ : ι -> Type.{u4}} {M₂ : Type.{u5}} [_inst_3 : forall (i : ι), AddCommMonoid.{u4} (M₁ i)] [_inst_5 : AddCommMonoid.{u5} M₂] [_inst_15 : forall (i : ι), TopologicalSpace.{u4} (M₁ i)] [_inst_17 : TopologicalSpace.{u5} M₂] {R' : Type.{u1}} {A : Type.{u2}} [_inst_20 : Monoid.{u1} R'] [_inst_22 : Semiring.{u2} A] [_inst_23 : forall (i : ι), Module.{u2, u4} A (M₁ i) _inst_22 (_inst_3 i)] [_inst_24 : Module.{u2, u5} A M₂ _inst_22 _inst_5] [_inst_25 : DistribMulAction.{u1, u5} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)] [_inst_26 : ContinuousConstSMul.{u1, u5} R' M₂ _inst_17 (SMulZeroClass.toSMul.{u1, u5} R' M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribSMul.toSMulZeroClass.{u1, u5} R' M₂ (AddMonoid.toAddZeroClass.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u1, u5} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5) _inst_25)))] [_inst_27 : SMulCommClass.{u2, u1, u5} A R' M₂ (SMulZeroClass.toSMul.{u2, u5} A M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (SMulWithZero.toSMulZeroClass.{u2, u5} A M₂ (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_22)) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (MulActionWithZero.toSMulWithZero.{u2, u5} A M₂ (Semiring.toMonoidWithZero.{u2} A _inst_22) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (Module.toMulActionWithZero.{u2, u5} A M₂ _inst_22 _inst_5 _inst_24)))) (SMulZeroClass.toSMul.{u1, u5} R' M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribSMul.toSMulZeroClass.{u1, u5} R' M₂ (AddMonoid.toAddZeroClass.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u1, u5} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5) _inst_25)))] (f : ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (c : R') (m : forall (i : ι), M₁ i), Eq.{succ u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_23 i) i) _inst_24 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_23 i) i) _inst_24 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_23 i) i) _inst_24 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) (HSMul.hSMul.{u1, max (max u3 u4) u5, max (max u3 u4) u5} R' (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (instHSMul.{u1, max (max u3 u4) u5} R' (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.instSMulContinuousMultilinearMap.{u3, u4, u5, u1, u2} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_15 i) _inst_17 R' A _inst_20 _inst_22 (fun (i : ι) => _inst_23 i) _inst_24 _inst_25 _inst_26 _inst_27)) c f) m) (HSMul.hSMul.{u1, u5, u5} R' ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (instHSMul.{u1, u5} R' ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (SMulZeroClass.toSMul.{u1, u5} R' ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddMonoid.toZero.{u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommMonoid.toAddMonoid.{u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_5)) (DistribSMul.toSMulZeroClass.{u1, u5} R' ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddMonoid.toAddZeroClass.{u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommMonoid.toAddMonoid.{u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_5)) (DistribMulAction.toDistribSMul.{u1, u5} R' ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_20 (AddCommMonoid.toAddMonoid.{u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_5) _inst_25)))) c (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_23 i) i) _inst_24 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_23 i) i) _inst_24 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_23 i) i) _inst_24 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f m))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.smul_apply ContinuousMultilinearMap.smul_applyₓ'. -/
@[simp]
theorem smul_apply (f : ContinuousMultilinearMap A M₁ M₂) (c : R') (m : ∀ i, M₁ i) :
@@ -225,10 +210,7 @@ theorem smul_apply (f : ContinuousMultilinearMap A M₁ M₂) (c : R') (m : ∀
#align continuous_multilinear_map.smul_apply ContinuousMultilinearMap.smul_apply
/- warning: continuous_multilinear_map.to_multilinear_map_smul -> ContinuousMultilinearMap.toMultilinearMap_smul is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} {M₁ : ι -> Type.{u2}} {M₂ : Type.{u3}} [_inst_3 : forall (i : ι), AddCommMonoid.{u2} (M₁ i)] [_inst_5 : AddCommMonoid.{u3} M₂] [_inst_15 : forall (i : ι), TopologicalSpace.{u2} (M₁ i)] [_inst_17 : TopologicalSpace.{u3} M₂] {R' : Type.{u4}} {A : Type.{u5}} [_inst_20 : Monoid.{u4} R'] [_inst_22 : Semiring.{u5} A] [_inst_23 : forall (i : ι), Module.{u5, u2} A (M₁ i) _inst_22 (_inst_3 i)] [_inst_24 : Module.{u5, u3} A M₂ _inst_22 _inst_5] [_inst_25 : DistribMulAction.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)] [_inst_26 : ContinuousConstSMul.{u4, u3} R' M₂ _inst_17 (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (DistribSMul.toSmulZeroClass.{u4, u3} R' M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5) _inst_25)))] [_inst_27 : SMulCommClass.{u5, u4, u3} A R' M₂ (SMulZeroClass.toHasSmul.{u5, u3} A M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (SMulWithZero.toSmulZeroClass.{u5, u3} A M₂ (MulZeroClass.toHasZero.{u5} A (MulZeroOneClass.toMulZeroClass.{u5} A (MonoidWithZero.toMulZeroOneClass.{u5} A (Semiring.toMonoidWithZero.{u5} A _inst_22)))) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (MulActionWithZero.toSMulWithZero.{u5, u3} A M₂ (Semiring.toMonoidWithZero.{u5} A _inst_22) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (Module.toMulActionWithZero.{u5, u3} A M₂ _inst_22 _inst_5 _inst_24)))) (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (DistribSMul.toSmulZeroClass.{u4, u3} R' M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5) _inst_25)))] (c : R') (f : ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (succ u1) (succ u2) (succ u3)} (MultilinearMap.{u5, u2, u3, u1} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24) (ContinuousMultilinearMap.toMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17 (SMul.smul.{u4, max u1 u2 u3} R' (ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.hasSmul.{u1, u2, u3, u4, u5} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_15 i) _inst_17 R' A _inst_20 _inst_22 (fun (i : ι) => _inst_23 i) _inst_24 _inst_25 _inst_26 _inst_27) c f)) (SMul.smul.{u4, max u1 u2 u3} R' (MultilinearMap.{u5, u2, u3, u1} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24) (MultilinearMap.hasSmul.{u2, u3, u1, u4, u5} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_5 R' A _inst_20 _inst_22 (fun (i : ι) => _inst_23 i) _inst_25 _inst_24 _inst_27) c (ContinuousMultilinearMap.toMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17 f))
-but is expected to have type
- forall {ι : Type.{u3}} {M₁ : ι -> Type.{u4}} {M₂ : Type.{u5}} [_inst_3 : forall (i : ι), AddCommMonoid.{u4} (M₁ i)] [_inst_5 : AddCommMonoid.{u5} M₂] [_inst_15 : forall (i : ι), TopologicalSpace.{u4} (M₁ i)] [_inst_17 : TopologicalSpace.{u5} M₂] {R' : Type.{u1}} {A : Type.{u2}} [_inst_20 : Monoid.{u1} R'] [_inst_22 : Semiring.{u2} A] [_inst_23 : forall (i : ι), Module.{u2, u4} A (M₁ i) _inst_22 (_inst_3 i)] [_inst_24 : Module.{u2, u5} A M₂ _inst_22 _inst_5] [_inst_25 : DistribMulAction.{u1, u5} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)] [_inst_26 : ContinuousConstSMul.{u1, u5} R' M₂ _inst_17 (SMulZeroClass.toSMul.{u1, u5} R' M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribSMul.toSMulZeroClass.{u1, u5} R' M₂ (AddMonoid.toAddZeroClass.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u1, u5} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5) _inst_25)))] [_inst_27 : SMulCommClass.{u2, u1, u5} A R' M₂ (SMulZeroClass.toSMul.{u2, u5} A M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (SMulWithZero.toSMulZeroClass.{u2, u5} A M₂ (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_22)) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (MulActionWithZero.toSMulWithZero.{u2, u5} A M₂ (Semiring.toMonoidWithZero.{u2} A _inst_22) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (Module.toMulActionWithZero.{u2, u5} A M₂ _inst_22 _inst_5 _inst_24)))) (SMulZeroClass.toSMul.{u1, u5} R' M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribSMul.toSMulZeroClass.{u1, u5} R' M₂ (AddMonoid.toAddZeroClass.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u1, u5} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5) _inst_25)))] (c : R') (f : ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (max (succ u3) (succ u4)) (succ u5)} (MultilinearMap.{u2, u4, u5, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24) (ContinuousMultilinearMap.toMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17 (HSMul.hSMul.{u1, max (max u3 u4) u5, max (max u3 u4) u5} R' (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (instHSMul.{u1, max (max u3 u4) u5} R' (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.instSMulContinuousMultilinearMap.{u3, u4, u5, u1, u2} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_15 i) _inst_17 R' A _inst_20 _inst_22 (fun (i : ι) => _inst_23 i) _inst_24 _inst_25 _inst_26 _inst_27)) c f)) (HSMul.hSMul.{u1, max (max u3 u4) u5, max (max u3 u4) u5} R' (MultilinearMap.{u2, u4, u5, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24) (MultilinearMap.{u2, u4, u5, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24) (instHSMul.{u1, max (max u3 u4) u5} R' (MultilinearMap.{u2, u4, u5, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24) (MultilinearMap.instSMulMultilinearMap.{u4, u5, u3, u1, u2} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_5 R' A _inst_20 _inst_22 (fun (i : ι) => _inst_23 i) _inst_25 _inst_24 _inst_27)) c (ContinuousMultilinearMap.toMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17 f))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.to_multilinear_map_smul ContinuousMultilinearMap.toMultilinearMap_smulₓ'. -/
@[simp]
theorem toMultilinearMap_smul (c : R') (f : ContinuousMultilinearMap A M₁ M₂) :
@@ -260,10 +242,7 @@ instance : Add (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f f' => ⟨f.toMultilinearMap + f'.toMultilinearMap, f.cont.add f'.cont⟩⟩
/- warning: continuous_multilinear_map.add_apply -> ContinuousMultilinearMap.add_apply is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (f' : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))] (m : forall (i : ι), M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (HAdd.hAdd.{max u2 u3 u4, max u2 u3 u4, max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (instHAdd.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.hasAdd.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20)) f f') m) (HAdd.hAdd.{u4, u4, u4} M₂ M₂ M₂ (instHAdd.{u4} M₂ (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f m) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f' m))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (f' : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))] (m : forall (i : ι), M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) (HAdd.hAdd.{max (max u2 u3) u4, max (max u2 u3) u4, max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (instHAdd.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.instAddContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20)) f f') m) (HAdd.hAdd.{u4, u4, u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (instHAdd.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddZeroClass.toAdd.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddMonoid.toAddZeroClass.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_5)))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f' m))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.add_apply ContinuousMultilinearMap.add_applyₓ'. -/
@[simp]
theorem add_apply (m : ∀ i, M₁ i) : (f + f') m = f m + f' m :=
@@ -271,10 +250,7 @@ theorem add_apply (m : ∀ i, M₁ i) : (f + f') m = f m + f' m :=
#align continuous_multilinear_map.add_apply ContinuousMultilinearMap.add_apply
/- warning: continuous_multilinear_map.to_multilinear_map_add -> ContinuousMultilinearMap.toMultilinearMap_add is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (g : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (succ u2) (succ u3) (succ u4)} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 (HAdd.hAdd.{max u2 u3 u4, max u2 u3 u4, max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (instHAdd.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.hasAdd.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20)) f g)) (HAdd.hAdd.{max u2 u3 u4, max u2 u3 u4, max u2 u3 u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (instHAdd.{max u2 u3 u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.hasAdd.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11)) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 f) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 g))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (g : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (max (succ u2) (succ u3)) (succ u4)} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 (HAdd.hAdd.{max (max u2 u3) u4, max (max u2 u3) u4, max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (instHAdd.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.instAddContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20)) f g)) (HAdd.hAdd.{max (max u2 u3) u4, max (max u2 u3) u4, max (max u2 u3) u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (instHAdd.{max (max u2 u3) u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.instAddMultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11)) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 f) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 g))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.to_multilinear_map_add ContinuousMultilinearMap.toMultilinearMap_addₓ'. -/
@[simp]
theorem toMultilinearMap_add (f g : ContinuousMultilinearMap R M₁ M₂) :
@@ -304,10 +280,7 @@ def applyAddHom (m : ∀ i, M₁ i) : ContinuousMultilinearMap R M₁ M₂ →+
#align continuous_multilinear_map.apply_add_hom ContinuousMultilinearMap.applyAddHom
/- warning: continuous_multilinear_map.sum_apply -> ContinuousMultilinearMap.sum_apply is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))] {α : Type.{u5}} (f : α -> (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17)) (m : forall (i : ι), M₁ i) {s : Finset.{u5} α}, Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (Finset.sum.{max u2 u3 u4, u5} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) α (ContinuousMultilinearMap.addCommMonoid.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20) s (fun (a : α) => f a)) m) (Finset.sum.{u4, u5} M₂ α _inst_5 s (fun (a : α) => coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (f a) m))
-but is expected to have type
- forall {R : Type.{u2}} {ι : Type.{u3}} {M₁ : ι -> Type.{u4}} {M₂ : Type.{u5}} [_inst_1 : Semiring.{u2} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u4} (M₁ i)] [_inst_5 : AddCommMonoid.{u5} M₂] [_inst_9 : forall (i : ι), Module.{u2, u4} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u2, u5} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u4} (M₁ i)] [_inst_17 : TopologicalSpace.{u5} M₂] [_inst_20 : ContinuousAdd.{u5} M₂ _inst_17 (AddZeroClass.toAdd.{u5} M₂ (AddMonoid.toAddZeroClass.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)))] {α : Type.{u1}} (f : α -> (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17)) (m : forall (i : ι), M₁ i) {s : Finset.{u1} α}, Eq.{succ u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) (Finset.sum.{max (max u3 u4) u5, u1} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) α (ContinuousMultilinearMap.addCommMonoid.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20) s (fun (a : α) => f a)) m) (Finset.sum.{u5, u1} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) α _inst_5 s (fun (a : α) => FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) (f a) m))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.sum_apply ContinuousMultilinearMap.sum_applyₓ'. -/
@[simp]
theorem sum_apply {α : Type _} (f : α → ContinuousMultilinearMap R M₁ M₂) (m : ∀ i, M₁ i)
@@ -360,10 +333,7 @@ def pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)] [∀ i
-/
/- warning: continuous_multilinear_map.coe_pi -> ContinuousMultilinearMap.coe_pi is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] {ι' : Type.{u4}} {M' : ι' -> Type.{u5}} [_inst_20 : forall (i : ι'), AddCommMonoid.{u5} (M' i)] [_inst_21 : forall (i : ι'), TopologicalSpace.{u5} (M' i)] [_inst_22 : forall (i : ι'), Module.{u1, u5} R (M' i) _inst_1 (_inst_20 i)] (f : forall (i : ι'), ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ (M' i) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 i) (fun (i : ι) => _inst_9 i) (_inst_22 i) (fun (i : ι) => _inst_15 i) (_inst_21 i)), Eq.{max (max (succ u2) (succ u3)) (succ (max u4 u5))} ((forall (i : ι), M₁ i) -> (forall (i : ι'), M' i)) (coeFn.{max (succ u2) (succ u3) (succ (max u4 u5)), max (max (succ u2) (succ u3)) (succ (max u4 u5))} (ContinuousMultilinearMap.{u1, u2, u3, max u4 u5} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u4, u5} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => _inst_9 i) (Pi.module.{u4, u5, u1} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => _inst_15 i) (Pi.topologicalSpace.{u4, u5} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, max u4 u5} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u4, u5} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => _inst_9 i) (Pi.module.{u4, u5, u1} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => _inst_15 i) (Pi.topologicalSpace.{u4, u5} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) => (forall (i : ι), M₁ i) -> (forall (i : ι'), M' i)) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, max u4 u5} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u4, u5} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => _inst_9 i) (Pi.module.{u4, u5, u1} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => _inst_15 i) (Pi.topologicalSpace.{u4, u5} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) (ContinuousMultilinearMap.pi.{u1, u2, u3, u4, u5} R ι M₁ _inst_1 (fun (i : ι) => _inst_3 i) (fun (i : ι) => _inst_9 i) (fun (i : ι) => _inst_15 i) ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_21 i) (fun (i : ι') => _inst_22 i) f)) (fun (m : forall (i : ι), M₁ i) (j : ι') => coeFn.{max (succ u2) (succ u3) (succ u5), max (max (succ u2) (succ u3)) (succ u5)} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ (M' j) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 j) (fun (i : ι) => _inst_9 i) (_inst_22 j) (fun (i : ι) => _inst_15 i) (_inst_21 j)) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ (M' j) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 j) (fun (i : ι) => _inst_9 i) (_inst_22 j) (fun (i : ι) => _inst_15 i) (_inst_21 j)) => (forall (i : ι), M₁ i) -> (M' j)) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u5} R ι M₁ (M' j) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 j) (fun (i : ι) => _inst_9 i) (_inst_22 j) (fun (i : ι) => _inst_15 i) (_inst_21 j)) (f j) m)
-but is expected to have type
- forall {R : Type.{u3}} {ι : Type.{u4}} {M₁ : ι -> Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u5} (M₁ i)] [_inst_9 : forall (i : ι), Module.{u3, u5} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_15 : forall (i : ι), TopologicalSpace.{u5} (M₁ i)] {ι' : Type.{u2}} {M' : ι' -> Type.{u1}} [_inst_20 : forall (i : ι'), AddCommMonoid.{u1} (M' i)] [_inst_21 : forall (i : ι'), TopologicalSpace.{u1} (M' i)] [_inst_22 : forall (i : ι'), Module.{u3, u1} R (M' i) _inst_1 (_inst_20 i)] (f : forall (i : ι'), ContinuousMultilinearMap.{u3, u4, u5, u1} R ι M₁ (M' i) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 i) (fun (i : ι) => _inst_9 i) (_inst_22 i) (fun (i : ι) => _inst_15 i) (_inst_21 i)), Eq.{max (max (max (succ u4) (succ u5)) (succ u2)) (succ u1)} (forall (ᾰ : forall (i : ι), M₁ i), (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => forall (i : ι'), M' i) ᾰ) (FunLike.coe.{max (max (succ u4) (succ u5)) (succ (max u2 u1)), max (succ u4) (succ u5), succ (max u2 u1)} (ContinuousMultilinearMap.{u3, u4, u5, max u2 u1} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u2, u1} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u2, u1, u3} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => forall (i : ι'), M' i) _x) (ContinuousMapClass.toFunLike.{max (max u4 u5) u2 u1, max u4 u5, max u2 u1} (ContinuousMultilinearMap.{u3, u4, u5, max u2 u1} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u2, u1} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u2, u1, u3} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) (forall (i : ι), M₁ i) (forall (i : ι'), M' i) (Pi.topologicalSpace.{u4, u5} ι (fun (i : ι) => M₁ i) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i)) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a)) (ContinuousMultilinearMap.continuousMapClass.{u3, u4, u5, max u2 u1} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u2, u1} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u2, u1, u3} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a)))) (ContinuousMultilinearMap.pi.{u3, u4, u5, u2, u1} R ι M₁ _inst_1 (fun (i : ι) => _inst_3 i) (fun (i : ι) => _inst_9 i) (fun (i : ι) => _inst_15 i) ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_21 i) (fun (i : ι') => _inst_22 i) f)) (fun (m : forall (i : ι), M₁ i) (j : ι') => FunLike.coe.{max (max (succ u4) (succ u5)) (succ u1), max (succ u4) (succ u5), succ u1} (ContinuousMultilinearMap.{u3, u4, u5, u1} R ι M₁ (M' j) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (_inst_20 j) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (_inst_22 j) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (_inst_21 j)) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M' j) _x) (ContinuousMapClass.toFunLike.{max (max u4 u5) u1, max u4 u5, u1} (ContinuousMultilinearMap.{u3, u4, u5, u1} R ι M₁ (M' j) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (_inst_20 j) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (_inst_22 j) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (_inst_21 j)) (forall (i : ι), M₁ i) (M' j) (Pi.topologicalSpace.{u4, u5} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) (_inst_21 j) (ContinuousMultilinearMap.continuousMapClass.{u3, u4, u5, u1} R ι M₁ (M' j) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (_inst_20 j) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (_inst_22 j) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (_inst_21 j))) (f j) m)
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.coe_pi ContinuousMultilinearMap.coe_piₓ'. -/
@[simp]
theorem coe_pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
@@ -373,10 +343,7 @@ theorem coe_pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)
#align continuous_multilinear_map.coe_pi ContinuousMultilinearMap.coe_pi
/- warning: continuous_multilinear_map.pi_apply -> ContinuousMultilinearMap.pi_apply is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] {ι' : Type.{u4}} {M' : ι' -> Type.{u5}} [_inst_20 : forall (i : ι'), AddCommMonoid.{u5} (M' i)] [_inst_21 : forall (i : ι'), TopologicalSpace.{u5} (M' i)] [_inst_22 : forall (i : ι'), Module.{u1, u5} R (M' i) _inst_1 (_inst_20 i)] (f : forall (i : ι'), ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ (M' i) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 i) (fun (i : ι) => _inst_9 i) (_inst_22 i) (fun (i : ι) => _inst_15 i) (_inst_21 i)) (m : forall (i : ι), M₁ i) (j : ι'), Eq.{succ u5} ((fun (i : ι') => M' i) j) (coeFn.{max (succ u2) (succ u3) (succ (max u4 u5)), max (max (succ u2) (succ u3)) (succ (max u4 u5))} (ContinuousMultilinearMap.{u1, u2, u3, max u4 u5} R ι M₁ (forall (i : ι'), (fun (i : ι') => M' i) i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u4, u5} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) (fun (i : ι') => (fun (i : ι') => _inst_20 i) i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u4, u5, u1} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) R _inst_1 (fun (i : ι') => (fun (i : ι') => _inst_20 i) i) (fun (i : ι') => (fun (i : ι') => _inst_22 i) i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u4, u5} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) (fun (a : ι') => (fun (i : ι') => _inst_21 i) a))) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, max u4 u5} R ι M₁ (forall (i : ι'), (fun (i : ι') => M' i) i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u4, u5} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) (fun (i : ι') => (fun (i : ι') => _inst_20 i) i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u4, u5, u1} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) R _inst_1 (fun (i : ι') => (fun (i : ι') => _inst_20 i) i) (fun (i : ι') => (fun (i : ι') => _inst_22 i) i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u4, u5} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) (fun (a : ι') => (fun (i : ι') => _inst_21 i) a))) => (forall (i : ι), M₁ i) -> (forall (i : ι'), (fun (i : ι') => M' i) i)) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, max u4 u5} R ι M₁ (forall (i : ι'), (fun (i : ι') => M' i) i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u4, u5} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) (fun (i : ι') => (fun (i : ι') => _inst_20 i) i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u4, u5, u1} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) R _inst_1 (fun (i : ι') => (fun (i : ι') => _inst_20 i) i) (fun (i : ι') => (fun (i : ι') => _inst_22 i) i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u4, u5} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) (fun (a : ι') => (fun (i : ι') => _inst_21 i) a))) (ContinuousMultilinearMap.pi.{u1, u2, u3, u4, u5} R ι M₁ _inst_1 (fun (i : ι) => _inst_3 i) (fun (i : ι) => _inst_9 i) (fun (i : ι) => _inst_15 i) ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_21 i) (fun (i : ι') => _inst_22 i) f) m j) (coeFn.{max (succ u2) (succ u3) (succ u5), max (max (succ u2) (succ u3)) (succ u5)} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ (M' j) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 j) (fun (i : ι) => _inst_9 i) (_inst_22 j) (fun (i : ι) => _inst_15 i) (_inst_21 j)) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ (M' j) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 j) (fun (i : ι) => _inst_9 i) (_inst_22 j) (fun (i : ι) => _inst_15 i) (_inst_21 j)) => (forall (i : ι), M₁ i) -> (M' j)) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u5} R ι M₁ (M' j) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 j) (fun (i : ι) => _inst_9 i) (_inst_22 j) (fun (i : ι) => _inst_15 i) (_inst_21 j)) (f j) m)
-but is expected to have type
- forall {R : Type.{u3}} {ι : Type.{u4}} {M₁ : ι -> Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u5} (M₁ i)] [_inst_9 : forall (i : ι), Module.{u3, u5} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_15 : forall (i : ι), TopologicalSpace.{u5} (M₁ i)] {ι' : Type.{u2}} {M' : ι' -> Type.{u1}} [_inst_20 : forall (i : ι'), AddCommMonoid.{u1} (M' i)] [_inst_21 : forall (i : ι'), TopologicalSpace.{u1} (M' i)] [_inst_22 : forall (i : ι'), Module.{u3, u1} R (M' i) _inst_1 (_inst_20 i)] (f : forall (i : ι'), ContinuousMultilinearMap.{u3, u4, u5, u1} R ι M₁ (M' i) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 i) (fun (i : ι) => _inst_9 i) (_inst_22 i) (fun (i : ι) => _inst_15 i) (_inst_21 i)) (m : forall (i : ι), M₁ i) (j : ι'), Eq.{succ u1} (M' j) (FunLike.coe.{max (max (succ u4) (succ u5)) (succ (max u2 u1)), max (succ u4) (succ u5), succ (max u2 u1)} (ContinuousMultilinearMap.{u3, u4, u5, max u2 u1} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u2, u1} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u2, u1, u3} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => forall (i : ι'), M' i) _x) (ContinuousMapClass.toFunLike.{max (max u4 u5) u2 u1, max u4 u5, max u2 u1} (ContinuousMultilinearMap.{u3, u4, u5, max u2 u1} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u2, u1} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u2, u1, u3} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) (forall (i : ι), M₁ i) (forall (i : ι'), M' i) (Pi.topologicalSpace.{u4, u5} ι (fun (i : ι) => M₁ i) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i)) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a)) (ContinuousMultilinearMap.continuousMapClass.{u3, u4, u5, max u2 u1} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u2, u1} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u2, u1, u3} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a)))) (ContinuousMultilinearMap.pi.{u3, u4, u5, u2, u1} R ι M₁ _inst_1 (fun (i : ι) => _inst_3 i) (fun (i : ι) => _inst_9 i) (fun (i : ι) => _inst_15 i) ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_21 i) (fun (i : ι') => _inst_22 i) f) m j) (FunLike.coe.{max (max (succ u4) (succ u5)) (succ u1), max (succ u4) (succ u5), succ u1} (ContinuousMultilinearMap.{u3, u4, u5, u1} R ι M₁ (M' j) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (_inst_20 j) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (_inst_22 j) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (_inst_21 j)) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M' j) _x) (ContinuousMapClass.toFunLike.{max (max u4 u5) u1, max u4 u5, u1} (ContinuousMultilinearMap.{u3, u4, u5, u1} R ι M₁ (M' j) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (_inst_20 j) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (_inst_22 j) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (_inst_21 j)) (forall (i : ι), M₁ i) (M' j) (Pi.topologicalSpace.{u4, u5} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) (_inst_21 j) (ContinuousMultilinearMap.continuousMapClass.{u3, u4, u5, u1} R ι M₁ (M' j) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (_inst_20 j) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (_inst_22 j) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (_inst_21 j))) (f j) m)
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.pi_apply ContinuousMultilinearMap.pi_applyₓ'. -/
theorem pi_apply {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
[∀ i, TopologicalSpace (M' i)] [∀ i, Module R (M' i)]
@@ -425,10 +392,7 @@ def compContinuousLinearMap (g : ContinuousMultilinearMap R M₁' M₄)
-/
/- warning: continuous_multilinear_map.comp_continuous_linear_map_apply -> ContinuousMultilinearMap.compContinuousLinearMap_apply is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₁' : ι -> Type.{u4}} {M₄ : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_4 : forall (i : ι), AddCommMonoid.{u4} (M₁' i)] [_inst_7 : AddCommMonoid.{u5} M₄] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_10 : forall (i : ι), Module.{u1, u4} R (M₁' i) _inst_1 (_inst_4 i)] [_inst_13 : Module.{u1, u5} R M₄ _inst_1 _inst_7] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_16 : forall (i : ι), TopologicalSpace.{u4} (M₁' i)] [_inst_19 : TopologicalSpace.{u5} M₄] (g : ContinuousMultilinearMap.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_16 i) _inst_19) (f : forall (i : ι), ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) (m : forall (i : ι), M₁ i), Eq.{succ u5} M₄ (coeFn.{max (succ u2) (succ u3) (succ u5), max (max (succ u2) (succ u3)) (succ u5)} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι (fun (i : ι) => M₁ i) M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_19) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u5} R ι (fun (i : ι) => M₁ i) M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_19) => (forall (i : ι), M₁ i) -> M₄) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u5} R ι (fun (i : ι) => M₁ i) M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_19) (ContinuousMultilinearMap.compContinuousLinearMap.{u1, u2, u3, u4, u5} R ι (fun (i : ι) => M₁ i) M₁' M₄ _inst_1 (fun (i : ι) => _inst_3 i) (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_9 i) (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_15 i) (fun (i : ι) => _inst_16 i) _inst_19 g f) m) (coeFn.{max (succ u2) (succ u4) (succ u5), max (max (succ u2) (succ u4)) (succ u5)} (ContinuousMultilinearMap.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_16 i) _inst_19) (fun (_x : ContinuousMultilinearMap.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_16 i) _inst_19) => (forall (i : ι), M₁' i) -> M₄) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_16 i) _inst_19) g (fun (i : ι) => coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) (fun (_x : ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) => (M₁ i) -> (M₁' i)) (ContinuousLinearMap.toFun.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) (f i) (m i)))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₁' : ι -> Type.{u4}} {M₄ : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_4 : forall (i : ι), AddCommMonoid.{u4} (M₁' i)] [_inst_7 : AddCommMonoid.{u5} M₄] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_10 : forall (i : ι), Module.{u1, u4} R (M₁' i) _inst_1 (_inst_4 i)] [_inst_13 : Module.{u1, u5} R M₄ _inst_1 _inst_7] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_16 : forall (i : ι), TopologicalSpace.{u4} (M₁' i)] [_inst_19 : TopologicalSpace.{u5} M₄] (g : ContinuousMultilinearMap.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_16 i) _inst_19) (f : forall (i : ι), ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) (m : forall (i : ι), M₁ i), Eq.{succ u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), (fun (i : ι) => M₁ i) i) => M₄) m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u5), max (succ u2) (succ u3), succ u5} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι (fun (i : ι) => M₁ i) M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_19) (forall (i : ι), (fun (i : ι) => M₁ i) i) (fun (_x : forall (i : ι), (fun (i : ι) => M₁ i) i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), (fun (i : ι) => M₁ i) i) => M₄) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u5, max u2 u3, u5} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι (fun (i : ι) => M₁ i) M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_19) (forall (i : ι), (fun (i : ι) => M₁ i) i) M₄ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => (fun (i : ι) => M₁ i) i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_19 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u5} R ι (fun (i : ι) => M₁ i) M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_19)) (ContinuousMultilinearMap.compContinuousLinearMap.{u1, u2, u3, u4, u5} R ι (fun (i : ι) => M₁ i) M₁' M₄ _inst_1 (fun (i : ι) => _inst_3 i) (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_9 i) (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_15 i) (fun (i : ι) => _inst_16 i) _inst_19 g f) m) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u4), succ u5} (ContinuousMultilinearMap.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_10 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_16 i) i) _inst_19) (forall (i : ι), M₁' i) (fun (_x : forall (i : ι), M₁' i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁' i) => M₄) _x) (ContinuousMapClass.toFunLike.{max (max u2 u4) u5, max u2 u4, u5} (ContinuousMultilinearMap.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_10 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_16 i) i) _inst_19) (forall (i : ι), M₁' i) M₄ (Pi.topologicalSpace.{u2, u4} ι (fun (i : ι) => M₁' i) (fun (a : ι) => (fun (i : ι) => _inst_16 i) a)) _inst_19 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_10 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_16 i) i) _inst_19)) g (fun (i : ι) => FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) (M₁ i) (fun (_x : M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : M₁ i) => M₁' i) _x) (ContinuousMapClass.toFunLike.{max u3 u4, u3, u4} (ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) (M₁ i) (M₁' i) (_inst_15 i) (_inst_16 i) (ContinuousSemilinearMapClass.toContinuousMapClass.{max u3 u4, u1, u1, u3, u4} (ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i) (ContinuousLinearMap.continuousSemilinearMapClass.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)))) (f i) (m i)))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.comp_continuous_linear_map_apply ContinuousMultilinearMap.compContinuousLinearMap_applyₓ'. -/
@[simp]
theorem compContinuousLinearMap_apply (g : ContinuousMultilinearMap R M₁' M₄)
@@ -447,10 +411,7 @@ def ContinuousLinearMap.compContinuousMultilinearMap (g : M₂ →L[R] M₃)
-/
/- warning: continuous_linear_map.comp_continuous_multilinear_map_coe -> ContinuousLinearMap.compContinuousMultilinearMap_coe is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} {M₃ : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_6 : AddCommMonoid.{u5} M₃] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_12 : Module.{u1, u5} R M₃ _inst_1 _inst_6] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_18 : TopologicalSpace.{u5} M₃] (g : ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (max (succ u2) (succ u3)) (succ u5)} ((fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18) => (forall (i : ι), M₁ i) -> M₃) (ContinuousLinearMap.compContinuousMultilinearMap.{u1, u2, u3, u4, u5} R ι M₁ M₂ M₃ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 _inst_6 (fun (i : ι) => _inst_9 i) _inst_11 _inst_12 (fun (i : ι) => _inst_15 i) _inst_17 _inst_18 g f)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (max (succ u2) (succ u3)) (succ u5)} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18) => (forall (i : ι), M₁ i) -> M₃) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18) (ContinuousLinearMap.compContinuousMultilinearMap.{u1, u2, u3, u4, u5} R ι M₁ M₂ M₃ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 _inst_6 (fun (i : ι) => _inst_9 i) _inst_11 _inst_12 (fun (i : ι) => _inst_15 i) _inst_17 _inst_18 g f)) (Function.comp.{max (succ u2) (succ u3), succ u4, succ u5} (forall (i : ι), M₁ i) M₂ M₃ (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) (fun (_x : ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) => M₂ -> M₃) (ContinuousLinearMap.toFun.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) g) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} {M₃ : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_6 : AddCommMonoid.{u5} M₃] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_12 : Module.{u1, u5} R M₃ _inst_1 _inst_6] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_18 : TopologicalSpace.{u5} M₃] (g : ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (max (succ u2) (succ u3)) (succ u5)} (forall (a : forall (i : ι), M₁ i), (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₃) a) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u5), max (succ u2) (succ u3), succ u5} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₃) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u5, max u2 u3, u5} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18) (forall (i : ι), M₁ i) M₃ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_18 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18)) (ContinuousLinearMap.compContinuousMultilinearMap.{u1, u2, u3, u4, u5} R ι M₁ M₂ M₃ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 _inst_6 (fun (i : ι) => _inst_9 i) _inst_11 _inst_12 (fun (i : ι) => _inst_15 i) _inst_17 _inst_18 g f)) (Function.comp.{max (succ u2) (succ u3), succ u4, succ u5} (forall (i : ι), M₁ i) M₂ M₃ (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} (ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) M₂ (fun (_x : M₂) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : M₂) => M₃) _x) (ContinuousMapClass.toFunLike.{max u4 u5, u4, u5} (ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) M₂ M₃ _inst_17 _inst_18 (ContinuousSemilinearMapClass.toContinuousMapClass.{max u4 u5, u1, u1, u4, u5} (ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12 (ContinuousLinearMap.continuousSemilinearMapClass.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12))) g) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_linear_map.comp_continuous_multilinear_map_coe ContinuousLinearMap.compContinuousMultilinearMap_coeₓ'. -/
@[simp]
theorem ContinuousLinearMap.compContinuousMultilinearMap_coe (g : M₂ →L[R] M₃)
@@ -481,10 +442,7 @@ def piEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
-/
/- warning: continuous_multilinear_map.cons_add -> ContinuousMultilinearMap.cons_add is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {n : Nat} {M : (Fin (Nat.succ n)) -> Type.{u2}} {M₂ : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : forall (i : Fin (Nat.succ n)), AddCommMonoid.{u2} (M i)] [_inst_5 : AddCommMonoid.{u3} M₂] [_inst_8 : forall (i : Fin (Nat.succ n)), Module.{u1, u2} R (M i) _inst_1 (_inst_2 i)] [_inst_11 : Module.{u1, u3} R M₂ _inst_1 _inst_5] [_inst_14 : forall (i : Fin (Nat.succ n)), TopologicalSpace.{u2} (M i)] [_inst_17 : TopologicalSpace.{u3} M₂] (f : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (m : forall (i : Fin n), M (Fin.succ n i)) (x : M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (OfNat.mk.{0} (Fin (Nat.succ n)) 0 (Zero.zero.{0} (Fin (Nat.succ n)) (Fin.hasZeroOfNeZero (Nat.succ n) (NeZero.succ n)))))) (y : M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (OfNat.mk.{0} (Fin (Nat.succ n)) 0 (Zero.zero.{0} (Fin (Nat.succ n)) (Fin.hasZeroOfNeZero (Nat.succ n) (NeZero.succ n)))))), Eq.{succ u3} M₂ (coeFn.{max 1 (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) => (forall (i : Fin (Nat.succ n)), M i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) (HAdd.hAdd.{u2, u2, u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (instHAdd.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddZeroClass.toHasAdd.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddMonoid.toAddZeroClass.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (_inst_2 (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))))))) x y) m)) (HAdd.hAdd.{u3, u3, u3} M₂ M₂ M₂ (instHAdd.{u3} M₂ (AddZeroClass.toHasAdd.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)))) (coeFn.{max 1 (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) => (forall (i : Fin (Nat.succ n)), M i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (coeFn.{max 1 (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) => (forall (i : Fin (Nat.succ n)), M i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) y m)))
-but is expected to have type
- forall {R : Type.{u1}} {n : Nat} {M : (Fin (Nat.succ n)) -> Type.{u2}} {M₂ : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : forall (i : Fin (Nat.succ n)), AddCommMonoid.{u2} (M i)] [_inst_5 : AddCommMonoid.{u3} M₂] [_inst_8 : forall (i : Fin (Nat.succ n)), Module.{u1, u2} R (M i) _inst_1 (_inst_2 i)] [_inst_11 : Module.{u1, u3} R M₂ _inst_1 _inst_5] [_inst_14 : forall (i : Fin (Nat.succ n)), TopologicalSpace.{u2} (M i)] [_inst_17 : TopologicalSpace.{u3} M₂] (f : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (m : forall (i : Fin n), M (Fin.succ n i)) (x : M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (y : M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))), Eq.{succ u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) (HAdd.hAdd.{u2, u2, u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (instHAdd.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddZeroClass.toAdd.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddMonoid.toAddZeroClass.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))))) x y) m)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) (fun (_x : forall (i : Fin (Nat.succ n)), M i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) _x) (ContinuousMapClass.toFunLike.{max u2 u3, u2, u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) M₂ (Pi.topologicalSpace.{0, u2} (Fin (Nat.succ n)) (fun (i : Fin (Nat.succ n)) => M i) (fun (a : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17)) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) (HAdd.hAdd.{u2, u2, u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (instHAdd.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddZeroClass.toAdd.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddMonoid.toAddZeroClass.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))))) x y) m)) (HAdd.hAdd.{u3, u3, u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) y m)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (instHAdd.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddZeroClass.toAdd.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddMonoid.toAddZeroClass.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) _inst_5)))) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) (fun (_x : forall (i : Fin (Nat.succ n)), M i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) _x) (ContinuousMapClass.toFunLike.{max u2 u3, u2, u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) M₂ (Pi.topologicalSpace.{0, u2} (Fin (Nat.succ n)) (fun (i : Fin (Nat.succ n)) => M i) (fun (a : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17)) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) (fun (_x : forall (i : Fin (Nat.succ n)), M i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) _x) (ContinuousMapClass.toFunLike.{max u2 u3, u2, u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) M₂ (Pi.topologicalSpace.{0, u2} (Fin (Nat.succ n)) (fun (i : Fin (Nat.succ n)) => M i) (fun (a : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17)) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) y m)))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.cons_add ContinuousMultilinearMap.cons_addₓ'. -/
/-- In the specific case of continuous multilinear maps on spaces indexed by `fin (n+1)`, where one
can build an element of `Π(i : fin (n+1)), M i` using `cons`, one can express directly the
@@ -495,10 +453,7 @@ theorem cons_add (f : ContinuousMultilinearMap R M M₂) (m : ∀ i : Fin n, M i
#align continuous_multilinear_map.cons_add ContinuousMultilinearMap.cons_add
/- warning: continuous_multilinear_map.cons_smul -> ContinuousMultilinearMap.cons_smul is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {n : Nat} {M : (Fin (Nat.succ n)) -> Type.{u2}} {M₂ : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : forall (i : Fin (Nat.succ n)), AddCommMonoid.{u2} (M i)] [_inst_5 : AddCommMonoid.{u3} M₂] [_inst_8 : forall (i : Fin (Nat.succ n)), Module.{u1, u2} R (M i) _inst_1 (_inst_2 i)] [_inst_11 : Module.{u1, u3} R M₂ _inst_1 _inst_5] [_inst_14 : forall (i : Fin (Nat.succ n)), TopologicalSpace.{u2} (M i)] [_inst_17 : TopologicalSpace.{u3} M₂] (f : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (m : forall (i : Fin n), M (Fin.succ n i)) (c : R) (x : M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (OfNat.mk.{0} (Fin (Nat.succ n)) 0 (Zero.zero.{0} (Fin (Nat.succ n)) (Fin.hasZeroOfNeZero (Nat.succ n) (NeZero.succ n)))))), Eq.{succ u3} M₂ (coeFn.{max 1 (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) => (forall (i : Fin (Nat.succ n)), M i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) (SMul.smul.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (SMulZeroClass.toHasSmul.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddZeroClass.toHasZero.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddMonoid.toAddZeroClass.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (_inst_2 (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddMonoid.toAddZeroClass.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (_inst_2 (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddMonoid.toAddZeroClass.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (_inst_2 (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))) (Module.toMulActionWithZero.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) _inst_1 (_inst_2 (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (_inst_8 (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))))))) c x) m)) (SMul.smul.{u1, u3} R M₂ (SMulZeroClass.toHasSmul.{u1, u3} R M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (SMulWithZero.toSmulZeroClass.{u1, u3} R M₂ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (MulActionWithZero.toSMulWithZero.{u1, u3} R M₂ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (Module.toMulActionWithZero.{u1, u3} R M₂ _inst_1 _inst_5 _inst_11)))) c (coeFn.{max 1 (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) => (forall (i : Fin (Nat.succ n)), M i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)))
-but is expected to have type
- forall {R : Type.{u1}} {n : Nat} {M : (Fin (Nat.succ n)) -> Type.{u2}} {M₂ : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : forall (i : Fin (Nat.succ n)), AddCommMonoid.{u2} (M i)] [_inst_5 : AddCommMonoid.{u3} M₂] [_inst_8 : forall (i : Fin (Nat.succ n)), Module.{u1, u2} R (M i) _inst_1 (_inst_2 i)] [_inst_11 : Module.{u1, u3} R M₂ _inst_1 _inst_5] [_inst_14 : forall (i : Fin (Nat.succ n)), TopologicalSpace.{u2} (M i)] [_inst_17 : TopologicalSpace.{u3} M₂] (f : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (m : forall (i : Fin n), M (Fin.succ n i)) (c : R) (x : M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))), Eq.{succ u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) (HSMul.hSMul.{u1, u2, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (instHSMul.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (SMulZeroClass.toSMul.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddMonoid.toZero.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))) (Module.toMulActionWithZero.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) _inst_1 (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_8 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n))))))))) c x) m)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) (fun (_x : forall (i : Fin (Nat.succ n)), M i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) _x) (ContinuousMapClass.toFunLike.{max u2 u3, u2, u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) M₂ (Pi.topologicalSpace.{0, u2} (Fin (Nat.succ n)) (fun (i : Fin (Nat.succ n)) => M i) (fun (a : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17)) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) (HSMul.hSMul.{u1, u2, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (instHSMul.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (SMulZeroClass.toSMul.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddMonoid.toZero.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))) (Module.toMulActionWithZero.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) _inst_1 (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_8 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n))))))))) c x) m)) (HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) _inst_5)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) _inst_5)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) _inst_5)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) _inst_1 _inst_5 _inst_11))))) c (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) (fun (_x : forall (i : Fin (Nat.succ n)), M i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) _x) (ContinuousMapClass.toFunLike.{max u2 u3, u2, u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) M₂ (Pi.topologicalSpace.{0, u2} (Fin (Nat.succ n)) (fun (i : Fin (Nat.succ n)) => M i) (fun (a : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17)) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.cons_smul ContinuousMultilinearMap.cons_smulₓ'. -/
/-- In the specific case of continuous multilinear maps on spaces indexed by `fin (n+1)`, where one
can build an element of `Π(i : fin (n+1)), M i` using `cons`, one can express directly the
@@ -509,10 +464,7 @@ theorem cons_smul (f : ContinuousMultilinearMap R M M₂) (m : ∀ i : Fin n, M
#align continuous_multilinear_map.cons_smul ContinuousMultilinearMap.cons_smul
/- warning: continuous_multilinear_map.map_piecewise_add -> ContinuousMultilinearMap.map_piecewise_add is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : DecidableEq.{succ u2} ι] (m : forall (i : ι), M₁ i) (m' : forall (i : ι), M₁ i) (t : Finset.{u2} ι), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) t (HAdd.hAdd.{max u2 u3, max u2 u3, max u2 u3} (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (instHAdd.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instAdd.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toHasAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) m m') m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j t))) (Finset.sum.{u4, u2} M₂ (Finset.{u2} ι) _inst_5 (Finset.powerset.{u2} ι t) (fun (s : Finset.{u2} ι) => coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) s m m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j s))))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : DecidableEq.{succ u2} ι] (m : forall (i : ι), M₁ i) (m' : forall (i : ι), M₁ i) (t : Finset.{u2} ι), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) t (HAdd.hAdd.{max u2 u3, max u2 u3, max u2 u3} (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (instHAdd.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instAdd.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) m m') m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j t))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) t (HAdd.hAdd.{max u2 u3, max u2 u3, max u2 u3} (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (instHAdd.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instAdd.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) m m') m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j t))) (Finset.sum.{u4, u2} M₂ (Finset.{u2} ι) _inst_5 (Finset.powerset.{u2} ι t) (fun (s : Finset.{u2} ι) => FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) s m m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j s))))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_piecewise_add ContinuousMultilinearMap.map_piecewise_addₓ'. -/
theorem map_piecewise_add [DecidableEq ι] (m m' : ∀ i, M₁ i) (t : Finset ι) :
f (t.piecewise (m + m') m') = ∑ s in t.powerset, f (s.piecewise m m') :=
@@ -520,10 +472,7 @@ theorem map_piecewise_add [DecidableEq ι] (m m' : ∀ i, M₁ i) (t : Finset ι
#align continuous_multilinear_map.map_piecewise_add ContinuousMultilinearMap.map_piecewise_add
/- warning: continuous_multilinear_map.map_add_univ -> ContinuousMultilinearMap.map_add_univ is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : DecidableEq.{succ u2} ι] [_inst_21 : Fintype.{u2} ι] (m : forall (i : ι), M₁ i) (m' : forall (i : ι), M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (HAdd.hAdd.{max u2 u3, max u2 u3, max u2 u3} (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (instHAdd.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instAdd.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toHasAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) m m')) (Finset.sum.{u4, u2} M₂ (Finset.{u2} ι) _inst_5 (Finset.univ.{u2} (Finset.{u2} ι) (Finset.fintype.{u2} ι _inst_21)) (fun (s : Finset.{u2} ι) => coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) s m m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j s))))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : DecidableEq.{succ u2} ι] [_inst_21 : Fintype.{u2} ι] (m : forall (i : ι), M₁ i) (m' : forall (i : ι), M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (HAdd.hAdd.{max u2 u3, max u2 u3, max u2 u3} (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (instHAdd.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instAdd.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) m m')) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (HAdd.hAdd.{max u2 u3, max u2 u3, max u2 u3} (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (instHAdd.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instAdd.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) m m')) (Finset.sum.{u4, u2} M₂ (Finset.{u2} ι) _inst_5 (Finset.univ.{u2} (Finset.{u2} ι) (Finset.fintype.{u2} ι _inst_21)) (fun (s : Finset.{u2} ι) => FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) s m m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j s))))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_add_univ ContinuousMultilinearMap.map_add_univₓ'. -/
/-- Additivity of a continuous multilinear map along all coordinates at the same time,
writing `f (m + m')` as the sum of `f (s.piecewise m m')` over all sets `s`. -/
@@ -539,10 +488,7 @@ open Fintype Finset
variable {α : ι → Type _} [Fintype ι] (g : ∀ i, α i → M₁ i) (A : ∀ i, Finset (α i))
/- warning: continuous_multilinear_map.map_sum_finset -> ContinuousMultilinearMap.map_sum_finset is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) {α : ι -> Type.{u5}} [_inst_20 : Fintype.{u2} ι] (g : forall (i : ι), (α i) -> (M₁ i)) (A : forall (i : ι), Finset.{u5} (α i)) [_inst_21 : DecidableEq.{succ u2} ι], Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (fun (i : ι) => Finset.sum.{u3, u5} (M₁ i) (α i) (_inst_3 i) (A i) (fun (j : α i) => g i j))) (Finset.sum.{u4, max u2 u5} M₂ (forall (a : ι), α a) _inst_5 (Fintype.piFinset.{u2, u5} ι (fun (a : ι) (b : ι) => _inst_21 a b) _inst_20 (fun (i : ι) => α i) A) (fun (r : forall (a : ι), α a) => coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (fun (i : ι) => g i (r i))))
-but is expected to have type
- forall {R : Type.{u2}} {ι : Type.{u3}} {M₁ : ι -> Type.{u4}} {M₂ : Type.{u5}} [_inst_1 : Semiring.{u2} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u4} (M₁ i)] [_inst_5 : AddCommMonoid.{u5} M₂] [_inst_9 : forall (i : ι), Module.{u2, u4} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u2, u5} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u4} (M₁ i)] [_inst_17 : TopologicalSpace.{u5} M₂] (f : ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) {α : ι -> Type.{u1}} [_inst_20 : Fintype.{u3} ι] (g : forall (i : ι), (α i) -> (M₁ i)) (A : forall (i : ι), Finset.{u1} (α i)) [_inst_21 : DecidableEq.{succ u3} ι], Eq.{succ u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (fun (i : ι) => Finset.sum.{u4, u1} (M₁ i) (α i) (_inst_3 i) (A i) (fun (j : α i) => g i j))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (fun (i : ι) => Finset.sum.{u4, u1} (M₁ i) (α i) (_inst_3 i) (A i) (fun (j : α i) => g i j))) (Finset.sum.{u5, max u1 u3} M₂ (forall (a : ι), α a) _inst_5 (Fintype.piFinset.{u3, u1} ι (fun (a : ι) (b : ι) => _inst_21 a b) _inst_20 (fun (i : ι) => α i) A) (fun (r : forall (a : ι), α a) => FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (fun (i : ι) => g i (r i))))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_sum_finset ContinuousMultilinearMap.map_sum_finsetₓ'. -/
/-- If `f` is continuous multilinear, then `f (Σ_{j₁ ∈ A₁} g₁ j₁, ..., Σ_{jₙ ∈ Aₙ} gₙ jₙ)` is the
sum of `f (g₁ (r 1), ..., gₙ (r n))` where `r` ranges over all functions with `r 1 ∈ A₁`, ...,
@@ -554,10 +500,7 @@ theorem map_sum_finset [DecidableEq ι] :
#align continuous_multilinear_map.map_sum_finset ContinuousMultilinearMap.map_sum_finset
/- warning: continuous_multilinear_map.map_sum -> ContinuousMultilinearMap.map_sum is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) {α : ι -> Type.{u5}} [_inst_20 : Fintype.{u2} ι] (g : forall (i : ι), (α i) -> (M₁ i)) [_inst_21 : DecidableEq.{succ u2} ι] [_inst_22 : forall (i : ι), Fintype.{u5} (α i)], Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (fun (i : ι) => Finset.sum.{u3, u5} (M₁ i) (α i) (_inst_3 i) (Finset.univ.{u5} (α i) (_inst_22 i)) (fun (j : α i) => g i j))) (Finset.sum.{u4, max u2 u5} M₂ (forall (i : ι), α i) _inst_5 (Finset.univ.{max u2 u5} (forall (i : ι), α i) (Pi.fintype.{u2, u5} ι (fun (i : ι) => α i) (fun (a : ι) (b : ι) => _inst_21 a b) _inst_20 (fun (a : ι) => _inst_22 a))) (fun (r : forall (i : ι), α i) => coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (fun (i : ι) => g i (r i))))
-but is expected to have type
- forall {R : Type.{u2}} {ι : Type.{u3}} {M₁ : ι -> Type.{u4}} {M₂ : Type.{u5}} [_inst_1 : Semiring.{u2} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u4} (M₁ i)] [_inst_5 : AddCommMonoid.{u5} M₂] [_inst_9 : forall (i : ι), Module.{u2, u4} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u2, u5} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u4} (M₁ i)] [_inst_17 : TopologicalSpace.{u5} M₂] (f : ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) {α : ι -> Type.{u1}} [_inst_20 : Fintype.{u3} ι] (g : forall (i : ι), (α i) -> (M₁ i)) [_inst_21 : DecidableEq.{succ u3} ι] [_inst_22 : forall (i : ι), Fintype.{u1} (α i)], Eq.{succ u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (fun (i : ι) => Finset.sum.{u4, u1} (M₁ i) (α i) (_inst_3 i) (Finset.univ.{u1} (α i) (_inst_22 i)) (fun (j : α i) => g i j))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (fun (i : ι) => Finset.sum.{u4, u1} (M₁ i) (α i) (_inst_3 i) (Finset.univ.{u1} (α i) (_inst_22 i)) (fun (j : α i) => g i j))) (Finset.sum.{u5, max u3 u1} M₂ (forall (i : ι), α i) _inst_5 (Finset.univ.{max u3 u1} (forall (i : ι), α i) (Pi.fintype.{u3, u1} ι (fun (i : ι) => α i) (fun (a : ι) (b : ι) => _inst_21 a b) _inst_20 (fun (a : ι) => _inst_22 a))) (fun (r : forall (i : ι), α i) => FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (fun (i : ι) => g i (r i))))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_sum ContinuousMultilinearMap.map_sumₓ'. -/
/-- If `f` is continuous multilinear, then `f (Σ_{j₁} g₁ j₁, ..., Σ_{jₙ} gₙ jₙ)` is the sum of
`f (g₁ (r 1), ..., gₙ (r n))` where `r` ranges over all functions `r`. This follows from
@@ -585,10 +528,7 @@ def restrictScalars (f : ContinuousMultilinearMap A M₁ M₂) : ContinuousMulti
-/
/- warning: continuous_multilinear_map.coe_restrict_scalars -> ContinuousMultilinearMap.coe_restrictScalars is a dubious translation:
-lean 3 declaration is
- forall (R : Type.{u1}) {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] {A : Type.{u5}} [_inst_20 : Semiring.{u5} A] [_inst_21 : SMul.{u1, u5} R A] [_inst_22 : forall (i : ι), Module.{u5, u3} A (M₁ i) _inst_20 (_inst_3 i)] [_inst_23 : Module.{u5, u4} A M₂ _inst_20 _inst_5] [_inst_24 : forall (i : ι), IsScalarTower.{u1, u5, u3} R A (M₁ i) _inst_21 (SMulZeroClass.toHasSmul.{u5, u3} A (M₁ i) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))) (SMulWithZero.toSmulZeroClass.{u5, u3} A (M₁ i) (MulZeroClass.toHasZero.{u5} A (MulZeroOneClass.toMulZeroClass.{u5} A (MonoidWithZero.toMulZeroOneClass.{u5} A (Semiring.toMonoidWithZero.{u5} A _inst_20)))) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))) (MulActionWithZero.toSMulWithZero.{u5, u3} A (M₁ i) (Semiring.toMonoidWithZero.{u5} A _inst_20) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))) (Module.toMulActionWithZero.{u5, u3} A (M₁ i) _inst_20 (_inst_3 i) (_inst_22 i))))) (SMulZeroClass.toHasSmul.{u1, u3} R (M₁ i) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))) (SMulWithZero.toSmulZeroClass.{u1, u3} R (M₁ i) (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))) (MulActionWithZero.toSMulWithZero.{u1, u3} R (M₁ i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))) (Module.toMulActionWithZero.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i) (_inst_9 i)))))] [_inst_25 : IsScalarTower.{u1, u5, u4} R A M₂ _inst_21 (SMulZeroClass.toHasSmul.{u5, u4} A M₂ (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))) (SMulWithZero.toSmulZeroClass.{u5, u4} A M₂ (MulZeroClass.toHasZero.{u5} A (MulZeroOneClass.toMulZeroClass.{u5} A (MonoidWithZero.toMulZeroOneClass.{u5} A (Semiring.toMonoidWithZero.{u5} A _inst_20)))) (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))) (MulActionWithZero.toSMulWithZero.{u5, u4} A M₂ (Semiring.toMonoidWithZero.{u5} A _inst_20) (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))) (Module.toMulActionWithZero.{u5, u4} A M₂ _inst_20 _inst_5 _inst_23)))) (SMulZeroClass.toHasSmul.{u1, u4} R M₂ (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))) (SMulWithZero.toSmulZeroClass.{u1, u4} R M₂ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))) (MulActionWithZero.toSMulWithZero.{u1, u4} R M₂ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))) (Module.toMulActionWithZero.{u1, u4} R M₂ _inst_1 _inst_5 _inst_11))))] (f : ContinuousMultilinearMap.{u5, u2, u3, u4} A ι M₁ M₂ _inst_20 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (max (succ u2) (succ u3)) (succ u4)} ((forall (i : ι), M₁ i) -> M₂) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.restrictScalars.{u1, u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 A _inst_20 _inst_21 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_24 i) _inst_25 f)) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u5, u2, u3, u4} A ι M₁ M₂ _inst_20 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u5, u2, u3, u4} A ι M₁ M₂ _inst_20 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u5, u2, u3, u4} A ι M₁ M₂ _inst_20 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_15 i) _inst_17) f)
-but is expected to have type
- forall (R : Type.{u2}) {ι : Type.{u3}} {M₁ : ι -> Type.{u4}} {M₂ : Type.{u5}} [_inst_1 : Semiring.{u2} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u4} (M₁ i)] [_inst_5 : AddCommMonoid.{u5} M₂] [_inst_9 : forall (i : ι), Module.{u2, u4} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u2, u5} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u4} (M₁ i)] [_inst_17 : TopologicalSpace.{u5} M₂] {A : Type.{u1}} [_inst_20 : Semiring.{u1} A] [_inst_21 : SMul.{u2, u1} R A] [_inst_22 : forall (i : ι), Module.{u1, u4} A (M₁ i) _inst_20 (_inst_3 i)] [_inst_23 : Module.{u1, u5} A M₂ _inst_20 _inst_5] [_inst_24 : forall (i : ι), IsScalarTower.{u2, u1, u4} R A (M₁ i) _inst_21 (SMulZeroClass.toSMul.{u1, u4} A (M₁ i) (AddMonoid.toZero.{u4} (M₁ i) (AddCommMonoid.toAddMonoid.{u4} (M₁ i) (_inst_3 i))) (SMulWithZero.toSMulZeroClass.{u1, u4} A (M₁ i) (MonoidWithZero.toZero.{u1} A (Semiring.toMonoidWithZero.{u1} A _inst_20)) (AddMonoid.toZero.{u4} (M₁ i) (AddCommMonoid.toAddMonoid.{u4} (M₁ i) (_inst_3 i))) (MulActionWithZero.toSMulWithZero.{u1, u4} A (M₁ i) (Semiring.toMonoidWithZero.{u1} A _inst_20) (AddMonoid.toZero.{u4} (M₁ i) (AddCommMonoid.toAddMonoid.{u4} (M₁ i) (_inst_3 i))) (Module.toMulActionWithZero.{u1, u4} A (M₁ i) _inst_20 (_inst_3 i) (_inst_22 i))))) (SMulZeroClass.toSMul.{u2, u4} R (M₁ i) (AddMonoid.toZero.{u4} (M₁ i) (AddCommMonoid.toAddMonoid.{u4} (M₁ i) (_inst_3 i))) (SMulWithZero.toSMulZeroClass.{u2, u4} R (M₁ i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u4} (M₁ i) (AddCommMonoid.toAddMonoid.{u4} (M₁ i) (_inst_3 i))) (MulActionWithZero.toSMulWithZero.{u2, u4} R (M₁ i) (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u4} (M₁ i) (AddCommMonoid.toAddMonoid.{u4} (M₁ i) (_inst_3 i))) (Module.toMulActionWithZero.{u2, u4} R (M₁ i) _inst_1 (_inst_3 i) (_inst_9 i)))))] [_inst_25 : IsScalarTower.{u2, u1, u5} R A M₂ _inst_21 (SMulZeroClass.toSMul.{u1, u5} A M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (SMulWithZero.toSMulZeroClass.{u1, u5} A M₂ (MonoidWithZero.toZero.{u1} A (Semiring.toMonoidWithZero.{u1} A _inst_20)) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (MulActionWithZero.toSMulWithZero.{u1, u5} A M₂ (Semiring.toMonoidWithZero.{u1} A _inst_20) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (Module.toMulActionWithZero.{u1, u5} A M₂ _inst_20 _inst_5 _inst_23)))) (SMulZeroClass.toSMul.{u2, u5} R M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (SMulWithZero.toSMulZeroClass.{u2, u5} R M₂ (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (MulActionWithZero.toSMulWithZero.{u2, u5} R M₂ (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (Module.toMulActionWithZero.{u2, u5} R M₂ _inst_1 _inst_5 _inst_11))))] (f : ContinuousMultilinearMap.{u1, u3, u4, u5} A ι M₁ M₂ _inst_20 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (max (succ u3) (succ u4)) (succ u5)} (forall (ᾰ : forall (i : ι), M₁ i), (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) ᾰ) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) (ContinuousMultilinearMap.restrictScalars.{u2, u3, u4, u5, u1} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 A _inst_20 _inst_21 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_24 i) _inst_25 f)) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u1, u3, u4, u5} A ι M₁ M₂ _inst_20 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_22 i) i) _inst_23 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u1, u3, u4, u5} A ι M₁ M₂ _inst_20 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_22 i) i) _inst_23 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u3, u4, u5} A ι M₁ M₂ _inst_20 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_22 i) i) _inst_23 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f)
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.coe_restrict_scalars ContinuousMultilinearMap.coe_restrictScalarsₓ'. -/
@[simp]
theorem coe_restrictScalars (f : ContinuousMultilinearMap A M₁ M₂) : ⇑(f.restrictScalars R) = f :=
@@ -605,10 +545,7 @@ variable [Ring R] [∀ i, AddCommGroup (M₁ i)] [AddCommGroup M₂] [∀ i, Mod
[∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂] (f f' : ContinuousMultilinearMap R M₁ M₂)
/- warning: continuous_multilinear_map.map_sub -> ContinuousMultilinearMap.map_sub is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Ring.{u1} R] [_inst_2 : forall (i : ι), AddCommGroup.{u3} (M₁ i)] [_inst_3 : AddCommGroup.{u4} M₂] [_inst_4 : forall (i : ι), Module.{u1, u3} R (M₁ i) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i))] [_inst_5 : Module.{u1, u4} R M₂ (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3)] [_inst_6 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_7 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) [_inst_8 : DecidableEq.{succ u2} ι] (m : forall (i : ι), M₁ i) (i : ι) (x : M₁ i) (y : M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i (HSub.hSub.{u3, u3, u3} (M₁ i) (M₁ i) (M₁ i) (instHSub.{u3} (M₁ i) (SubNegMonoid.toHasSub.{u3} (M₁ i) (AddGroup.toSubNegMonoid.{u3} (M₁ i) (AddCommGroup.toAddGroup.{u3} (M₁ i) (_inst_2 i))))) x y))) (HSub.hSub.{u4, u4, u4} M₂ M₂ M₂ (instHSub.{u4} M₂ (SubNegMonoid.toHasSub.{u4} M₂ (AddGroup.toSubNegMonoid.{u4} M₂ (AddCommGroup.toAddGroup.{u4} M₂ _inst_3)))) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i y)))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Ring.{u1} R] [_inst_2 : forall (i : ι), AddCommGroup.{u3} (M₁ i)] [_inst_3 : AddCommGroup.{u4} M₂] [_inst_4 : forall (i : ι), Module.{u1, u3} R (M₁ i) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i))] [_inst_5 : Module.{u1, u4} R M₂ (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3)] [_inst_6 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_7 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) [_inst_8 : DecidableEq.{succ u2} ι] (m : forall (i : ι), M₁ i) (i : ι) (x : M₁ i) (y : M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i (HSub.hSub.{u3, u3, u3} (M₁ i) (M₁ i) (M₁ i) (instHSub.{u3} (M₁ i) (SubNegMonoid.toSub.{u3} (M₁ i) (AddGroup.toSubNegMonoid.{u3} (M₁ i) (AddCommGroup.toAddGroup.{u3} (M₁ i) (_inst_2 i))))) x y))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i (HSub.hSub.{u3, u3, u3} (M₁ i) (M₁ i) (M₁ i) (instHSub.{u3} (M₁ i) (SubNegMonoid.toSub.{u3} (M₁ i) (AddGroup.toSubNegMonoid.{u3} (M₁ i) (AddCommGroup.toAddGroup.{u3} (M₁ i) (_inst_2 i))))) x y))) (HSub.hSub.{u4, u4, u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i y)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) (instHSub.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) (SubNegMonoid.toSub.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) (AddGroup.toSubNegMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) (AddCommGroup.toAddGroup.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) _inst_3)))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i y)))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_sub ContinuousMultilinearMap.map_subₓ'. -/
@[simp]
theorem map_sub [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (x y : M₁ i) :
@@ -624,10 +561,7 @@ instance : Neg (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f => { -f.toMultilinearMap with cont := f.cont.neg }⟩
/- warning: continuous_multilinear_map.neg_apply -> ContinuousMultilinearMap.neg_apply is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Ring.{u1} R] [_inst_2 : forall (i : ι), AddCommGroup.{u3} (M₁ i)] [_inst_3 : AddCommGroup.{u4} M₂] [_inst_4 : forall (i : ι), Module.{u1, u3} R (M₁ i) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i))] [_inst_5 : Module.{u1, u4} R M₂ (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3)] [_inst_6 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_7 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) [_inst_8 : TopologicalAddGroup.{u4} M₂ _inst_7 (AddCommGroup.toAddGroup.{u4} M₂ _inst_3)] (m : forall (i : ι), M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (Neg.neg.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.hasNeg.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_2 i) _inst_3 (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7 _inst_8) f) m) (Neg.neg.{u4} M₂ (SubNegMonoid.toHasNeg.{u4} M₂ (AddGroup.toSubNegMonoid.{u4} M₂ (AddCommGroup.toAddGroup.{u4} M₂ _inst_3))) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) f m))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Ring.{u1} R] [_inst_2 : forall (i : ι), AddCommGroup.{u3} (M₁ i)] [_inst_3 : AddCommGroup.{u4} M₂] [_inst_4 : forall (i : ι), Module.{u1, u3} R (M₁ i) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i))] [_inst_5 : Module.{u1, u4} R M₂ (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3)] [_inst_6 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_7 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) [_inst_8 : TopologicalAddGroup.{u4} M₂ _inst_7 (AddCommGroup.toAddGroup.{u4} M₂ _inst_3)] (m : forall (i : ι), M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) (Neg.neg.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.instNegContinuousMultilinearMapToSemiringToAddCommMonoidToAddCommMonoid.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_2 i) _inst_3 (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7 _inst_8) f) m) (Neg.neg.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (NegZeroClass.toNeg.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (SubNegZeroMonoid.toNegZeroClass.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (SubtractionMonoid.toSubNegZeroMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (SubtractionCommMonoid.toSubtractionMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommGroup.toDivisionAddCommMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) f m))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.neg_apply ContinuousMultilinearMap.neg_applyₓ'. -/
@[simp]
theorem neg_apply (m : ∀ i, M₁ i) : (-f) m = -f m :=
@@ -638,10 +572,7 @@ instance : Sub (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f g => { f.toMultilinearMap - g.toMultilinearMap with cont := f.cont.sub g.cont }⟩
/- warning: continuous_multilinear_map.sub_apply -> ContinuousMultilinearMap.sub_apply is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Ring.{u1} R] [_inst_2 : forall (i : ι), AddCommGroup.{u3} (M₁ i)] [_inst_3 : AddCommGroup.{u4} M₂] [_inst_4 : forall (i : ι), Module.{u1, u3} R (M₁ i) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i))] [_inst_5 : Module.{u1, u4} R M₂ (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3)] [_inst_6 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_7 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (f' : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) [_inst_8 : TopologicalAddGroup.{u4} M₂ _inst_7 (AddCommGroup.toAddGroup.{u4} M₂ _inst_3)] (m : forall (i : ι), M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (HSub.hSub.{max u2 u3 u4, max u2 u3 u4, max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (instHSub.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.hasSub.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_2 i) _inst_3 (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7 _inst_8)) f f') m) (HSub.hSub.{u4, u4, u4} M₂ M₂ M₂ (instHSub.{u4} M₂ (SubNegMonoid.toHasSub.{u4} M₂ (AddGroup.toSubNegMonoid.{u4} M₂ (AddCommGroup.toAddGroup.{u4} M₂ _inst_3)))) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) f m) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) f' m))
-but is expected to have type
- forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Ring.{u1} R] [_inst_2 : forall (i : ι), AddCommGroup.{u3} (M₁ i)] [_inst_3 : AddCommGroup.{u4} M₂] [_inst_4 : forall (i : ι), Module.{u1, u3} R (M₁ i) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i))] [_inst_5 : Module.{u1, u4} R M₂ (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3)] [_inst_6 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_7 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (f' : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) [_inst_8 : TopologicalAddGroup.{u4} M₂ _inst_7 (AddCommGroup.toAddGroup.{u4} M₂ _inst_3)] (m : forall (i : ι), M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) (HSub.hSub.{max (max u2 u3) u4, max (max u2 u3) u4, max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (instHSub.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.instSubContinuousMultilinearMapToSemiringToAddCommMonoidToAddCommMonoid.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_2 i) _inst_3 (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7 _inst_8)) f f') m) (HSub.hSub.{u4, u4, u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (instHSub.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (SubNegMonoid.toSub.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddGroup.toSubNegMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommGroup.toAddGroup.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_3)))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) f m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) f' m))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.sub_apply ContinuousMultilinearMap.sub_applyₓ'. -/
@[simp]
theorem sub_apply (m : ∀ i, M₁ i) : (f - f') m = f m - f' m :=
@@ -707,10 +638,7 @@ instance : Module R' (ContinuousMultilinearMap A M₁ M₂) :=
toMultilinearMap_injective fun _ _ => rfl
/- warning: continuous_multilinear_map.to_multilinear_map_linear -> ContinuousMultilinearMap.toMultilinearMapLinear is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} {M₁ : ι -> Type.{u2}} {M₂ : Type.{u3}} {R' : Type.{u4}} {A : Type.{u5}} [_inst_1 : Semiring.{u4} R'] [_inst_2 : Semiring.{u5} A] [_inst_3 : forall (i : ι), AddCommMonoid.{u2} (M₁ i)] [_inst_4 : AddCommMonoid.{u3} M₂] [_inst_5 : forall (i : ι), TopologicalSpace.{u2} (M₁ i)] [_inst_6 : TopologicalSpace.{u3} M₂] [_inst_7 : ContinuousAdd.{u3} M₂ _inst_6 (AddZeroClass.toHasAdd.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)))] [_inst_8 : forall (i : ι), Module.{u5, u2} A (M₁ i) _inst_2 (_inst_3 i)] [_inst_9 : Module.{u5, u3} A M₂ _inst_2 _inst_4] [_inst_10 : Module.{u4, u3} R' M₂ _inst_1 _inst_4] [_inst_11 : ContinuousConstSMul.{u4, u3} R' M₂ _inst_6 (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M₂ (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_1)))) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M₂ (Semiring.toMonoidWithZero.{u4} R' _inst_1) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (Module.toMulActionWithZero.{u4, u3} R' M₂ _inst_1 _inst_4 _inst_10))))] [_inst_12 : SMulCommClass.{u5, u4, u3} A R' M₂ (SMulZeroClass.toHasSmul.{u5, u3} A M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u3} A M₂ (MulZeroClass.toHasZero.{u5} A (MulZeroOneClass.toMulZeroClass.{u5} A (MonoidWithZero.toMulZeroOneClass.{u5} A (Semiring.toMonoidWithZero.{u5} A _inst_2)))) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u3} A M₂ (Semiring.toMonoidWithZero.{u5} A _inst_2) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (Module.toMulActionWithZero.{u5, u3} A M₂ _inst_2 _inst_4 _inst_9)))) (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M₂ (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_1)))) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M₂ (Semiring.toMonoidWithZero.{u4} R' _inst_1) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (Module.toMulActionWithZero.{u4, u3} R' M₂ _inst_1 _inst_4 _inst_10))))], LinearMap.{u4, u4, max u1 u2 u3, max u1 u2 u3} R' R' _inst_1 _inst_1 (RingHom.id.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_1)) (ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9 (fun (i : ι) => _inst_5 i) _inst_6) (MultilinearMap.{u5, u2, u3, u1} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9) (ContinuousMultilinearMap.addCommMonoid.{u5, u1, u2, u3} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9 (fun (i : ι) => _inst_5 i) _inst_6 _inst_7) (MultilinearMap.addCommMonoid.{u5, u2, u3, u1} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9) (ContinuousMultilinearMap.module.{u1, u2, u3, u4, u5} ι M₁ M₂ R' A _inst_1 _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_5 i) _inst_6 _inst_7 (fun (i : ι) => _inst_8 i) _inst_9 _inst_10 _inst_11 _inst_12) (MultilinearMap.module.{u2, u3, u1, u4, u5} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_4 R' A _inst_1 _inst_2 (fun (i : ι) => _inst_8 i) _inst_9 _inst_10 _inst_12)
-but is expected to have type
- forall {ι : Type.{u1}} {M₁ : ι -> Type.{u2}} {M₂ : Type.{u3}} {R' : Type.{u4}} {A : Type.{u5}} [_inst_1 : Semiring.{u4} R'] [_inst_2 : Semiring.{u5} A] [_inst_3 : forall (i : ι), AddCommMonoid.{u2} (M₁ i)] [_inst_4 : AddCommMonoid.{u3} M₂] [_inst_5 : forall (i : ι), TopologicalSpace.{u2} (M₁ i)] [_inst_6 : TopologicalSpace.{u3} M₂] [_inst_7 : ContinuousAdd.{u3} M₂ _inst_6 (AddZeroClass.toAdd.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)))] [_inst_8 : forall (i : ι), Module.{u5, u2} A (M₁ i) _inst_2 (_inst_3 i)] [_inst_9 : Module.{u5, u3} A M₂ _inst_2 _inst_4] [_inst_10 : Module.{u4, u3} R' M₂ _inst_1 _inst_4] [_inst_11 : ContinuousConstSMul.{u4, u3} R' M₂ _inst_6 (SMulZeroClass.toSMul.{u4, u3} R' M₂ (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (SMulWithZero.toSMulZeroClass.{u4, u3} R' M₂ (MonoidWithZero.toZero.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_1)) (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M₂ (Semiring.toMonoidWithZero.{u4} R' _inst_1) (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (Module.toMulActionWithZero.{u4, u3} R' M₂ _inst_1 _inst_4 _inst_10))))] [_inst_12 : SMulCommClass.{u5, u4, u3} A R' M₂ (SMulZeroClass.toSMul.{u5, u3} A M₂ (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} A M₂ (MonoidWithZero.toZero.{u5} A (Semiring.toMonoidWithZero.{u5} A _inst_2)) (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} A M₂ (Semiring.toMonoidWithZero.{u5} A _inst_2) (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (Module.toMulActionWithZero.{u5, u3} A M₂ _inst_2 _inst_4 _inst_9)))) (SMulZeroClass.toSMul.{u4, u3} R' M₂ (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (SMulWithZero.toSMulZeroClass.{u4, u3} R' M₂ (MonoidWithZero.toZero.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_1)) (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M₂ (Semiring.toMonoidWithZero.{u4} R' _inst_1) (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (Module.toMulActionWithZero.{u4, u3} R' M₂ _inst_1 _inst_4 _inst_10))))], LinearMap.{u4, u4, max (max u3 u2) u1, max (max u1 u3) u2} R' R' _inst_1 _inst_1 (RingHom.id.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_1)) (ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9 (fun (i : ι) => _inst_5 i) _inst_6) (MultilinearMap.{u5, u2, u3, u1} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9) (ContinuousMultilinearMap.addCommMonoid.{u5, u1, u2, u3} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9 (fun (i : ι) => _inst_5 i) _inst_6 _inst_7) (MultilinearMap.addCommMonoid.{u5, u2, u3, u1} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9) (ContinuousMultilinearMap.instModuleContinuousMultilinearMapAddCommMonoid.{u1, u2, u3, u4, u5} ι M₁ M₂ R' A _inst_1 _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_5 i) _inst_6 _inst_7 (fun (i : ι) => _inst_8 i) _inst_9 _inst_10 _inst_11 _inst_12) (MultilinearMap.instModuleMultilinearMapAddCommMonoid.{u2, u3, u1, u4, u5} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_4 R' A _inst_1 _inst_2 (fun (i : ι) => _inst_8 i) _inst_9 _inst_10 _inst_12)
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.to_multilinear_map_linear ContinuousMultilinearMap.toMultilinearMapLinearₓ'. -/
/-- Linear map version of the map `to_multilinear_map` associating to a continuous multilinear map
the corresponding multilinear map. -/
@@ -723,10 +651,7 @@ def toMultilinearMapLinear : ContinuousMultilinearMap A M₁ M₂ →ₗ[R'] Mul
#align continuous_multilinear_map.to_multilinear_map_linear ContinuousMultilinearMap.toMultilinearMapLinear
/- warning: continuous_multilinear_map.pi_linear_equiv -> ContinuousMultilinearMap.piLinearEquiv is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} {M₁ : ι -> Type.{u2}} {R' : Type.{u3}} {A : Type.{u4}} [_inst_1 : Semiring.{u3} R'] [_inst_2 : Semiring.{u4} A] [_inst_3 : forall (i : ι), AddCommMonoid.{u2} (M₁ i)] [_inst_5 : forall (i : ι), TopologicalSpace.{u2} (M₁ i)] [_inst_8 : forall (i : ι), Module.{u4, u2} A (M₁ i) _inst_2 (_inst_3 i)] {ι' : Type.{u5}} {M' : ι' -> Type.{u6}} [_inst_13 : forall (i : ι'), AddCommMonoid.{u6} (M' i)] [_inst_14 : forall (i : ι'), TopologicalSpace.{u6} (M' i)] [_inst_15 : forall (i : ι'), ContinuousAdd.{u6} (M' i) (_inst_14 i) (AddZeroClass.toHasAdd.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))))] [_inst_16 : forall (i : ι'), Module.{u3, u6} R' (M' i) _inst_1 (_inst_13 i)] [_inst_17 : forall (i : ι'), Module.{u4, u6} A (M' i) _inst_2 (_inst_13 i)] [_inst_18 : forall (i : ι'), SMulCommClass.{u4, u3, u6} A R' (M' i) (SMulZeroClass.toHasSmul.{u4, u6} A (M' i) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (SMulWithZero.toSmulZeroClass.{u4, u6} A (M' i) (MulZeroClass.toHasZero.{u4} A (MulZeroOneClass.toMulZeroClass.{u4} A (MonoidWithZero.toMulZeroOneClass.{u4} A (Semiring.toMonoidWithZero.{u4} A _inst_2)))) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (MulActionWithZero.toSMulWithZero.{u4, u6} A (M' i) (Semiring.toMonoidWithZero.{u4} A _inst_2) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (Module.toMulActionWithZero.{u4, u6} A (M' i) _inst_2 (_inst_13 i) (_inst_17 i))))) (SMulZeroClass.toHasSmul.{u3, u6} R' (M' i) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (SMulWithZero.toSmulZeroClass.{u3, u6} R' (M' i) (MulZeroClass.toHasZero.{u3} R' (MulZeroOneClass.toMulZeroClass.{u3} R' (MonoidWithZero.toMulZeroOneClass.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)))) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (MulActionWithZero.toSMulWithZero.{u3, u6} R' (M' i) (Semiring.toMonoidWithZero.{u3} R' _inst_1) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (Module.toMulActionWithZero.{u3, u6} R' (M' i) _inst_1 (_inst_13 i) (_inst_16 i)))))] [_inst_19 : forall (i : ι'), ContinuousConstSMul.{u3, u6} R' (M' i) (_inst_14 i) (SMulZeroClass.toHasSmul.{u3, u6} R' (M' i) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (SMulWithZero.toSmulZeroClass.{u3, u6} R' (M' i) (MulZeroClass.toHasZero.{u3} R' (MulZeroOneClass.toMulZeroClass.{u3} R' (MonoidWithZero.toMulZeroOneClass.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)))) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (MulActionWithZero.toSMulWithZero.{u3, u6} R' (M' i) (Semiring.toMonoidWithZero.{u3} R' _inst_1) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (Module.toMulActionWithZero.{u3, u6} R' (M' i) _inst_1 (_inst_13 i) (_inst_16 i)))))], LinearEquiv.{u3, u3, max u5 u1 u2 u6, max u1 u2 u5 u6} R' R' _inst_1 _inst_1 (RingHom.id.{u3} R' (Semiring.toNonAssocSemiring.{u3} R' _inst_1)) (RingHom.id.{u3} R' (Semiring.toNonAssocSemiring.{u3} R' _inst_1)) (RingHomInvPair.ids.{u3} R' _inst_1) (RingHomInvPair.ids.{u3} R' _inst_1) (forall (i : ι'), ContinuousMultilinearMap.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i)) (ContinuousMultilinearMap.{u4, u1, u2, max u5 u6} A ι M₁ (forall (i : ι'), M' i) _inst_2 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u5, u6} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_13 i)) (fun (i : ι) => _inst_8 i) (Pi.module.{u5, u6, u4} ι' (fun (i : ι') => M' i) A _inst_2 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_17 i)) (fun (i : ι) => _inst_5 i) (Pi.topologicalSpace.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a))) (Pi.addCommMonoid.{u5, max u1 u2 u6} ι' (fun (i : ι') => ContinuousMultilinearMap.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i)) (fun (i : ι') => ContinuousMultilinearMap.addCommMonoid.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i) (_inst_15 i))) (ContinuousMultilinearMap.addCommMonoid.{u4, u1, u2, max u5 u6} A ι M₁ (forall (i : ι'), M' i) _inst_2 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u5, u6} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_13 i)) (fun (i : ι) => _inst_8 i) (Pi.module.{u5, u6, u4} ι' (fun (i : ι') => M' i) A _inst_2 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_17 i)) (fun (i : ι) => _inst_5 i) (Pi.topologicalSpace.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a)) (ContinuousMultilinearMap.piLinearEquiv._proof_1.{u5, u6} ι' M' _inst_13 _inst_14 _inst_15)) (Pi.module.{u5, max u1 u2 u6, u3} ι' (fun (i : ι') => ContinuousMultilinearMap.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i)) R' _inst_1 (fun (i : ι') => ContinuousMultilinearMap.addCommMonoid.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i) (_inst_15 i)) (fun (i : ι') => ContinuousMultilinearMap.module.{u1, u2, u6, u3, u4} ι M₁ (M' i) R' A _inst_1 _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_5 i) (_inst_14 i) (_inst_15 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (_inst_16 i) (_inst_19 i) (_inst_18 i))) (ContinuousMultilinearMap.module.{u1, u2, max u5 u6, u3, u4} ι M₁ (forall (i : ι'), M' i) R' A _inst_1 _inst_2 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u5, u6} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_13 i)) (fun (i : ι) => _inst_5 i) (Pi.topologicalSpace.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a)) (ContinuousMultilinearMap.piLinearEquiv._proof_2.{u5, u6} ι' M' _inst_13 _inst_14 _inst_15) (fun (i : ι) => _inst_8 i) (Pi.module.{u5, u6, u4} ι' (fun (i : ι') => M' i) A _inst_2 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_17 i)) (Pi.module.{u5, u6, u3} ι' (fun (i : ι') => M' i) R' _inst_1 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_16 i)) (ContinuousMultilinearMap.piLinearEquiv._proof_3.{u3, u5, u6} R' _inst_1 ι' M' _inst_13 _inst_14 _inst_16 _inst_19) (ContinuousMultilinearMap.piLinearEquiv._proof_4.{u3, u4, u5, u6} R' A _inst_1 _inst_2 ι' M' _inst_13 _inst_16 _inst_17 _inst_18))
-but is expected to have type
- forall {ι : Type.{u1}} {M₁ : ι -> Type.{u2}} {R' : Type.{u3}} {A : Type.{u4}} [_inst_1 : Semiring.{u3} R'] [_inst_2 : Semiring.{u4} A] [_inst_3 : forall (i : ι), AddCommMonoid.{u2} (M₁ i)] [_inst_5 : forall (i : ι), TopologicalSpace.{u2} (M₁ i)] [_inst_8 : forall (i : ι), Module.{u4, u2} A (M₁ i) _inst_2 (_inst_3 i)] {ι' : Type.{u5}} {M' : ι' -> Type.{u6}} [_inst_13 : forall (i : ι'), AddCommMonoid.{u6} (M' i)] [_inst_14 : forall (i : ι'), TopologicalSpace.{u6} (M' i)] [_inst_15 : forall (i : ι'), ContinuousAdd.{u6} (M' i) (_inst_14 i) (AddZeroClass.toAdd.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))))] [_inst_16 : forall (i : ι'), Module.{u3, u6} R' (M' i) _inst_1 (_inst_13 i)] [_inst_17 : forall (i : ι'), Module.{u4, u6} A (M' i) _inst_2 (_inst_13 i)] [_inst_18 : forall (i : ι'), SMulCommClass.{u4, u3, u6} A R' (M' i) (SMulZeroClass.toSMul.{u4, u6} A (M' i) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (SMulWithZero.toSMulZeroClass.{u4, u6} A (M' i) (MonoidWithZero.toZero.{u4} A (Semiring.toMonoidWithZero.{u4} A _inst_2)) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (MulActionWithZero.toSMulWithZero.{u4, u6} A (M' i) (Semiring.toMonoidWithZero.{u4} A _inst_2) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (Module.toMulActionWithZero.{u4, u6} A (M' i) _inst_2 (_inst_13 i) (_inst_17 i))))) (SMulZeroClass.toSMul.{u3, u6} R' (M' i) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (SMulWithZero.toSMulZeroClass.{u3, u6} R' (M' i) (MonoidWithZero.toZero.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (MulActionWithZero.toSMulWithZero.{u3, u6} R' (M' i) (Semiring.toMonoidWithZero.{u3} R' _inst_1) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (Module.toMulActionWithZero.{u3, u6} R' (M' i) _inst_1 (_inst_13 i) (_inst_16 i)))))] [_inst_19 : forall (i : ι'), ContinuousConstSMul.{u3, u6} R' (M' i) (_inst_14 i) (SMulZeroClass.toSMul.{u3, u6} R' (M' i) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (SMulWithZero.toSMulZeroClass.{u3, u6} R' (M' i) (MonoidWithZero.toZero.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (MulActionWithZero.toSMulWithZero.{u3, u6} R' (M' i) (Semiring.toMonoidWithZero.{u3} R' _inst_1) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (Module.toMulActionWithZero.{u3, u6} R' (M' i) _inst_1 (_inst_13 i) (_inst_16 i)))))], LinearEquiv.{u3, u3, max (max (max u1 u2) u5) u6, max (max (max u5 u6) u2) u1} R' R' _inst_1 _inst_1 (RingHom.id.{u3} R' (Semiring.toNonAssocSemiring.{u3} R' _inst_1)) (RingHom.id.{u3} R' (Semiring.toNonAssocSemiring.{u3} R' _inst_1)) (RingHomInvPair.ids.{u3} R' _inst_1) (RingHomInvPair.ids.{u3} R' _inst_1) (forall (i : ι'), ContinuousMultilinearMap.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i)) (ContinuousMultilinearMap.{u4, u1, u2, max u5 u6} A ι M₁ (forall (i : ι'), M' i) _inst_2 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u5, u6} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_13 i)) (fun (i : ι) => _inst_8 i) (Pi.module.{u5, u6, u4} ι' (fun (i : ι') => M' i) A _inst_2 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_17 i)) (fun (i : ι) => _inst_5 i) (Pi.topologicalSpace.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a))) (Pi.addCommMonoid.{u5, max (max u1 u2) u6} ι' (fun (i : ι') => ContinuousMultilinearMap.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i)) (fun (i : ι') => ContinuousMultilinearMap.addCommMonoid.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i) (_inst_15 i))) (ContinuousMultilinearMap.addCommMonoid.{u4, u1, u2, max u5 u6} A ι M₁ (forall (i : ι'), M' i) _inst_2 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u5, u6} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_13 i)) (fun (i : ι) => _inst_8 i) (Pi.module.{u5, u6, u4} ι' (fun (i : ι') => M' i) A _inst_2 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_17 i)) (fun (i : ι) => _inst_5 i) (Pi.topologicalSpace.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a)) (Pi.continuousAdd.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a) (fun (i : ι') => AddSemigroup.toAdd.{u6} ((fun (i : ι') => (fun (i : ι') => (fun (i : ι') => M' i) i) i) i) ((fun (i : ι') => AddMonoid.toAddSemigroup.{u6} ((fun (i : ι') => (fun (i : ι') => M' i) i) i) ((fun (i : ι') => AddCommMonoid.toAddMonoid.{u6} ((fun (i : ι') => M' i) i) ((fun (i : ι') => _inst_13 i) i)) i)) i)) (fun (i : ι') => _inst_15 i))) (Pi.module.{u5, max (max u1 u2) u6, u3} ι' (fun (i : ι') => ContinuousMultilinearMap.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i)) R' _inst_1 (fun (i : ι') => ContinuousMultilinearMap.addCommMonoid.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i) (_inst_15 i)) (fun (i : ι') => ContinuousMultilinearMap.instModuleContinuousMultilinearMapAddCommMonoid.{u1, u2, u6, u3, u4} ι M₁ (M' i) R' A _inst_1 _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_5 i) (_inst_14 i) (_inst_15 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (_inst_16 i) (_inst_19 i) (_inst_18 i))) (ContinuousMultilinearMap.instModuleContinuousMultilinearMapAddCommMonoid.{u1, u2, max u5 u6, u3, u4} ι M₁ (forall (i : ι'), M' i) R' A _inst_1 _inst_2 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u5, u6} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_13 i)) (fun (i : ι) => _inst_5 i) (Pi.topologicalSpace.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a)) (Pi.continuousAdd.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a) (fun (i : ι') => AddSemigroup.toAdd.{u6} ((fun (i : ι') => (fun (i : ι') => (fun (i : ι') => M' i) i) i) i) ((fun (i : ι') => AddMonoid.toAddSemigroup.{u6} ((fun (i : ι') => (fun (i : ι') => M' i) i) i) ((fun (i : ι') => AddCommMonoid.toAddMonoid.{u6} ((fun (i : ι') => M' i) i) ((fun (i : ι') => _inst_13 i) i)) i)) i)) (fun (i : ι') => _inst_15 i)) (fun (i : ι) => _inst_8 i) (Pi.module.{u5, u6, u4} ι' (fun (i : ι') => M' i) A _inst_2 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_17 i)) (Pi.module.{u5, u6, u3} ι' (fun (i : ι') => M' i) R' _inst_1 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_16 i)) (instContinuousConstSMulForAllTopologicalSpaceInstSMul.{u3, u5, u6} R' ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a) (fun (i : ι') => MulAction.toSMul.{u3, u6} R' ((fun (i : ι') => (fun (i : ι') => (fun (i : ι') => M' i) i) i) i) (MonoidWithZero.toMonoid.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)) ((fun (i : ι') => DistribMulAction.toMulAction.{u3, u6} R' ((fun (i : ι') => (fun (i : ι') => M' i) i) i) (MonoidWithZero.toMonoid.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)) ((fun (i : ι') => AddCommMonoid.toAddMonoid.{u6} ((fun (i : ι') => M' i) i) ((fun (i : ι') => _inst_13 i) i)) i) ((fun (i : ι') => Module.toDistribMulAction.{u3, u6} R' ((fun (i : ι') => M' i) i) _inst_1 ((fun (i : ι') => _inst_13 i) i) ((fun (i : ι') => _inst_16 i) i)) i)) i)) (fun (i : ι') => _inst_19 i)) (Pi.smulCommClass.{u5, u6, u4, u3} ι' (fun (i : ι') => M' i) A R' (fun (i : ι') => MulAction.toSMul.{u4, u6} A ((fun (i : ι') => (fun (i : ι') => (fun (i : ι') => M' i) i) i) i) (MonoidWithZero.toMonoid.{u4} A (Semiring.toMonoidWithZero.{u4} A _inst_2)) ((fun (i : ι') => DistribMulAction.toMulAction.{u4, u6} A ((fun (i : ι') => (fun (i : ι') => M' i) i) i) (MonoidWithZero.toMonoid.{u4} A (Semiring.toMonoidWithZero.{u4} A _inst_2)) ((fun (i : ι') => AddCommMonoid.toAddMonoid.{u6} ((fun (i : ι') => M' i) i) ((fun (i : ι') => _inst_13 i) i)) i) ((fun (i : ι') => Module.toDistribMulAction.{u4, u6} A ((fun (i : ι') => M' i) i) _inst_2 ((fun (i : ι') => _inst_13 i) i) ((fun (i : ι') => _inst_17 i) i)) i)) i)) (fun (i : ι') => MulAction.toSMul.{u3, u6} R' ((fun (i : ι') => (fun (i : ι') => (fun (i : ι') => M' i) i) i) i) (MonoidWithZero.toMonoid.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)) ((fun (i : ι') => DistribMulAction.toMulAction.{u3, u6} R' ((fun (i : ι') => (fun (i : ι') => M' i) i) i) (MonoidWithZero.toMonoid.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)) ((fun (i : ι') => AddCommMonoid.toAddMonoid.{u6} ((fun (i : ι') => M' i) i) ((fun (i : ι') => _inst_13 i) i)) i) ((fun (i : ι') => Module.toDistribMulAction.{u3, u6} R' ((fun (i : ι') => M' i) i) _inst_1 ((fun (i : ι') => _inst_13 i) i) ((fun (i : ι') => _inst_16 i) i)) i)) i)) (fun (i : ι') => _inst_18 i)))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.pi_linear_equiv ContinuousMultilinearMap.piLinearEquivₓ'. -/
/-- `continuous_multilinear_map.pi` as a `linear_equiv`. -/
@[simps (config := { simpRhs := true })]
@@ -763,10 +688,7 @@ protected def mkPiAlgebra : ContinuousMultilinearMap R (fun i : ι => A) A
#align continuous_multilinear_map.mk_pi_algebra ContinuousMultilinearMap.mkPiAlgebra
/- warning: continuous_multilinear_map.mk_pi_algebra_apply -> ContinuousMultilinearMap.mkPiAlgebra_apply is a dubious translation:
-lean 3 declaration is
- forall (R : Type.{u1}) (ι : Type.{u2}) (A : Type.{u3}) [_inst_1 : Fintype.{u2} ι] [_inst_2 : CommSemiring.{u1} R] [_inst_3 : CommSemiring.{u3} A] [_inst_4 : Algebra.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3)] [_inst_5 : TopologicalSpace.{u3} A] [_inst_6 : ContinuousMul.{u3} A _inst_5 (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))))] (m : ι -> A), Eq.{succ u3} A (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5) => (ι -> A) -> A) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5) (ContinuousMultilinearMap.mkPiAlgebra.{u1, u2, u3} R ι A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) m) (Finset.prod.{u3, u2} A ι (CommSemiring.toCommMonoid.{u3} A _inst_3) (Finset.univ.{u2} ι _inst_1) (fun (i : ι) => m i))
-but is expected to have type
- forall (R : Type.{u2}) (ι : Type.{u3}) (A : Type.{u1}) [_inst_1 : Fintype.{u3} ι] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : CommSemiring.{u1} A] [_inst_4 : Algebra.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3)] [_inst_5 : TopologicalSpace.{u1} A] [_inst_6 : ContinuousMul.{u1} A _inst_5 (NonUnitalNonAssocSemiring.toMul.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3))))] (m : ι -> A), Eq.{succ u1} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) => A) m) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), succ u1} (ContinuousMultilinearMap.{u2, u3, u1, u1} R ι (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) A (CommSemiring.toSemiring.{u2} R _inst_2) (fun (i : ι) => (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3)))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3)))) (fun (i : ι) => (fun (i : ι) => Algebra.toModule.{u2, u1} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3) _inst_4) i) (Algebra.toModule.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3) _inst_4) (fun (i : ι) => (fun (i : ι) => _inst_5) i) _inst_5) (forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (fun (_x : forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) => A) _x) (ContinuousMapClass.toFunLike.{max u3 u1, max u3 u1, u1} (ContinuousMultilinearMap.{u2, u3, u1, u1} R ι (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) A (CommSemiring.toSemiring.{u2} R _inst_2) (fun (i : ι) => (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3)))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3)))) (fun (i : ι) => (fun (i : ι) => Algebra.toModule.{u2, u1} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3) _inst_4) i) (Algebra.toModule.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3) _inst_4) (fun (i : ι) => (fun (i : ι) => _inst_5) i) _inst_5) (forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) A (Pi.topologicalSpace.{u3, u1} ι (fun (i : ι) => (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (fun (a : ι) => (fun (i : ι) => _inst_5) a)) _inst_5 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u1, u1} R ι (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) A (CommSemiring.toSemiring.{u2} R _inst_2) (fun (i : ι) => (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3)))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3)))) (fun (i : ι) => (fun (i : ι) => Algebra.toModule.{u2, u1} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3) _inst_4) i) (Algebra.toModule.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3) _inst_4) (fun (i : ι) => (fun (i : ι) => _inst_5) i) _inst_5)) (ContinuousMultilinearMap.mkPiAlgebra.{u2, u3, u1} R ι A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) m) (Finset.prod.{u1, u3} A ι (CommSemiring.toCommMonoid.{u1} A _inst_3) (Finset.univ.{u3} ι _inst_1) (fun (i : ι) => m i))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra_apply ContinuousMultilinearMap.mkPiAlgebra_applyₓ'. -/
@[simp]
theorem mkPiAlgebra_apply (m : ι → A) : ContinuousMultilinearMap.mkPiAlgebra R ι A m = ∏ i, m i :=
@@ -802,10 +724,7 @@ protected def mkPiAlgebraFin : A[×n]→L[R] A
variable {R n A}
/- warning: continuous_multilinear_map.mk_pi_algebra_fin_apply -> ContinuousMultilinearMap.mkPiAlgebraFin_apply is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {n : Nat} {A : Type.{u2}} [_inst_1 : CommSemiring.{u1} R] [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u2} A] [_inst_5 : ContinuousMul.{u2} A _inst_4 (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))))] (m : (Fin n) -> A), Eq.{succ u2} A (coeFn.{succ u2, succ u2} (ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4) => ((Fin n) -> A) -> A) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4) (ContinuousMultilinearMap.mkPiAlgebraFin.{u1, u2} R n A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5) m) (List.prod.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2)))) (AddMonoidWithOne.toOne.{u2} A (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} A (NonAssocSemiring.toAddCommMonoidWithOne.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2)))) (List.ofFn.{u2} A n m))
-but is expected to have type
- forall {R : Type.{u2}} {n : Nat} {A : Type.{u1}} [_inst_1 : CommSemiring.{u2} R] [_inst_2 : Semiring.{u1} A] [_inst_3 : Algebra.{u2, u1} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u1} A] [_inst_5 : ContinuousMul.{u1} A _inst_4 (NonUnitalNonAssocSemiring.toMul.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2)))] (m : (Fin n) -> A), Eq.{succ u1} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) => A) m) (FunLike.coe.{succ u1, succ u1, succ u1} (ContinuousMultilinearMap.{u2, 0, u1, u1} R (Fin n) (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) A (CommSemiring.toSemiring.{u2} R _inst_1) (fun (i : Fin n) => (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_2))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (fun (i : Fin n) => (fun (i : Fin n) => Algebra.toModule.{u2, u1} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) i) (Algebra.toModule.{u2, u1} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => (fun (i : Fin n) => _inst_4) i) _inst_4) (forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (fun (_x : forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) => A) _x) (ContinuousMapClass.toFunLike.{u1, u1, u1} (ContinuousMultilinearMap.{u2, 0, u1, u1} R (Fin n) (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) A (CommSemiring.toSemiring.{u2} R _inst_1) (fun (i : Fin n) => (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_2))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (fun (i : Fin n) => (fun (i : Fin n) => Algebra.toModule.{u2, u1} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) i) (Algebra.toModule.{u2, u1} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => (fun (i : Fin n) => _inst_4) i) _inst_4) (forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) A (Pi.topologicalSpace.{0, u1} (Fin n) (fun (i : Fin n) => (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (fun (a : Fin n) => (fun (i : Fin n) => _inst_4) a)) _inst_4 (ContinuousMultilinearMap.continuousMapClass.{u2, 0, u1, u1} R (Fin n) (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) A (CommSemiring.toSemiring.{u2} R _inst_1) (fun (i : Fin n) => (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_2))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (fun (i : Fin n) => (fun (i : Fin n) => Algebra.toModule.{u2, u1} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) i) (Algebra.toModule.{u2, u1} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => (fun (i : Fin n) => _inst_4) i) _inst_4)) (ContinuousMultilinearMap.mkPiAlgebraFin.{u2, u1} R n A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5) m) (List.prod.{u1} A (NonUnitalNonAssocSemiring.toMul.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (Semiring.toOne.{u1} A _inst_2) (List.ofFn.{u1} A n m))
+<too large>
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra_fin_apply ContinuousMultilinearMap.mkPiAlgebraFin_applyₓ'. -/
@[simp]
theorem mkPiAlgebraFin_apply (m : Fin n → A) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/0b9eaaa7686280fad8cce467f5c3c57ee6ce77f8
@@ -750,7 +750,7 @@ variable (R ι) (A : Type _) [Fintype ι] [CommSemiring R] [CommSemiring A] [Alg
lean 3 declaration is
forall (R : Type.{u1}) (ι : Type.{u2}) (A : Type.{u3}) [_inst_1 : Fintype.{u2} ι] [_inst_2 : CommSemiring.{u1} R] [_inst_3 : CommSemiring.{u3} A] [_inst_4 : Algebra.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3)] [_inst_5 : TopologicalSpace.{u3} A] [_inst_6 : ContinuousMul.{u3} A _inst_5 (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))))], ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5
but is expected to have type
- forall (R : Type.{u1}) (ι : Type.{u2}) (A : Type.{u3}) [_inst_1 : Fintype.{u2} ι] [_inst_2 : CommSemiring.{u1} R] [_inst_3 : CommSemiring.{u3} A] [_inst_4 : Algebra.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3)] [_inst_5 : TopologicalSpace.{u3} A] [_inst_6 : ContinuousMul.{u3} A _inst_5 (NonUnitalNonAssocSemiring.toMul.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3))))], ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5
+ forall (R : Type.{u1}) (ι : Type.{u2}) (A : Type.{u3}) [_inst_1 : Fintype.{u2} ι] [_inst_2 : CommSemiring.{u1} R] [_inst_3 : CommSemiring.{u3} A] [_inst_4 : Algebra.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3)] [_inst_5 : TopologicalSpace.{u3} A] [_inst_6 : ContinuousMul.{u3} A _inst_5 (NonUnitalNonAssocSemiring.toMul.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3))))], ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra ContinuousMultilinearMap.mkPiAlgebraₓ'. -/
/-- The continuous multilinear map on `A^ι`, where `A` is a normed commutative algebra
over `𝕜`, associating to `m` the product of all the `m i`.
@@ -766,7 +766,7 @@ protected def mkPiAlgebra : ContinuousMultilinearMap R (fun i : ι => A) A
lean 3 declaration is
forall (R : Type.{u1}) (ι : Type.{u2}) (A : Type.{u3}) [_inst_1 : Fintype.{u2} ι] [_inst_2 : CommSemiring.{u1} R] [_inst_3 : CommSemiring.{u3} A] [_inst_4 : Algebra.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3)] [_inst_5 : TopologicalSpace.{u3} A] [_inst_6 : ContinuousMul.{u3} A _inst_5 (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))))] (m : ι -> A), Eq.{succ u3} A (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5) => (ι -> A) -> A) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5) (ContinuousMultilinearMap.mkPiAlgebra.{u1, u2, u3} R ι A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) m) (Finset.prod.{u3, u2} A ι (CommSemiring.toCommMonoid.{u3} A _inst_3) (Finset.univ.{u2} ι _inst_1) (fun (i : ι) => m i))
but is expected to have type
- forall (R : Type.{u2}) (ι : Type.{u3}) (A : Type.{u1}) [_inst_1 : Fintype.{u3} ι] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : CommSemiring.{u1} A] [_inst_4 : Algebra.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3)] [_inst_5 : TopologicalSpace.{u1} A] [_inst_6 : ContinuousMul.{u1} A _inst_5 (NonUnitalNonAssocSemiring.toMul.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3))))] (m : ι -> A), Eq.{succ u1} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) => A) m) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), succ u1} (ContinuousMultilinearMap.{u2, u3, u1, u1} R ι (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) A (CommSemiring.toSemiring.{u2} R _inst_2) (fun (i : ι) => (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3)))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3)))) (fun (i : ι) => (fun (i : ι) => Algebra.toModule.{u2, u1} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3) _inst_4) i) (Algebra.toModule.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3) _inst_4) (fun (i : ι) => (fun (i : ι) => _inst_5) i) _inst_5) (forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (fun (_x : forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) => A) _x) (ContinuousMapClass.toFunLike.{max u3 u1, max u3 u1, u1} (ContinuousMultilinearMap.{u2, u3, u1, u1} R ι (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) A (CommSemiring.toSemiring.{u2} R _inst_2) (fun (i : ι) => (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3)))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3)))) (fun (i : ι) => (fun (i : ι) => Algebra.toModule.{u2, u1} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3) _inst_4) i) (Algebra.toModule.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3) _inst_4) (fun (i : ι) => (fun (i : ι) => _inst_5) i) _inst_5) (forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) A (Pi.topologicalSpace.{u3, u1} ι (fun (i : ι) => (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (fun (a : ι) => (fun (i : ι) => _inst_5) a)) _inst_5 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u1, u1} R ι (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) A (CommSemiring.toSemiring.{u2} R _inst_2) (fun (i : ι) => (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3)))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3)))) (fun (i : ι) => (fun (i : ι) => Algebra.toModule.{u2, u1} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3) _inst_4) i) (Algebra.toModule.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3) _inst_4) (fun (i : ι) => (fun (i : ι) => _inst_5) i) _inst_5)) (ContinuousMultilinearMap.mkPiAlgebra.{u2, u3, u1} R ι A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) m) (Finset.prod.{u1, u3} A ι (CommSemiring.toCommMonoid.{u1} A _inst_3) (Finset.univ.{u3} ι _inst_1) (fun (i : ι) => m i))
+ forall (R : Type.{u2}) (ι : Type.{u3}) (A : Type.{u1}) [_inst_1 : Fintype.{u3} ι] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : CommSemiring.{u1} A] [_inst_4 : Algebra.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3)] [_inst_5 : TopologicalSpace.{u1} A] [_inst_6 : ContinuousMul.{u1} A _inst_5 (NonUnitalNonAssocSemiring.toMul.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3))))] (m : ι -> A), Eq.{succ u1} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) => A) m) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), succ u1} (ContinuousMultilinearMap.{u2, u3, u1, u1} R ι (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) A (CommSemiring.toSemiring.{u2} R _inst_2) (fun (i : ι) => (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3)))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3)))) (fun (i : ι) => (fun (i : ι) => Algebra.toModule.{u2, u1} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3) _inst_4) i) (Algebra.toModule.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3) _inst_4) (fun (i : ι) => (fun (i : ι) => _inst_5) i) _inst_5) (forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (fun (_x : forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) => A) _x) (ContinuousMapClass.toFunLike.{max u3 u1, max u3 u1, u1} (ContinuousMultilinearMap.{u2, u3, u1, u1} R ι (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) A (CommSemiring.toSemiring.{u2} R _inst_2) (fun (i : ι) => (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3)))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3)))) (fun (i : ι) => (fun (i : ι) => Algebra.toModule.{u2, u1} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3) _inst_4) i) (Algebra.toModule.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3) _inst_4) (fun (i : ι) => (fun (i : ι) => _inst_5) i) _inst_5) (forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) A (Pi.topologicalSpace.{u3, u1} ι (fun (i : ι) => (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (fun (a : ι) => (fun (i : ι) => _inst_5) a)) _inst_5 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u1, u1} R ι (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) A (CommSemiring.toSemiring.{u2} R _inst_2) (fun (i : ι) => (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3)))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3)))) (fun (i : ι) => (fun (i : ι) => Algebra.toModule.{u2, u1} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22059 : ι) => A) i) _inst_3) _inst_4) i) (Algebra.toModule.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3) _inst_4) (fun (i : ι) => (fun (i : ι) => _inst_5) i) _inst_5)) (ContinuousMultilinearMap.mkPiAlgebra.{u2, u3, u1} R ι A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) m) (Finset.prod.{u1, u3} A ι (CommSemiring.toCommMonoid.{u1} A _inst_3) (Finset.univ.{u3} ι _inst_1) (fun (i : ι) => m i))
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra_apply ContinuousMultilinearMap.mkPiAlgebra_applyₓ'. -/
@[simp]
theorem mkPiAlgebra_apply (m : ι → A) : ContinuousMultilinearMap.mkPiAlgebra R ι A m = ∏ i, m i :=
@@ -784,7 +784,7 @@ variable (R n) (A : Type _) [CommSemiring R] [Semiring A] [Algebra R A] [Topolog
lean 3 declaration is
forall (R : Type.{u1}) (n : Nat) (A : Type.{u2}) [_inst_1 : CommSemiring.{u1} R] [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u2} A] [_inst_5 : ContinuousMul.{u2} A _inst_4 (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))))], ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4
but is expected to have type
- forall (R : Type.{u1}) (n : Nat) (A : Type.{u2}) [_inst_1 : CommSemiring.{u1} R] [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u2} A] [_inst_5 : ContinuousMul.{u2} A _inst_4 (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2)))], ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u2} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4
+ forall (R : Type.{u1}) (n : Nat) (A : Type.{u2}) [_inst_1 : CommSemiring.{u1} R] [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u2} A] [_inst_5 : ContinuousMul.{u2} A _inst_4 (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2)))], ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u2} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra_fin ContinuousMultilinearMap.mkPiAlgebraFinₓ'. -/
/-- The continuous multilinear map on `A^n`, where `A` is a normed algebra over `𝕜`, associating to
`m` the product of all the `m i`.
@@ -805,7 +805,7 @@ variable {R n A}
lean 3 declaration is
forall {R : Type.{u1}} {n : Nat} {A : Type.{u2}} [_inst_1 : CommSemiring.{u1} R] [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u2} A] [_inst_5 : ContinuousMul.{u2} A _inst_4 (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))))] (m : (Fin n) -> A), Eq.{succ u2} A (coeFn.{succ u2, succ u2} (ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4) => ((Fin n) -> A) -> A) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4) (ContinuousMultilinearMap.mkPiAlgebraFin.{u1, u2} R n A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5) m) (List.prod.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2)))) (AddMonoidWithOne.toOne.{u2} A (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} A (NonAssocSemiring.toAddCommMonoidWithOne.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2)))) (List.ofFn.{u2} A n m))
but is expected to have type
- forall {R : Type.{u2}} {n : Nat} {A : Type.{u1}} [_inst_1 : CommSemiring.{u2} R] [_inst_2 : Semiring.{u1} A] [_inst_3 : Algebra.{u2, u1} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u1} A] [_inst_5 : ContinuousMul.{u1} A _inst_4 (NonUnitalNonAssocSemiring.toMul.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2)))] (m : (Fin n) -> A), Eq.{succ u1} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) => A) m) (FunLike.coe.{succ u1, succ u1, succ u1} (ContinuousMultilinearMap.{u2, 0, u1, u1} R (Fin n) (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) A (CommSemiring.toSemiring.{u2} R _inst_1) (fun (i : Fin n) => (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_2))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (fun (i : Fin n) => (fun (i : Fin n) => Algebra.toModule.{u2, u1} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) i) (Algebra.toModule.{u2, u1} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => (fun (i : Fin n) => _inst_4) i) _inst_4) (forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (fun (_x : forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) => A) _x) (ContinuousMapClass.toFunLike.{u1, u1, u1} (ContinuousMultilinearMap.{u2, 0, u1, u1} R (Fin n) (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) A (CommSemiring.toSemiring.{u2} R _inst_1) (fun (i : Fin n) => (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_2))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (fun (i : Fin n) => (fun (i : Fin n) => Algebra.toModule.{u2, u1} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) i) (Algebra.toModule.{u2, u1} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => (fun (i : Fin n) => _inst_4) i) _inst_4) (forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) A (Pi.topologicalSpace.{0, u1} (Fin n) (fun (i : Fin n) => (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (fun (a : Fin n) => (fun (i : Fin n) => _inst_4) a)) _inst_4 (ContinuousMultilinearMap.continuousMapClass.{u2, 0, u1, u1} R (Fin n) (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) A (CommSemiring.toSemiring.{u2} R _inst_1) (fun (i : Fin n) => (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_2))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (fun (i : Fin n) => (fun (i : Fin n) => Algebra.toModule.{u2, u1} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) i) (Algebra.toModule.{u2, u1} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => (fun (i : Fin n) => _inst_4) i) _inst_4)) (ContinuousMultilinearMap.mkPiAlgebraFin.{u2, u1} R n A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5) m) (List.prod.{u1} A (NonUnitalNonAssocSemiring.toMul.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (Semiring.toOne.{u1} A _inst_2) (List.ofFn.{u1} A n m))
+ forall {R : Type.{u2}} {n : Nat} {A : Type.{u1}} [_inst_1 : CommSemiring.{u2} R] [_inst_2 : Semiring.{u1} A] [_inst_3 : Algebra.{u2, u1} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u1} A] [_inst_5 : ContinuousMul.{u1} A _inst_4 (NonUnitalNonAssocSemiring.toMul.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2)))] (m : (Fin n) -> A), Eq.{succ u1} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) => A) m) (FunLike.coe.{succ u1, succ u1, succ u1} (ContinuousMultilinearMap.{u2, 0, u1, u1} R (Fin n) (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) A (CommSemiring.toSemiring.{u2} R _inst_1) (fun (i : Fin n) => (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_2))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (fun (i : Fin n) => (fun (i : Fin n) => Algebra.toModule.{u2, u1} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) i) (Algebra.toModule.{u2, u1} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => (fun (i : Fin n) => _inst_4) i) _inst_4) (forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (fun (_x : forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) => A) _x) (ContinuousMapClass.toFunLike.{u1, u1, u1} (ContinuousMultilinearMap.{u2, 0, u1, u1} R (Fin n) (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) A (CommSemiring.toSemiring.{u2} R _inst_1) (fun (i : Fin n) => (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_2))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (fun (i : Fin n) => (fun (i : Fin n) => Algebra.toModule.{u2, u1} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) i) (Algebra.toModule.{u2, u1} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => (fun (i : Fin n) => _inst_4) i) _inst_4) (forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) A (Pi.topologicalSpace.{0, u1} (Fin n) (fun (i : Fin n) => (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (fun (a : Fin n) => (fun (i : Fin n) => _inst_4) a)) _inst_4 (ContinuousMultilinearMap.continuousMapClass.{u2, 0, u1, u1} R (Fin n) (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) A (CommSemiring.toSemiring.{u2} R _inst_1) (fun (i : Fin n) => (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_2))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (fun (i : Fin n) => (fun (i : Fin n) => Algebra.toModule.{u2, u1} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22228 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) i) (Algebra.toModule.{u2, u1} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => (fun (i : Fin n) => _inst_4) i) _inst_4)) (ContinuousMultilinearMap.mkPiAlgebraFin.{u2, u1} R n A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5) m) (List.prod.{u1} A (NonUnitalNonAssocSemiring.toMul.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (Semiring.toOne.{u1} A _inst_2) (List.ofFn.{u1} A n m))
Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra_fin_apply ContinuousMultilinearMap.mkPiAlgebraFin_applyₓ'. -/
@[simp]
theorem mkPiAlgebraFin_apply (m : Fin n → A) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/86d04064ca33ee3d3405fbfc497d494fd2dd4796
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Sébastien Gouëzel
! This file was ported from Lean 3 source module topology.algebra.module.multilinear
-! leanprover-community/mathlib commit 284fdd2962e67d2932fa3a79ce19fcf92d38e228
+! leanprover-community/mathlib commit f2b757fc5c341d88741b9c4630b1e8ba973c5726
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -14,6 +14,9 @@ import Mathbin.LinearAlgebra.Multilinear.Basic
/-!
# Continuous multilinear maps
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
We define continuous multilinear maps as maps from `Π(i : ι), M₁ i` to `M₂` which are multilinear
and continuous, by extending the space of multilinear maps with a continuity assumption.
Here, `M₁ i` and `M₂` are modules over a ring `R`, and `ι` is an arbitrary type, and all these
mathlib commit https://github.com/leanprover-community/mathlib/commit/fa78268d4d77cb2b2fbc89f0527e2e7807763780
@@ -46,6 +46,7 @@ universe u v w w₁ w₁' w₂ w₃ w₄
variable {R : Type u} {ι : Type v} {n : ℕ} {M : Fin n.succ → Type w} {M₁ : ι → Type w₁}
{M₁' : ι → Type w₁'} {M₂ : Type w₂} {M₃ : Type w₃} {M₄ : Type w₄}
+#print ContinuousMultilinearMap /-
/-- Continuous multilinear maps over the ring `R`, from `Πi, M₁ i` to `M₂` where `M₁ i` and `M₂`
are modules over `R` with a topological structure. In applications, there will be compatibility
conditions between the algebraic and the topological structures, but this is not needed for the
@@ -55,6 +56,7 @@ structure ContinuousMultilinearMap (R : Type u) {ι : Type v} (M₁ : ι → Typ
[∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂] extends MultilinearMap R M₁ M₂ where
cont : Continuous to_fun
#align continuous_multilinear_map ContinuousMultilinearMap
+-/
-- mathport name: «expr [× ]→L[ ] »
notation:25 M "[×" n "]→L[" R "] " M' => ContinuousMultilinearMap R (fun i : Fin n => M) M'
@@ -70,67 +72,101 @@ variable [Semiring R] [∀ i, AddCommMonoid (M i)] [∀ i, AddCommMonoid (M₁ i
[∀ i, TopologicalSpace (M₁' i)] [TopologicalSpace M₂] [TopologicalSpace M₃] [TopologicalSpace M₄]
(f f' : ContinuousMultilinearMap R M₁ M₂)
+#print ContinuousMultilinearMap.toMultilinearMap_injective /-
theorem toMultilinearMap_injective :
Function.Injective
(ContinuousMultilinearMap.toMultilinearMap :
ContinuousMultilinearMap R M₁ M₂ → MultilinearMap R M₁ M₂)
| ⟨f, hf⟩, ⟨g, hg⟩, rfl => rfl
#align continuous_multilinear_map.to_multilinear_map_injective ContinuousMultilinearMap.toMultilinearMap_injective
+-/
+#print ContinuousMultilinearMap.continuousMapClass /-
instance continuousMapClass : ContinuousMapClass (ContinuousMultilinearMap R M₁ M₂) (∀ i, M₁ i) M₂
where
coe f := f.toFun
coe_injective' f g h := toMultilinearMap_injective <| MultilinearMap.coe_injective h
map_continuous := ContinuousMultilinearMap.cont
#align continuous_multilinear_map.continuous_map_class ContinuousMultilinearMap.continuousMapClass
+-/
instance : CoeFun (ContinuousMultilinearMap R M₁ M₂) fun _ => (∀ i, M₁ i) → M₂ :=
⟨fun f => f⟩
+#print ContinuousMultilinearMap.Simps.apply /-
/-- See Note [custom simps projection]. We need to specify this projection explicitly in this case,
because it is a composition of multiple projections. -/
def Simps.apply (L₁ : ContinuousMultilinearMap R M₁ M₂) (v : ∀ i, M₁ i) : M₂ :=
L₁ v
#align continuous_multilinear_map.simps.apply ContinuousMultilinearMap.Simps.apply
+-/
initialize_simps_projections ContinuousMultilinearMap (-toMultilinearMap,
to_multilinear_map_to_fun → apply)
+#print ContinuousMultilinearMap.coe_continuous /-
@[continuity]
theorem coe_continuous : Continuous (f : (∀ i, M₁ i) → M₂) :=
f.cont
#align continuous_multilinear_map.coe_continuous ContinuousMultilinearMap.coe_continuous
+-/
+#print ContinuousMultilinearMap.coe_coe /-
@[simp]
theorem coe_coe : (f.toMultilinearMap : (∀ i, M₁ i) → M₂) = f :=
rfl
#align continuous_multilinear_map.coe_coe ContinuousMultilinearMap.coe_coe
+-/
+#print ContinuousMultilinearMap.ext /-
@[ext]
theorem ext {f f' : ContinuousMultilinearMap R M₁ M₂} (H : ∀ x, f x = f' x) : f = f' :=
FunLike.ext _ _ H
#align continuous_multilinear_map.ext ContinuousMultilinearMap.ext
+-/
+#print ContinuousMultilinearMap.ext_iff /-
theorem ext_iff {f f' : ContinuousMultilinearMap R M₁ M₂} : f = f' ↔ ∀ x, f x = f' x := by
rw [← to_multilinear_map_injective.eq_iff, MultilinearMap.ext_iff] <;> rfl
#align continuous_multilinear_map.ext_iff ContinuousMultilinearMap.ext_iff
+-/
+/- warning: continuous_multilinear_map.map_add -> ContinuousMultilinearMap.map_add is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : DecidableEq.{succ u2} ι] (m : forall (i : ι), M₁ i) (i : ι) (x : M₁ i) (y : M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i (HAdd.hAdd.{u3, u3, u3} (M₁ i) (M₁ i) (M₁ i) (instHAdd.{u3} (M₁ i) (AddZeroClass.toHasAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))) x y))) (HAdd.hAdd.{u4, u4, u4} M₂ M₂ M₂ (instHAdd.{u4} M₂ (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i y)))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : DecidableEq.{succ u2} ι] (m : forall (i : ι), M₁ i) (i : ι) (x : M₁ i) (y : M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i (HAdd.hAdd.{u3, u3, u3} (M₁ i) (M₁ i) (M₁ i) (instHAdd.{u3} (M₁ i) (AddZeroClass.toAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))) x y))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i (HAdd.hAdd.{u3, u3, u3} (M₁ i) (M₁ i) (M₁ i) (instHAdd.{u3} (M₁ i) (AddZeroClass.toAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))) x y))) (HAdd.hAdd.{u4, u4, u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i y)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) (instHAdd.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) (AddZeroClass.toAdd.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) (AddMonoid.toAddZeroClass.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) _inst_5)))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_20 a b) m i y)))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_add ContinuousMultilinearMap.map_addₓ'. -/
@[simp]
theorem map_add [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (x y : M₁ i) :
f (update m i (x + y)) = f (update m i x) + f (update m i y) :=
f.map_add' m i x y
#align continuous_multilinear_map.map_add ContinuousMultilinearMap.map_add
+#print ContinuousMultilinearMap.map_smul /-
@[simp]
theorem map_smul [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (c : R) (x : M₁ i) :
f (update m i (c • x)) = c • f (update m i x) :=
f.map_smul' m i c x
#align continuous_multilinear_map.map_smul ContinuousMultilinearMap.map_smul
+-/
+/- warning: continuous_multilinear_map.map_coord_zero -> ContinuousMultilinearMap.map_coord_zero is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) {m : forall (i : ι), M₁ i} (i : ι), (Eq.{succ u3} (M₁ i) (m i) (OfNat.ofNat.{u3} (M₁ i) 0 (OfNat.mk.{u3} (M₁ i) 0 (Zero.zero.{u3} (M₁ i) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))))) -> (Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f m) (OfNat.ofNat.{u4} M₂ 0 (OfNat.mk.{u4} M₂ 0 (Zero.zero.{u4} M₂ (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))))))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) {m : forall (i : ι), M₁ i} (i : ι), (Eq.{succ u3} (M₁ i) (m i) (OfNat.ofNat.{u3} (M₁ i) 0 (Zero.toOfNat0.{u3} (M₁ i) (AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) -> (Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f m) (OfNat.ofNat.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) 0 (Zero.toOfNat0.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_5)))))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_coord_zero ContinuousMultilinearMap.map_coord_zeroₓ'. -/
theorem map_coord_zero {m : ∀ i, M₁ i} (i : ι) (h : m i = 0) : f m = 0 :=
f.toMultilinearMap.map_coord_zero i h
#align continuous_multilinear_map.map_coord_zero ContinuousMultilinearMap.map_coord_zero
+/- warning: continuous_multilinear_map.map_zero -> ContinuousMultilinearMap.map_zero is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : Nonempty.{succ u2} ι], Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (OfNat.mk.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.zero.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))))) (OfNat.ofNat.{u4} M₂ 0 (OfNat.mk.{u4} M₂ 0 (Zero.zero.{u4} M₂ (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))))))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : Nonempty.{succ u2} ι], Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.toOfNat0.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.toOfNat0.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))) (OfNat.ofNat.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.toOfNat0.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))) 0 (Zero.toOfNat0.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.toOfNat0.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.toOfNat0.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (OfNat.ofNat.{max u2 u3} (forall (i : ι), M₁ i) 0 (Zero.toOfNat0.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instZero.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddMonoid.toZero.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i))))))) _inst_5))))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_zero ContinuousMultilinearMap.map_zeroₓ'. -/
@[simp]
theorem map_zero [Nonempty ι] : f 0 = 0 :=
f.toMultilinearMap.map_zero
@@ -142,11 +178,23 @@ instance : Zero (ContinuousMultilinearMap R M₁ M₂) :=
instance : Inhabited (ContinuousMultilinearMap R M₁ M₂) :=
⟨0⟩
+/- warning: continuous_multilinear_map.zero_apply -> ContinuousMultilinearMap.zero_apply is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (m : forall (i : ι), M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (OfNat.ofNat.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) 0 (OfNat.mk.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) 0 (Zero.zero.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.hasZero.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17)))) m) (OfNat.ofNat.{u4} M₂ 0 (OfNat.mk.{u4} M₂ 0 (Zero.zero.{u4} M₂ (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))))))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (m : forall (i : ι), M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) (OfNat.ofNat.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) 0 (Zero.toOfNat0.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.instZeroContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17))) m) (OfNat.ofNat.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) 0 (Zero.toOfNat0.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddMonoid.toZero.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_5))))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.zero_apply ContinuousMultilinearMap.zero_applyₓ'. -/
@[simp]
theorem zero_apply (m : ∀ i, M₁ i) : (0 : ContinuousMultilinearMap R M₁ M₂) m = 0 :=
rfl
#align continuous_multilinear_map.zero_apply ContinuousMultilinearMap.zero_apply
+/- warning: continuous_multilinear_map.to_multilinear_map_zero -> ContinuousMultilinearMap.toMultilinearMap_zero is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂], Eq.{max (succ u2) (succ u3) (succ u4)} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 (OfNat.ofNat.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) 0 (OfNat.mk.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) 0 (Zero.zero.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.hasZero.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17))))) (OfNat.ofNat.{max u2 u3 u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) 0 (OfNat.mk.{max u2 u3 u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) 0 (Zero.zero.{max u2 u3 u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.hasZero.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11))))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂], Eq.{max (max (succ u2) (succ u3)) (succ u4)} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 (OfNat.ofNat.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) 0 (Zero.toOfNat0.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.instZeroContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17)))) (OfNat.ofNat.{max (max u2 u3) u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) 0 (Zero.toOfNat0.{max (max u2 u3) u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.instZeroMultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11)))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.to_multilinear_map_zero ContinuousMultilinearMap.toMultilinearMap_zeroₓ'. -/
@[simp]
theorem toMultilinearMap_zero : (0 : ContinuousMultilinearMap R M₁ M₂).toMultilinearMap = 0 :=
rfl
@@ -161,12 +209,24 @@ variable {R' R'' A : Type _} [Monoid R'] [Monoid R''] [Semiring A] [∀ i, Modul
instance : SMul R' (ContinuousMultilinearMap A M₁ M₂) :=
⟨fun c f => { c • f.toMultilinearMap with cont := f.cont.const_smul c }⟩
+/- warning: continuous_multilinear_map.smul_apply -> ContinuousMultilinearMap.smul_apply is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} {M₁ : ι -> Type.{u2}} {M₂ : Type.{u3}} [_inst_3 : forall (i : ι), AddCommMonoid.{u2} (M₁ i)] [_inst_5 : AddCommMonoid.{u3} M₂] [_inst_15 : forall (i : ι), TopologicalSpace.{u2} (M₁ i)] [_inst_17 : TopologicalSpace.{u3} M₂] {R' : Type.{u4}} {A : Type.{u5}} [_inst_20 : Monoid.{u4} R'] [_inst_22 : Semiring.{u5} A] [_inst_23 : forall (i : ι), Module.{u5, u2} A (M₁ i) _inst_22 (_inst_3 i)] [_inst_24 : Module.{u5, u3} A M₂ _inst_22 _inst_5] [_inst_25 : DistribMulAction.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)] [_inst_26 : ContinuousConstSMul.{u4, u3} R' M₂ _inst_17 (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (DistribSMul.toSmulZeroClass.{u4, u3} R' M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5) _inst_25)))] [_inst_27 : SMulCommClass.{u5, u4, u3} A R' M₂ (SMulZeroClass.toHasSmul.{u5, u3} A M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (SMulWithZero.toSmulZeroClass.{u5, u3} A M₂ (MulZeroClass.toHasZero.{u5} A (MulZeroOneClass.toMulZeroClass.{u5} A (MonoidWithZero.toMulZeroOneClass.{u5} A (Semiring.toMonoidWithZero.{u5} A _inst_22)))) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (MulActionWithZero.toSMulWithZero.{u5, u3} A M₂ (Semiring.toMonoidWithZero.{u5} A _inst_22) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (Module.toMulActionWithZero.{u5, u3} A M₂ _inst_22 _inst_5 _inst_24)))) (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (DistribSMul.toSmulZeroClass.{u4, u3} R' M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5) _inst_25)))] (f : ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (c : R') (m : forall (i : ι), M₁ i), Eq.{succ u3} M₂ (coeFn.{max (succ u1) (succ u2) (succ u3), max (max (succ u1) (succ u2)) (succ u3)} (ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (SMul.smul.{u4, max u1 u2 u3} R' (ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.hasSmul.{u1, u2, u3, u4, u5} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_15 i) _inst_17 R' A _inst_20 _inst_22 (fun (i : ι) => _inst_23 i) _inst_24 _inst_25 _inst_26 _inst_27) c f) m) (SMul.smul.{u4, u3} R' M₂ (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (DistribSMul.toSmulZeroClass.{u4, u3} R' M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5) _inst_25))) c (coeFn.{max (succ u1) (succ u2) (succ u3), max (max (succ u1) (succ u2)) (succ u3)} (ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) f m))
+but is expected to have type
+ forall {ι : Type.{u3}} {M₁ : ι -> Type.{u4}} {M₂ : Type.{u5}} [_inst_3 : forall (i : ι), AddCommMonoid.{u4} (M₁ i)] [_inst_5 : AddCommMonoid.{u5} M₂] [_inst_15 : forall (i : ι), TopologicalSpace.{u4} (M₁ i)] [_inst_17 : TopologicalSpace.{u5} M₂] {R' : Type.{u1}} {A : Type.{u2}} [_inst_20 : Monoid.{u1} R'] [_inst_22 : Semiring.{u2} A] [_inst_23 : forall (i : ι), Module.{u2, u4} A (M₁ i) _inst_22 (_inst_3 i)] [_inst_24 : Module.{u2, u5} A M₂ _inst_22 _inst_5] [_inst_25 : DistribMulAction.{u1, u5} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)] [_inst_26 : ContinuousConstSMul.{u1, u5} R' M₂ _inst_17 (SMulZeroClass.toSMul.{u1, u5} R' M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribSMul.toSMulZeroClass.{u1, u5} R' M₂ (AddMonoid.toAddZeroClass.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u1, u5} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5) _inst_25)))] [_inst_27 : SMulCommClass.{u2, u1, u5} A R' M₂ (SMulZeroClass.toSMul.{u2, u5} A M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (SMulWithZero.toSMulZeroClass.{u2, u5} A M₂ (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_22)) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (MulActionWithZero.toSMulWithZero.{u2, u5} A M₂ (Semiring.toMonoidWithZero.{u2} A _inst_22) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (Module.toMulActionWithZero.{u2, u5} A M₂ _inst_22 _inst_5 _inst_24)))) (SMulZeroClass.toSMul.{u1, u5} R' M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribSMul.toSMulZeroClass.{u1, u5} R' M₂ (AddMonoid.toAddZeroClass.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u1, u5} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5) _inst_25)))] (f : ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (c : R') (m : forall (i : ι), M₁ i), Eq.{succ u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_23 i) i) _inst_24 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_23 i) i) _inst_24 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_23 i) i) _inst_24 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) (HSMul.hSMul.{u1, max (max u3 u4) u5, max (max u3 u4) u5} R' (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (instHSMul.{u1, max (max u3 u4) u5} R' (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.instSMulContinuousMultilinearMap.{u3, u4, u5, u1, u2} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_15 i) _inst_17 R' A _inst_20 _inst_22 (fun (i : ι) => _inst_23 i) _inst_24 _inst_25 _inst_26 _inst_27)) c f) m) (HSMul.hSMul.{u1, u5, u5} R' ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (instHSMul.{u1, u5} R' ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (SMulZeroClass.toSMul.{u1, u5} R' ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddMonoid.toZero.{u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommMonoid.toAddMonoid.{u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_5)) (DistribSMul.toSMulZeroClass.{u1, u5} R' ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddMonoid.toAddZeroClass.{u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommMonoid.toAddMonoid.{u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_5)) (DistribMulAction.toDistribSMul.{u1, u5} R' ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_20 (AddCommMonoid.toAddMonoid.{u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_5) _inst_25)))) c (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_23 i) i) _inst_24 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_23 i) i) _inst_24 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_23 i) i) _inst_24 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f m))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.smul_apply ContinuousMultilinearMap.smul_applyₓ'. -/
@[simp]
theorem smul_apply (f : ContinuousMultilinearMap A M₁ M₂) (c : R') (m : ∀ i, M₁ i) :
(c • f) m = c • f m :=
rfl
#align continuous_multilinear_map.smul_apply ContinuousMultilinearMap.smul_apply
+/- warning: continuous_multilinear_map.to_multilinear_map_smul -> ContinuousMultilinearMap.toMultilinearMap_smul is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} {M₁ : ι -> Type.{u2}} {M₂ : Type.{u3}} [_inst_3 : forall (i : ι), AddCommMonoid.{u2} (M₁ i)] [_inst_5 : AddCommMonoid.{u3} M₂] [_inst_15 : forall (i : ι), TopologicalSpace.{u2} (M₁ i)] [_inst_17 : TopologicalSpace.{u3} M₂] {R' : Type.{u4}} {A : Type.{u5}} [_inst_20 : Monoid.{u4} R'] [_inst_22 : Semiring.{u5} A] [_inst_23 : forall (i : ι), Module.{u5, u2} A (M₁ i) _inst_22 (_inst_3 i)] [_inst_24 : Module.{u5, u3} A M₂ _inst_22 _inst_5] [_inst_25 : DistribMulAction.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)] [_inst_26 : ContinuousConstSMul.{u4, u3} R' M₂ _inst_17 (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (DistribSMul.toSmulZeroClass.{u4, u3} R' M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5) _inst_25)))] [_inst_27 : SMulCommClass.{u5, u4, u3} A R' M₂ (SMulZeroClass.toHasSmul.{u5, u3} A M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (SMulWithZero.toSmulZeroClass.{u5, u3} A M₂ (MulZeroClass.toHasZero.{u5} A (MulZeroOneClass.toMulZeroClass.{u5} A (MonoidWithZero.toMulZeroOneClass.{u5} A (Semiring.toMonoidWithZero.{u5} A _inst_22)))) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (MulActionWithZero.toSMulWithZero.{u5, u3} A M₂ (Semiring.toMonoidWithZero.{u5} A _inst_22) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (Module.toMulActionWithZero.{u5, u3} A M₂ _inst_22 _inst_5 _inst_24)))) (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (DistribSMul.toSmulZeroClass.{u4, u3} R' M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u4, u3} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5) _inst_25)))] (c : R') (f : ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (succ u1) (succ u2) (succ u3)} (MultilinearMap.{u5, u2, u3, u1} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24) (ContinuousMultilinearMap.toMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17 (SMul.smul.{u4, max u1 u2 u3} R' (ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.hasSmul.{u1, u2, u3, u4, u5} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_15 i) _inst_17 R' A _inst_20 _inst_22 (fun (i : ι) => _inst_23 i) _inst_24 _inst_25 _inst_26 _inst_27) c f)) (SMul.smul.{u4, max u1 u2 u3} R' (MultilinearMap.{u5, u2, u3, u1} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24) (MultilinearMap.hasSmul.{u2, u3, u1, u4, u5} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_5 R' A _inst_20 _inst_22 (fun (i : ι) => _inst_23 i) _inst_25 _inst_24 _inst_27) c (ContinuousMultilinearMap.toMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17 f))
+but is expected to have type
+ forall {ι : Type.{u3}} {M₁ : ι -> Type.{u4}} {M₂ : Type.{u5}} [_inst_3 : forall (i : ι), AddCommMonoid.{u4} (M₁ i)] [_inst_5 : AddCommMonoid.{u5} M₂] [_inst_15 : forall (i : ι), TopologicalSpace.{u4} (M₁ i)] [_inst_17 : TopologicalSpace.{u5} M₂] {R' : Type.{u1}} {A : Type.{u2}} [_inst_20 : Monoid.{u1} R'] [_inst_22 : Semiring.{u2} A] [_inst_23 : forall (i : ι), Module.{u2, u4} A (M₁ i) _inst_22 (_inst_3 i)] [_inst_24 : Module.{u2, u5} A M₂ _inst_22 _inst_5] [_inst_25 : DistribMulAction.{u1, u5} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)] [_inst_26 : ContinuousConstSMul.{u1, u5} R' M₂ _inst_17 (SMulZeroClass.toSMul.{u1, u5} R' M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribSMul.toSMulZeroClass.{u1, u5} R' M₂ (AddMonoid.toAddZeroClass.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u1, u5} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5) _inst_25)))] [_inst_27 : SMulCommClass.{u2, u1, u5} A R' M₂ (SMulZeroClass.toSMul.{u2, u5} A M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (SMulWithZero.toSMulZeroClass.{u2, u5} A M₂ (MonoidWithZero.toZero.{u2} A (Semiring.toMonoidWithZero.{u2} A _inst_22)) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (MulActionWithZero.toSMulWithZero.{u2, u5} A M₂ (Semiring.toMonoidWithZero.{u2} A _inst_22) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (Module.toMulActionWithZero.{u2, u5} A M₂ _inst_22 _inst_5 _inst_24)))) (SMulZeroClass.toSMul.{u1, u5} R' M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribSMul.toSMulZeroClass.{u1, u5} R' M₂ (AddMonoid.toAddZeroClass.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (DistribMulAction.toDistribSMul.{u1, u5} R' M₂ _inst_20 (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5) _inst_25)))] (c : R') (f : ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (max (succ u3) (succ u4)) (succ u5)} (MultilinearMap.{u2, u4, u5, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24) (ContinuousMultilinearMap.toMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17 (HSMul.hSMul.{u1, max (max u3 u4) u5, max (max u3 u4) u5} R' (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (instHSMul.{u1, max (max u3 u4) u5} R' (ContinuousMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.instSMulContinuousMultilinearMap.{u3, u4, u5, u1, u2} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_15 i) _inst_17 R' A _inst_20 _inst_22 (fun (i : ι) => _inst_23 i) _inst_24 _inst_25 _inst_26 _inst_27)) c f)) (HSMul.hSMul.{u1, max (max u3 u4) u5, max (max u3 u4) u5} R' (MultilinearMap.{u2, u4, u5, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24) (MultilinearMap.{u2, u4, u5, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24) (instHSMul.{u1, max (max u3 u4) u5} R' (MultilinearMap.{u2, u4, u5, u3} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24) (MultilinearMap.instSMulMultilinearMap.{u4, u5, u3, u1, u2} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_5 R' A _inst_20 _inst_22 (fun (i : ι) => _inst_23 i) _inst_25 _inst_24 _inst_27)) c (ContinuousMultilinearMap.toMultilinearMap.{u2, u3, u4, u5} A ι M₁ M₂ _inst_22 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_23 i) _inst_24 (fun (i : ι) => _inst_15 i) _inst_17 f))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.to_multilinear_map_smul ContinuousMultilinearMap.toMultilinearMap_smulₓ'. -/
@[simp]
theorem toMultilinearMap_smul (c : R') (f : ContinuousMultilinearMap A M₁ M₂) :
(c • f).toMultilinearMap = c • f.toMultilinearMap :=
@@ -196,26 +256,56 @@ variable [ContinuousAdd M₂]
instance : Add (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f f' => ⟨f.toMultilinearMap + f'.toMultilinearMap, f.cont.add f'.cont⟩⟩
+/- warning: continuous_multilinear_map.add_apply -> ContinuousMultilinearMap.add_apply is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (f' : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))] (m : forall (i : ι), M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (HAdd.hAdd.{max u2 u3 u4, max u2 u3 u4, max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (instHAdd.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.hasAdd.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20)) f f') m) (HAdd.hAdd.{u4, u4, u4} M₂ M₂ M₂ (instHAdd.{u4} M₂ (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f m) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f' m))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (f' : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))] (m : forall (i : ι), M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) (HAdd.hAdd.{max (max u2 u3) u4, max (max u2 u3) u4, max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (instHAdd.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.instAddContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20)) f f') m) (HAdd.hAdd.{u4, u4, u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (instHAdd.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddZeroClass.toAdd.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddMonoid.toAddZeroClass.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommMonoid.toAddMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_5)))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f' m))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.add_apply ContinuousMultilinearMap.add_applyₓ'. -/
@[simp]
theorem add_apply (m : ∀ i, M₁ i) : (f + f') m = f m + f' m :=
rfl
#align continuous_multilinear_map.add_apply ContinuousMultilinearMap.add_apply
+/- warning: continuous_multilinear_map.to_multilinear_map_add -> ContinuousMultilinearMap.toMultilinearMap_add is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (g : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (succ u2) (succ u3) (succ u4)} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 (HAdd.hAdd.{max u2 u3 u4, max u2 u3 u4, max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (instHAdd.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.hasAdd.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20)) f g)) (HAdd.hAdd.{max u2 u3 u4, max u2 u3 u4, max u2 u3 u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (instHAdd.{max u2 u3 u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.hasAdd.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11)) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 f) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 g))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (g : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (max (succ u2) (succ u3)) (succ u4)} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 (HAdd.hAdd.{max (max u2 u3) u4, max (max u2 u3) u4, max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (instHAdd.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.instAddContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20)) f g)) (HAdd.hAdd.{max (max u2 u3) u4, max (max u2 u3) u4, max (max u2 u3) u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (instHAdd.{max (max u2 u3) u4} (MultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11) (MultilinearMap.instAddMultilinearMap.{u1, u3, u4, u2} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11)) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 f) (ContinuousMultilinearMap.toMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 g))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.to_multilinear_map_add ContinuousMultilinearMap.toMultilinearMap_addₓ'. -/
@[simp]
theorem toMultilinearMap_add (f g : ContinuousMultilinearMap R M₁ M₂) :
(f + g).toMultilinearMap = f.toMultilinearMap + g.toMultilinearMap :=
rfl
#align continuous_multilinear_map.to_multilinear_map_add ContinuousMultilinearMap.toMultilinearMap_add
+/- warning: continuous_multilinear_map.add_comm_monoid -> ContinuousMultilinearMap.addCommMonoid is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))], AddCommMonoid.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17)
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))], AddCommMonoid.{max (max u4 u3) u2} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17)
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.add_comm_monoid ContinuousMultilinearMap.addCommMonoidₓ'. -/
instance addCommMonoid : AddCommMonoid (ContinuousMultilinearMap R M₁ M₂) :=
toMultilinearMap_injective.AddCommMonoid _ rfl (fun _ _ => rfl) fun _ _ => rfl
#align continuous_multilinear_map.add_comm_monoid ContinuousMultilinearMap.addCommMonoid
+/- warning: continuous_multilinear_map.apply_add_hom -> ContinuousMultilinearMap.applyAddHom is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))], (forall (i : ι), M₁ i) -> (AddMonoidHom.{max u2 u3 u4, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) M₂ (AddMonoid.toAddZeroClass.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (AddCommMonoid.toAddMonoid.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.addCommMonoid.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20))) (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))], (forall (i : ι), M₁ i) -> (AddMonoidHom.{max (max u4 u3) u2, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) M₂ (AddMonoid.toAddZeroClass.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (AddCommMonoid.toAddMonoid.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.addCommMonoid.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20))) (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.apply_add_hom ContinuousMultilinearMap.applyAddHomₓ'. -/
/-- Evaluation of a `continuous_multilinear_map` at a vector as an `add_monoid_hom`. -/
def applyAddHom (m : ∀ i, M₁ i) : ContinuousMultilinearMap R M₁ M₂ →+ M₂ :=
⟨fun f => f m, rfl, fun _ _ => rfl⟩
#align continuous_multilinear_map.apply_add_hom ContinuousMultilinearMap.applyAddHom
+/- warning: continuous_multilinear_map.sum_apply -> ContinuousMultilinearMap.sum_apply is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_20 : ContinuousAdd.{u4} M₂ _inst_17 (AddZeroClass.toHasAdd.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5)))] {α : Type.{u5}} (f : α -> (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17)) (m : forall (i : ι), M₁ i) {s : Finset.{u5} α}, Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (Finset.sum.{max u2 u3 u4, u5} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) α (ContinuousMultilinearMap.addCommMonoid.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20) s (fun (a : α) => f a)) m) (Finset.sum.{u4, u5} M₂ α _inst_5 s (fun (a : α) => coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (f a) m))
+but is expected to have type
+ forall {R : Type.{u2}} {ι : Type.{u3}} {M₁ : ι -> Type.{u4}} {M₂ : Type.{u5}} [_inst_1 : Semiring.{u2} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u4} (M₁ i)] [_inst_5 : AddCommMonoid.{u5} M₂] [_inst_9 : forall (i : ι), Module.{u2, u4} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u2, u5} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u4} (M₁ i)] [_inst_17 : TopologicalSpace.{u5} M₂] [_inst_20 : ContinuousAdd.{u5} M₂ _inst_17 (AddZeroClass.toAdd.{u5} M₂ (AddMonoid.toAddZeroClass.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)))] {α : Type.{u1}} (f : α -> (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17)) (m : forall (i : ι), M₁ i) {s : Finset.{u1} α}, Eq.{succ u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) (Finset.sum.{max (max u3 u4) u5, u1} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) α (ContinuousMultilinearMap.addCommMonoid.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 _inst_20) s (fun (a : α) => f a)) m) (Finset.sum.{u5, u1} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) α _inst_5 s (fun (a : α) => FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) (f a) m))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.sum_apply ContinuousMultilinearMap.sum_applyₓ'. -/
@[simp]
theorem sum_apply {α : Type _} (f : α → ContinuousMultilinearMap R M₁ M₂) (m : ∀ i, M₁ i)
{s : Finset α} : (∑ a in s, f a) m = ∑ a in s, f a m :=
@@ -224,6 +314,7 @@ theorem sum_apply {α : Type _} (f : α → ContinuousMultilinearMap R M₁ M₂
end ContinuousAdd
+#print ContinuousMultilinearMap.toContinuousLinearMap /-
/-- If `f` is a continuous multilinear map, then `f.to_continuous_linear_map m i` is the continuous
linear map obtained by fixing all coordinates but `i` equal to those of `m`, and varying the
`i`-th coordinate. -/
@@ -231,19 +322,29 @@ def toContinuousLinearMap [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) : M₁ i
{ f.toMultilinearMap.toLinearMap m i with
cont := f.cont.comp (continuous_const.update i continuous_id) }
#align continuous_multilinear_map.to_continuous_linear_map ContinuousMultilinearMap.toContinuousLinearMap
+-/
+/- warning: continuous_multilinear_map.prod -> ContinuousMultilinearMap.prod is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} {M₃ : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_6 : AddCommMonoid.{u5} M₃] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_12 : Module.{u1, u5} R M₃ _inst_1 _inst_6] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_18 : TopologicalSpace.{u5} M₃], (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) -> (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => _inst_3 i) _inst_6 (fun (i : ι) => _inst_9 i) _inst_12 (fun (i : ι) => _inst_15 i) _inst_18) -> (ContinuousMultilinearMap.{u1, u2, u3, max u4 u5} R ι M₁ (Prod.{u4, u5} M₂ M₃) _inst_1 (fun (i : ι) => _inst_3 i) (Prod.addCommMonoid.{u4, u5} M₂ M₃ _inst_5 _inst_6) (fun (i : ι) => _inst_9 i) (Prod.module.{u1, u4, u5} R M₂ M₃ _inst_1 _inst_5 _inst_6 _inst_11 _inst_12) (fun (i : ι) => _inst_15 i) (Prod.topologicalSpace.{u4, u5} M₂ M₃ _inst_17 _inst_18))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} {M₃ : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_6 : AddCommMonoid.{u5} M₃] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_12 : Module.{u1, u5} R M₃ _inst_1 _inst_6] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_18 : TopologicalSpace.{u5} M₃], (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) -> (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => _inst_3 i) _inst_6 (fun (i : ι) => _inst_9 i) _inst_12 (fun (i : ι) => _inst_15 i) _inst_18) -> (ContinuousMultilinearMap.{u1, u2, u3, max u5 u4} R ι M₁ (Prod.{u4, u5} M₂ M₃) _inst_1 (fun (i : ι) => _inst_3 i) (Prod.instAddCommMonoidSum.{u4, u5} M₂ M₃ _inst_5 _inst_6) (fun (i : ι) => _inst_9 i) (Prod.module.{u1, u4, u5} R M₂ M₃ _inst_1 _inst_5 _inst_6 _inst_11 _inst_12) (fun (i : ι) => _inst_15 i) (instTopologicalSpaceProd.{u4, u5} M₂ M₃ _inst_17 _inst_18))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.prod ContinuousMultilinearMap.prodₓ'. -/
/-- The cartesian product of two continuous multilinear maps, as a continuous multilinear map. -/
def prod (f : ContinuousMultilinearMap R M₁ M₂) (g : ContinuousMultilinearMap R M₁ M₃) :
ContinuousMultilinearMap R M₁ (M₂ × M₃) :=
{ f.toMultilinearMap.Prod g.toMultilinearMap with cont := f.cont.prod_mk g.cont }
#align continuous_multilinear_map.prod ContinuousMultilinearMap.prod
+#print ContinuousMultilinearMap.prod_apply /-
@[simp]
theorem prod_apply (f : ContinuousMultilinearMap R M₁ M₂) (g : ContinuousMultilinearMap R M₁ M₃)
(m : ∀ i, M₁ i) : (f.Prod g) m = (f m, g m) :=
rfl
#align continuous_multilinear_map.prod_apply ContinuousMultilinearMap.prod_apply
+-/
+#print ContinuousMultilinearMap.pi /-
/-- Combine a family of continuous multilinear maps with the same domain and codomains `M' i` into a
continuous multilinear map taking values in the space of functions `Π i, M' i`. -/
def pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)] [∀ i, TopologicalSpace (M' i)]
@@ -253,7 +354,14 @@ def pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)] [∀ i
cont := continuous_pi fun i => (f i).coe_continuous
toMultilinearMap := MultilinearMap.pi fun i => (f i).toMultilinearMap
#align continuous_multilinear_map.pi ContinuousMultilinearMap.pi
+-/
+/- warning: continuous_multilinear_map.coe_pi -> ContinuousMultilinearMap.coe_pi is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] {ι' : Type.{u4}} {M' : ι' -> Type.{u5}} [_inst_20 : forall (i : ι'), AddCommMonoid.{u5} (M' i)] [_inst_21 : forall (i : ι'), TopologicalSpace.{u5} (M' i)] [_inst_22 : forall (i : ι'), Module.{u1, u5} R (M' i) _inst_1 (_inst_20 i)] (f : forall (i : ι'), ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ (M' i) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 i) (fun (i : ι) => _inst_9 i) (_inst_22 i) (fun (i : ι) => _inst_15 i) (_inst_21 i)), Eq.{max (max (succ u2) (succ u3)) (succ (max u4 u5))} ((forall (i : ι), M₁ i) -> (forall (i : ι'), M' i)) (coeFn.{max (succ u2) (succ u3) (succ (max u4 u5)), max (max (succ u2) (succ u3)) (succ (max u4 u5))} (ContinuousMultilinearMap.{u1, u2, u3, max u4 u5} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u4, u5} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => _inst_9 i) (Pi.module.{u4, u5, u1} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => _inst_15 i) (Pi.topologicalSpace.{u4, u5} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, max u4 u5} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u4, u5} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => _inst_9 i) (Pi.module.{u4, u5, u1} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => _inst_15 i) (Pi.topologicalSpace.{u4, u5} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) => (forall (i : ι), M₁ i) -> (forall (i : ι'), M' i)) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, max u4 u5} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u4, u5} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => _inst_9 i) (Pi.module.{u4, u5, u1} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => _inst_15 i) (Pi.topologicalSpace.{u4, u5} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) (ContinuousMultilinearMap.pi.{u1, u2, u3, u4, u5} R ι M₁ _inst_1 (fun (i : ι) => _inst_3 i) (fun (i : ι) => _inst_9 i) (fun (i : ι) => _inst_15 i) ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_21 i) (fun (i : ι') => _inst_22 i) f)) (fun (m : forall (i : ι), M₁ i) (j : ι') => coeFn.{max (succ u2) (succ u3) (succ u5), max (max (succ u2) (succ u3)) (succ u5)} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ (M' j) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 j) (fun (i : ι) => _inst_9 i) (_inst_22 j) (fun (i : ι) => _inst_15 i) (_inst_21 j)) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ (M' j) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 j) (fun (i : ι) => _inst_9 i) (_inst_22 j) (fun (i : ι) => _inst_15 i) (_inst_21 j)) => (forall (i : ι), M₁ i) -> (M' j)) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u5} R ι M₁ (M' j) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 j) (fun (i : ι) => _inst_9 i) (_inst_22 j) (fun (i : ι) => _inst_15 i) (_inst_21 j)) (f j) m)
+but is expected to have type
+ forall {R : Type.{u3}} {ι : Type.{u4}} {M₁ : ι -> Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u5} (M₁ i)] [_inst_9 : forall (i : ι), Module.{u3, u5} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_15 : forall (i : ι), TopologicalSpace.{u5} (M₁ i)] {ι' : Type.{u2}} {M' : ι' -> Type.{u1}} [_inst_20 : forall (i : ι'), AddCommMonoid.{u1} (M' i)] [_inst_21 : forall (i : ι'), TopologicalSpace.{u1} (M' i)] [_inst_22 : forall (i : ι'), Module.{u3, u1} R (M' i) _inst_1 (_inst_20 i)] (f : forall (i : ι'), ContinuousMultilinearMap.{u3, u4, u5, u1} R ι M₁ (M' i) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 i) (fun (i : ι) => _inst_9 i) (_inst_22 i) (fun (i : ι) => _inst_15 i) (_inst_21 i)), Eq.{max (max (max (succ u4) (succ u5)) (succ u2)) (succ u1)} (forall (ᾰ : forall (i : ι), M₁ i), (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => forall (i : ι'), M' i) ᾰ) (FunLike.coe.{max (max (succ u4) (succ u5)) (succ (max u2 u1)), max (succ u4) (succ u5), succ (max u2 u1)} (ContinuousMultilinearMap.{u3, u4, u5, max u2 u1} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u2, u1} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u2, u1, u3} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => forall (i : ι'), M' i) _x) (ContinuousMapClass.toFunLike.{max (max u4 u5) u2 u1, max u4 u5, max u2 u1} (ContinuousMultilinearMap.{u3, u4, u5, max u2 u1} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u2, u1} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u2, u1, u3} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) (forall (i : ι), M₁ i) (forall (i : ι'), M' i) (Pi.topologicalSpace.{u4, u5} ι (fun (i : ι) => M₁ i) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i)) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a)) (ContinuousMultilinearMap.continuousMapClass.{u3, u4, u5, max u2 u1} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u2, u1} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u2, u1, u3} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a)))) (ContinuousMultilinearMap.pi.{u3, u4, u5, u2, u1} R ι M₁ _inst_1 (fun (i : ι) => _inst_3 i) (fun (i : ι) => _inst_9 i) (fun (i : ι) => _inst_15 i) ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_21 i) (fun (i : ι') => _inst_22 i) f)) (fun (m : forall (i : ι), M₁ i) (j : ι') => FunLike.coe.{max (max (succ u4) (succ u5)) (succ u1), max (succ u4) (succ u5), succ u1} (ContinuousMultilinearMap.{u3, u4, u5, u1} R ι M₁ (M' j) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (_inst_20 j) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (_inst_22 j) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (_inst_21 j)) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M' j) _x) (ContinuousMapClass.toFunLike.{max (max u4 u5) u1, max u4 u5, u1} (ContinuousMultilinearMap.{u3, u4, u5, u1} R ι M₁ (M' j) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (_inst_20 j) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (_inst_22 j) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (_inst_21 j)) (forall (i : ι), M₁ i) (M' j) (Pi.topologicalSpace.{u4, u5} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) (_inst_21 j) (ContinuousMultilinearMap.continuousMapClass.{u3, u4, u5, u1} R ι M₁ (M' j) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (_inst_20 j) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (_inst_22 j) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (_inst_21 j))) (f j) m)
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.coe_pi ContinuousMultilinearMap.coe_piₓ'. -/
@[simp]
theorem coe_pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
[∀ i, TopologicalSpace (M' i)] [∀ i, Module R (M' i)]
@@ -261,6 +369,12 @@ theorem coe_pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)
rfl
#align continuous_multilinear_map.coe_pi ContinuousMultilinearMap.coe_pi
+/- warning: continuous_multilinear_map.pi_apply -> ContinuousMultilinearMap.pi_apply is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] {ι' : Type.{u4}} {M' : ι' -> Type.{u5}} [_inst_20 : forall (i : ι'), AddCommMonoid.{u5} (M' i)] [_inst_21 : forall (i : ι'), TopologicalSpace.{u5} (M' i)] [_inst_22 : forall (i : ι'), Module.{u1, u5} R (M' i) _inst_1 (_inst_20 i)] (f : forall (i : ι'), ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ (M' i) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 i) (fun (i : ι) => _inst_9 i) (_inst_22 i) (fun (i : ι) => _inst_15 i) (_inst_21 i)) (m : forall (i : ι), M₁ i) (j : ι'), Eq.{succ u5} ((fun (i : ι') => M' i) j) (coeFn.{max (succ u2) (succ u3) (succ (max u4 u5)), max (max (succ u2) (succ u3)) (succ (max u4 u5))} (ContinuousMultilinearMap.{u1, u2, u3, max u4 u5} R ι M₁ (forall (i : ι'), (fun (i : ι') => M' i) i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u4, u5} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) (fun (i : ι') => (fun (i : ι') => _inst_20 i) i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u4, u5, u1} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) R _inst_1 (fun (i : ι') => (fun (i : ι') => _inst_20 i) i) (fun (i : ι') => (fun (i : ι') => _inst_22 i) i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u4, u5} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) (fun (a : ι') => (fun (i : ι') => _inst_21 i) a))) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, max u4 u5} R ι M₁ (forall (i : ι'), (fun (i : ι') => M' i) i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u4, u5} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) (fun (i : ι') => (fun (i : ι') => _inst_20 i) i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u4, u5, u1} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) R _inst_1 (fun (i : ι') => (fun (i : ι') => _inst_20 i) i) (fun (i : ι') => (fun (i : ι') => _inst_22 i) i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u4, u5} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) (fun (a : ι') => (fun (i : ι') => _inst_21 i) a))) => (forall (i : ι), M₁ i) -> (forall (i : ι'), (fun (i : ι') => M' i) i)) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, max u4 u5} R ι M₁ (forall (i : ι'), (fun (i : ι') => M' i) i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u4, u5} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) (fun (i : ι') => (fun (i : ι') => _inst_20 i) i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u4, u5, u1} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) R _inst_1 (fun (i : ι') => (fun (i : ι') => _inst_20 i) i) (fun (i : ι') => (fun (i : ι') => _inst_22 i) i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u4, u5} ι' (fun (i : ι') => (fun (i : ι') => M' i) i) (fun (a : ι') => (fun (i : ι') => _inst_21 i) a))) (ContinuousMultilinearMap.pi.{u1, u2, u3, u4, u5} R ι M₁ _inst_1 (fun (i : ι) => _inst_3 i) (fun (i : ι) => _inst_9 i) (fun (i : ι) => _inst_15 i) ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_21 i) (fun (i : ι') => _inst_22 i) f) m j) (coeFn.{max (succ u2) (succ u3) (succ u5), max (max (succ u2) (succ u3)) (succ u5)} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ (M' j) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 j) (fun (i : ι) => _inst_9 i) (_inst_22 j) (fun (i : ι) => _inst_15 i) (_inst_21 j)) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ (M' j) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 j) (fun (i : ι) => _inst_9 i) (_inst_22 j) (fun (i : ι) => _inst_15 i) (_inst_21 j)) => (forall (i : ι), M₁ i) -> (M' j)) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u5} R ι M₁ (M' j) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 j) (fun (i : ι) => _inst_9 i) (_inst_22 j) (fun (i : ι) => _inst_15 i) (_inst_21 j)) (f j) m)
+but is expected to have type
+ forall {R : Type.{u3}} {ι : Type.{u4}} {M₁ : ι -> Type.{u5}} [_inst_1 : Semiring.{u3} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u5} (M₁ i)] [_inst_9 : forall (i : ι), Module.{u3, u5} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_15 : forall (i : ι), TopologicalSpace.{u5} (M₁ i)] {ι' : Type.{u2}} {M' : ι' -> Type.{u1}} [_inst_20 : forall (i : ι'), AddCommMonoid.{u1} (M' i)] [_inst_21 : forall (i : ι'), TopologicalSpace.{u1} (M' i)] [_inst_22 : forall (i : ι'), Module.{u3, u1} R (M' i) _inst_1 (_inst_20 i)] (f : forall (i : ι'), ContinuousMultilinearMap.{u3, u4, u5, u1} R ι M₁ (M' i) _inst_1 (fun (i : ι) => _inst_3 i) (_inst_20 i) (fun (i : ι) => _inst_9 i) (_inst_22 i) (fun (i : ι) => _inst_15 i) (_inst_21 i)) (m : forall (i : ι), M₁ i) (j : ι'), Eq.{succ u1} (M' j) (FunLike.coe.{max (max (succ u4) (succ u5)) (succ (max u2 u1)), max (succ u4) (succ u5), succ (max u2 u1)} (ContinuousMultilinearMap.{u3, u4, u5, max u2 u1} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u2, u1} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u2, u1, u3} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => forall (i : ι'), M' i) _x) (ContinuousMapClass.toFunLike.{max (max u4 u5) u2 u1, max u4 u5, max u2 u1} (ContinuousMultilinearMap.{u3, u4, u5, max u2 u1} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u2, u1} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u2, u1, u3} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a))) (forall (i : ι), M₁ i) (forall (i : ι'), M' i) (Pi.topologicalSpace.{u4, u5} ι (fun (i : ι) => M₁ i) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i)) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a)) (ContinuousMultilinearMap.continuousMapClass.{u3, u4, u5, max u2 u1} R ι M₁ (forall (i : ι'), M' i) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (Pi.addCommMonoid.{u2, u1} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i)) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (Pi.module.{u2, u1, u3} ι' (fun (i : ι') => M' i) R _inst_1 (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_22 i)) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (Pi.topologicalSpace.{u2, u1} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_21 a)))) (ContinuousMultilinearMap.pi.{u3, u4, u5, u2, u1} R ι M₁ _inst_1 (fun (i : ι) => _inst_3 i) (fun (i : ι) => _inst_9 i) (fun (i : ι) => _inst_15 i) ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_20 i) (fun (i : ι') => _inst_21 i) (fun (i : ι') => _inst_22 i) f) m j) (FunLike.coe.{max (max (succ u4) (succ u5)) (succ u1), max (succ u4) (succ u5), succ u1} (ContinuousMultilinearMap.{u3, u4, u5, u1} R ι M₁ (M' j) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (_inst_20 j) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (_inst_22 j) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (_inst_21 j)) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M' j) _x) (ContinuousMapClass.toFunLike.{max (max u4 u5) u1, max u4 u5, u1} (ContinuousMultilinearMap.{u3, u4, u5, u1} R ι M₁ (M' j) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (_inst_20 j) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (_inst_22 j) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (_inst_21 j)) (forall (i : ι), M₁ i) (M' j) (Pi.topologicalSpace.{u4, u5} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) (_inst_21 j) (ContinuousMultilinearMap.continuousMapClass.{u3, u4, u5, u1} R ι M₁ (M' j) _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) (_inst_20 j) (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) (_inst_22 j) (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) (_inst_21 j))) (f j) m)
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.pi_apply ContinuousMultilinearMap.pi_applyₓ'. -/
theorem pi_apply {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
[∀ i, TopologicalSpace (M' i)] [∀ i, Module R (M' i)]
(f : ∀ i, ContinuousMultilinearMap R M₁ (M' i)) (m : ∀ i, M₁ i) (j : ι') : pi f m j = f j m :=
@@ -271,6 +385,7 @@ section
variable (R M₂)
+#print ContinuousMultilinearMap.ofSubsingleton /-
/-- The evaluation map from `ι → M₂` to `M₂` is multilinear at a given `i` when `ι` is subsingleton.
-/
@[simps toMultilinearMap apply]
@@ -279,9 +394,11 @@ def ofSubsingleton [Subsingleton ι] (i' : ι) : ContinuousMultilinearMap R (fun
toMultilinearMap := MultilinearMap.ofSubsingleton R _ i'
cont := continuous_apply _
#align continuous_multilinear_map.of_subsingleton ContinuousMultilinearMap.ofSubsingleton
+-/
variable (M₁) {M₂}
+#print ContinuousMultilinearMap.constOfIsEmpty /-
/-- The constant map is multilinear when `ι` is empty. -/
@[simps toMultilinearMap apply]
def constOfIsEmpty [IsEmpty ι] (m : M₂) : ContinuousMultilinearMap R M₁ M₂
@@ -289,9 +406,11 @@ def constOfIsEmpty [IsEmpty ι] (m : M₂) : ContinuousMultilinearMap R M₁ M
toMultilinearMap := MultilinearMap.constOfIsEmpty R _ m
cont := continuous_const
#align continuous_multilinear_map.const_of_is_empty ContinuousMultilinearMap.constOfIsEmpty
+-/
end
+#print ContinuousMultilinearMap.compContinuousLinearMap /-
/-- If `g` is continuous multilinear and `f` is a collection of continuous linear maps,
then `g (f₁ m₁, ..., fₙ mₙ)` is again a continuous multilinear map, that we call
`g.comp_continuous_linear_map f`. -/
@@ -300,7 +419,14 @@ def compContinuousLinearMap (g : ContinuousMultilinearMap R M₁' M₄)
{ g.toMultilinearMap.compLinearMap fun i => (f i).toLinearMap with
cont := g.cont.comp <| continuous_pi fun j => (f j).cont.comp <| continuous_apply _ }
#align continuous_multilinear_map.comp_continuous_linear_map ContinuousMultilinearMap.compContinuousLinearMap
+-/
+/- warning: continuous_multilinear_map.comp_continuous_linear_map_apply -> ContinuousMultilinearMap.compContinuousLinearMap_apply is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₁' : ι -> Type.{u4}} {M₄ : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_4 : forall (i : ι), AddCommMonoid.{u4} (M₁' i)] [_inst_7 : AddCommMonoid.{u5} M₄] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_10 : forall (i : ι), Module.{u1, u4} R (M₁' i) _inst_1 (_inst_4 i)] [_inst_13 : Module.{u1, u5} R M₄ _inst_1 _inst_7] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_16 : forall (i : ι), TopologicalSpace.{u4} (M₁' i)] [_inst_19 : TopologicalSpace.{u5} M₄] (g : ContinuousMultilinearMap.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_16 i) _inst_19) (f : forall (i : ι), ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) (m : forall (i : ι), M₁ i), Eq.{succ u5} M₄ (coeFn.{max (succ u2) (succ u3) (succ u5), max (max (succ u2) (succ u3)) (succ u5)} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι (fun (i : ι) => M₁ i) M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_19) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u5} R ι (fun (i : ι) => M₁ i) M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_19) => (forall (i : ι), M₁ i) -> M₄) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u5} R ι (fun (i : ι) => M₁ i) M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_19) (ContinuousMultilinearMap.compContinuousLinearMap.{u1, u2, u3, u4, u5} R ι (fun (i : ι) => M₁ i) M₁' M₄ _inst_1 (fun (i : ι) => _inst_3 i) (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_9 i) (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_15 i) (fun (i : ι) => _inst_16 i) _inst_19 g f) m) (coeFn.{max (succ u2) (succ u4) (succ u5), max (max (succ u2) (succ u4)) (succ u5)} (ContinuousMultilinearMap.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_16 i) _inst_19) (fun (_x : ContinuousMultilinearMap.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_16 i) _inst_19) => (forall (i : ι), M₁' i) -> M₄) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_16 i) _inst_19) g (fun (i : ι) => coeFn.{max (succ u3) (succ u4), max (succ u3) (succ u4)} (ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) (fun (_x : ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) => (M₁ i) -> (M₁' i)) (ContinuousLinearMap.toFun.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) (f i) (m i)))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₁' : ι -> Type.{u4}} {M₄ : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_4 : forall (i : ι), AddCommMonoid.{u4} (M₁' i)] [_inst_7 : AddCommMonoid.{u5} M₄] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_10 : forall (i : ι), Module.{u1, u4} R (M₁' i) _inst_1 (_inst_4 i)] [_inst_13 : Module.{u1, u5} R M₄ _inst_1 _inst_7] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_16 : forall (i : ι), TopologicalSpace.{u4} (M₁' i)] [_inst_19 : TopologicalSpace.{u5} M₄] (g : ContinuousMultilinearMap.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_16 i) _inst_19) (f : forall (i : ι), ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) (m : forall (i : ι), M₁ i), Eq.{succ u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), (fun (i : ι) => M₁ i) i) => M₄) m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u5), max (succ u2) (succ u3), succ u5} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι (fun (i : ι) => M₁ i) M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_19) (forall (i : ι), (fun (i : ι) => M₁ i) i) (fun (_x : forall (i : ι), (fun (i : ι) => M₁ i) i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), (fun (i : ι) => M₁ i) i) => M₄) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u5, max u2 u3, u5} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι (fun (i : ι) => M₁ i) M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_19) (forall (i : ι), (fun (i : ι) => M₁ i) i) M₄ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => (fun (i : ι) => M₁ i) i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_19 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u5} R ι (fun (i : ι) => M₁ i) M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_19)) (ContinuousMultilinearMap.compContinuousLinearMap.{u1, u2, u3, u4, u5} R ι (fun (i : ι) => M₁ i) M₁' M₄ _inst_1 (fun (i : ι) => _inst_3 i) (fun (i : ι) => _inst_4 i) _inst_7 (fun (i : ι) => _inst_9 i) (fun (i : ι) => _inst_10 i) _inst_13 (fun (i : ι) => _inst_15 i) (fun (i : ι) => _inst_16 i) _inst_19 g f) m) (FunLike.coe.{max (max (succ u2) (succ u4)) (succ u5), max (succ u2) (succ u4), succ u5} (ContinuousMultilinearMap.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_10 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_16 i) i) _inst_19) (forall (i : ι), M₁' i) (fun (_x : forall (i : ι), M₁' i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁' i) => M₄) _x) (ContinuousMapClass.toFunLike.{max (max u2 u4) u5, max u2 u4, u5} (ContinuousMultilinearMap.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_10 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_16 i) i) _inst_19) (forall (i : ι), M₁' i) M₄ (Pi.topologicalSpace.{u2, u4} ι (fun (i : ι) => M₁' i) (fun (a : ι) => (fun (i : ι) => _inst_16 i) a)) _inst_19 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u4, u5} R ι M₁' M₄ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_7 (fun (i : ι) => (fun (i : ι) => _inst_10 i) i) _inst_13 (fun (i : ι) => (fun (i : ι) => _inst_16 i) i) _inst_19)) g (fun (i : ι) => FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) (M₁ i) (fun (_x : M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : M₁ i) => M₁' i) _x) (ContinuousMapClass.toFunLike.{max u3 u4, u3, u4} (ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) (M₁ i) (M₁' i) (_inst_15 i) (_inst_16 i) (ContinuousSemilinearMapClass.toContinuousMapClass.{max u3 u4, u1, u1, u3, u4} (ContinuousLinearMap.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)) R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i) (ContinuousLinearMap.continuousSemilinearMapClass.{u1, u1, u3, u4} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) (M₁ i) (_inst_15 i) (_inst_3 i) (M₁' i) (_inst_16 i) (_inst_4 i) (_inst_9 i) (_inst_10 i)))) (f i) (m i)))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.comp_continuous_linear_map_apply ContinuousMultilinearMap.compContinuousLinearMap_applyₓ'. -/
@[simp]
theorem compContinuousLinearMap_apply (g : ContinuousMultilinearMap R M₁' M₄)
(f : ∀ i : ι, M₁ i →L[R] M₁' i) (m : ∀ i, M₁ i) :
@@ -308,13 +434,21 @@ theorem compContinuousLinearMap_apply (g : ContinuousMultilinearMap R M₁' M₄
rfl
#align continuous_multilinear_map.comp_continuous_linear_map_apply ContinuousMultilinearMap.compContinuousLinearMap_apply
+#print ContinuousLinearMap.compContinuousMultilinearMap /-
/-- Composing a continuous multilinear map with a continuous linear map gives again a
continuous multilinear map. -/
def ContinuousLinearMap.compContinuousMultilinearMap (g : M₂ →L[R] M₃)
(f : ContinuousMultilinearMap R M₁ M₂) : ContinuousMultilinearMap R M₁ M₃ :=
{ g.toLinearMap.compMultilinearMap f.toMultilinearMap with cont := g.cont.comp f.cont }
#align continuous_linear_map.comp_continuous_multilinear_map ContinuousLinearMap.compContinuousMultilinearMap
+-/
+/- warning: continuous_linear_map.comp_continuous_multilinear_map_coe -> ContinuousLinearMap.compContinuousMultilinearMap_coe is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} {M₃ : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_6 : AddCommMonoid.{u5} M₃] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_12 : Module.{u1, u5} R M₃ _inst_1 _inst_6] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_18 : TopologicalSpace.{u5} M₃] (g : ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (max (succ u2) (succ u3)) (succ u5)} ((fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18) => (forall (i : ι), M₁ i) -> M₃) (ContinuousLinearMap.compContinuousMultilinearMap.{u1, u2, u3, u4, u5} R ι M₁ M₂ M₃ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 _inst_6 (fun (i : ι) => _inst_9 i) _inst_11 _inst_12 (fun (i : ι) => _inst_15 i) _inst_17 _inst_18 g f)) (coeFn.{max (succ u2) (succ u3) (succ u5), max (max (succ u2) (succ u3)) (succ u5)} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18) => (forall (i : ι), M₁ i) -> M₃) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18) (ContinuousLinearMap.compContinuousMultilinearMap.{u1, u2, u3, u4, u5} R ι M₁ M₂ M₃ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 _inst_6 (fun (i : ι) => _inst_9 i) _inst_11 _inst_12 (fun (i : ι) => _inst_15 i) _inst_17 _inst_18 g f)) (Function.comp.{max (succ u2) (succ u3), succ u4, succ u5} (forall (i : ι), M₁ i) M₂ M₃ (coeFn.{max (succ u4) (succ u5), max (succ u4) (succ u5)} (ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) (fun (_x : ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) => M₂ -> M₃) (ContinuousLinearMap.toFun.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) g) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} {M₃ : Type.{u5}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_6 : AddCommMonoid.{u5} M₃] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_12 : Module.{u1, u5} R M₃ _inst_1 _inst_6] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] [_inst_18 : TopologicalSpace.{u5} M₃] (g : ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (max (succ u2) (succ u3)) (succ u5)} (forall (a : forall (i : ι), M₁ i), (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₃) a) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u5), max (succ u2) (succ u3), succ u5} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₃) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u5, max u2 u3, u5} (ContinuousMultilinearMap.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18) (forall (i : ι), M₁ i) M₃ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_18 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u5} R ι M₁ M₃ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_6 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_12 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_18)) (ContinuousLinearMap.compContinuousMultilinearMap.{u1, u2, u3, u4, u5} R ι M₁ M₂ M₃ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 _inst_6 (fun (i : ι) => _inst_9 i) _inst_11 _inst_12 (fun (i : ι) => _inst_15 i) _inst_17 _inst_18 g f)) (Function.comp.{max (succ u2) (succ u3), succ u4, succ u5} (forall (i : ι), M₁ i) M₂ M₃ (FunLike.coe.{max (succ u4) (succ u5), succ u4, succ u5} (ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) M₂ (fun (_x : M₂) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : M₂) => M₃) _x) (ContinuousMapClass.toFunLike.{max u4 u5, u4, u5} (ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) M₂ M₃ _inst_17 _inst_18 (ContinuousSemilinearMapClass.toContinuousMapClass.{max u4 u5, u1, u1, u4, u5} (ContinuousLinearMap.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12) R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12 (ContinuousLinearMap.continuousSemilinearMapClass.{u1, u1, u4, u5} R R _inst_1 _inst_1 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)) M₂ _inst_17 _inst_5 M₃ _inst_18 _inst_6 _inst_11 _inst_12))) g) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f))
+Case conversion may be inaccurate. Consider using '#align continuous_linear_map.comp_continuous_multilinear_map_coe ContinuousLinearMap.compContinuousMultilinearMap_coeₓ'. -/
@[simp]
theorem ContinuousLinearMap.compContinuousMultilinearMap_coe (g : M₂ →L[R] M₃)
(f : ContinuousMultilinearMap R M₁ M₂) :
@@ -325,6 +459,7 @@ theorem ContinuousLinearMap.compContinuousMultilinearMap_coe (g : M₂ →L[R] M
rfl
#align continuous_linear_map.comp_continuous_multilinear_map_coe ContinuousLinearMap.compContinuousMultilinearMap_coe
+#print ContinuousMultilinearMap.piEquiv /-
/-- `continuous_multilinear_map.pi` as an `equiv`. -/
@[simps]
def piEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
@@ -340,7 +475,14 @@ def piEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
ext
rfl
#align continuous_multilinear_map.pi_equiv ContinuousMultilinearMap.piEquiv
+-/
+/- warning: continuous_multilinear_map.cons_add -> ContinuousMultilinearMap.cons_add is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {n : Nat} {M : (Fin (Nat.succ n)) -> Type.{u2}} {M₂ : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : forall (i : Fin (Nat.succ n)), AddCommMonoid.{u2} (M i)] [_inst_5 : AddCommMonoid.{u3} M₂] [_inst_8 : forall (i : Fin (Nat.succ n)), Module.{u1, u2} R (M i) _inst_1 (_inst_2 i)] [_inst_11 : Module.{u1, u3} R M₂ _inst_1 _inst_5] [_inst_14 : forall (i : Fin (Nat.succ n)), TopologicalSpace.{u2} (M i)] [_inst_17 : TopologicalSpace.{u3} M₂] (f : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (m : forall (i : Fin n), M (Fin.succ n i)) (x : M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (OfNat.mk.{0} (Fin (Nat.succ n)) 0 (Zero.zero.{0} (Fin (Nat.succ n)) (Fin.hasZeroOfNeZero (Nat.succ n) (NeZero.succ n)))))) (y : M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (OfNat.mk.{0} (Fin (Nat.succ n)) 0 (Zero.zero.{0} (Fin (Nat.succ n)) (Fin.hasZeroOfNeZero (Nat.succ n) (NeZero.succ n)))))), Eq.{succ u3} M₂ (coeFn.{max 1 (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) => (forall (i : Fin (Nat.succ n)), M i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) (HAdd.hAdd.{u2, u2, u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (instHAdd.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddZeroClass.toHasAdd.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddMonoid.toAddZeroClass.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (_inst_2 (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))))))) x y) m)) (HAdd.hAdd.{u3, u3, u3} M₂ M₂ M₂ (instHAdd.{u3} M₂ (AddZeroClass.toHasAdd.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5)))) (coeFn.{max 1 (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) => (forall (i : Fin (Nat.succ n)), M i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (coeFn.{max 1 (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) => (forall (i : Fin (Nat.succ n)), M i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) y m)))
+but is expected to have type
+ forall {R : Type.{u1}} {n : Nat} {M : (Fin (Nat.succ n)) -> Type.{u2}} {M₂ : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : forall (i : Fin (Nat.succ n)), AddCommMonoid.{u2} (M i)] [_inst_5 : AddCommMonoid.{u3} M₂] [_inst_8 : forall (i : Fin (Nat.succ n)), Module.{u1, u2} R (M i) _inst_1 (_inst_2 i)] [_inst_11 : Module.{u1, u3} R M₂ _inst_1 _inst_5] [_inst_14 : forall (i : Fin (Nat.succ n)), TopologicalSpace.{u2} (M i)] [_inst_17 : TopologicalSpace.{u3} M₂] (f : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (m : forall (i : Fin n), M (Fin.succ n i)) (x : M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (y : M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))), Eq.{succ u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) (HAdd.hAdd.{u2, u2, u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (instHAdd.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddZeroClass.toAdd.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddMonoid.toAddZeroClass.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))))) x y) m)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) (fun (_x : forall (i : Fin (Nat.succ n)), M i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) _x) (ContinuousMapClass.toFunLike.{max u2 u3, u2, u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) M₂ (Pi.topologicalSpace.{0, u2} (Fin (Nat.succ n)) (fun (i : Fin (Nat.succ n)) => M i) (fun (a : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17)) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) (HAdd.hAdd.{u2, u2, u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (instHAdd.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddZeroClass.toAdd.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddMonoid.toAddZeroClass.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))))) x y) m)) (HAdd.hAdd.{u3, u3, u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) y m)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (instHAdd.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddZeroClass.toAdd.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddMonoid.toAddZeroClass.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) _inst_5)))) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) (fun (_x : forall (i : Fin (Nat.succ n)), M i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) _x) (ContinuousMapClass.toFunLike.{max u2 u3, u2, u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) M₂ (Pi.topologicalSpace.{0, u2} (Fin (Nat.succ n)) (fun (i : Fin (Nat.succ n)) => M i) (fun (a : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17)) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) (fun (_x : forall (i : Fin (Nat.succ n)), M i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) _x) (ContinuousMapClass.toFunLike.{max u2 u3, u2, u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) M₂ (Pi.topologicalSpace.{0, u2} (Fin (Nat.succ n)) (fun (i : Fin (Nat.succ n)) => M i) (fun (a : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17)) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) y m)))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.cons_add ContinuousMultilinearMap.cons_addₓ'. -/
/-- In the specific case of continuous multilinear maps on spaces indexed by `fin (n+1)`, where one
can build an element of `Π(i : fin (n+1)), M i` using `cons`, one can express directly the
additivity of a multilinear map along the first variable. -/
@@ -349,6 +491,12 @@ theorem cons_add (f : ContinuousMultilinearMap R M M₂) (m : ∀ i : Fin n, M i
f.toMultilinearMap.cons_add m x y
#align continuous_multilinear_map.cons_add ContinuousMultilinearMap.cons_add
+/- warning: continuous_multilinear_map.cons_smul -> ContinuousMultilinearMap.cons_smul is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {n : Nat} {M : (Fin (Nat.succ n)) -> Type.{u2}} {M₂ : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : forall (i : Fin (Nat.succ n)), AddCommMonoid.{u2} (M i)] [_inst_5 : AddCommMonoid.{u3} M₂] [_inst_8 : forall (i : Fin (Nat.succ n)), Module.{u1, u2} R (M i) _inst_1 (_inst_2 i)] [_inst_11 : Module.{u1, u3} R M₂ _inst_1 _inst_5] [_inst_14 : forall (i : Fin (Nat.succ n)), TopologicalSpace.{u2} (M i)] [_inst_17 : TopologicalSpace.{u3} M₂] (f : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (m : forall (i : Fin n), M (Fin.succ n i)) (c : R) (x : M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (OfNat.mk.{0} (Fin (Nat.succ n)) 0 (Zero.zero.{0} (Fin (Nat.succ n)) (Fin.hasZeroOfNeZero (Nat.succ n) (NeZero.succ n)))))), Eq.{succ u3} M₂ (coeFn.{max 1 (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) => (forall (i : Fin (Nat.succ n)), M i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) (SMul.smul.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (SMulZeroClass.toHasSmul.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddZeroClass.toHasZero.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddMonoid.toAddZeroClass.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (_inst_2 (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddMonoid.toAddZeroClass.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (_inst_2 (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddMonoid.toAddZeroClass.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (_inst_2 (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n))))))))) (Module.toMulActionWithZero.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) _inst_1 (_inst_2 (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))) (_inst_8 (OfNat.ofNat.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (OfNat.mk.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) 0 (Zero.zero.{0} (Fin (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne))) (Fin.hasZeroOfNeZero (HAdd.hAdd.{0, 0, 0} Nat Nat Nat (instHAdd.{0} Nat Nat.hasAdd) n (One.one.{0} Nat Nat.hasOne)) (NeZero.succ n)))))))))) c x) m)) (SMul.smul.{u1, u3} R M₂ (SMulZeroClass.toHasSmul.{u1, u3} R M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (SMulWithZero.toSmulZeroClass.{u1, u3} R M₂ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (MulActionWithZero.toSMulWithZero.{u1, u3} R M₂ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_5))) (Module.toMulActionWithZero.{u1, u3} R M₂ _inst_1 _inst_5 _inst_11)))) c (coeFn.{max 1 (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) => (forall (i : Fin (Nat.succ n)), M i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)))
+but is expected to have type
+ forall {R : Type.{u1}} {n : Nat} {M : (Fin (Nat.succ n)) -> Type.{u2}} {M₂ : Type.{u3}} [_inst_1 : Semiring.{u1} R] [_inst_2 : forall (i : Fin (Nat.succ n)), AddCommMonoid.{u2} (M i)] [_inst_5 : AddCommMonoid.{u3} M₂] [_inst_8 : forall (i : Fin (Nat.succ n)), Module.{u1, u2} R (M i) _inst_1 (_inst_2 i)] [_inst_11 : Module.{u1, u3} R M₂ _inst_1 _inst_5] [_inst_14 : forall (i : Fin (Nat.succ n)), TopologicalSpace.{u2} (M i)] [_inst_17 : TopologicalSpace.{u3} M₂] (f : ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => _inst_2 i) _inst_5 (fun (i : Fin (Nat.succ n)) => _inst_8 i) _inst_11 (fun (i : Fin (Nat.succ n)) => _inst_14 i) _inst_17) (m : forall (i : Fin n), M (Fin.succ n i)) (c : R) (x : M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))), Eq.{succ u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) (HSMul.hSMul.{u1, u2, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (instHSMul.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (SMulZeroClass.toSMul.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddMonoid.toZero.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))) (Module.toMulActionWithZero.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) _inst_1 (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_8 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n))))))))) c x) m)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) (fun (_x : forall (i : Fin (Nat.succ n)), M i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) _x) (ContinuousMapClass.toFunLike.{max u2 u3, u2, u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) M₂ (Pi.topologicalSpace.{0, u2} (Fin (Nat.succ n)) (fun (i : Fin (Nat.succ n)) => M i) (fun (a : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17)) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) (HSMul.hSMul.{u1, u2, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (instHSMul.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (SMulZeroClass.toSMul.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddMonoid.toZero.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))) (SMulWithZero.toSMulZeroClass.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (AddCommMonoid.toAddMonoid.{u2} (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))))) (Module.toMulActionWithZero.{u1, u2} R (M (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) _inst_1 (_inst_2 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n)))) (_inst_8 (OfNat.ofNat.{0} (Fin (Nat.succ n)) 0 (Fin.instOfNatFin (Nat.succ n) 0 (NeZero.succ n))))))))) c x) m)) (HSMul.hSMul.{u1, u3, u3} R ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (instHSMul.{u1, u3} R ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (SMulZeroClass.toSMul.{u1, u3} R ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) _inst_5)) (SMulWithZero.toSMulZeroClass.{u1, u3} R ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (MonoidWithZero.toZero.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) _inst_5)) (MulActionWithZero.toSMulWithZero.{u1, u3} R ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddMonoid.toZero.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) (AddCommMonoid.toAddMonoid.{u3} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) _inst_5)) (Module.toMulActionWithZero.{u1, u3} R ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)) _inst_1 _inst_5 _inst_11))))) c (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) (fun (_x : forall (i : Fin (Nat.succ n)), M i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin (Nat.succ n)), M i) => M₂) _x) (ContinuousMapClass.toFunLike.{max u2 u3, u2, u3} (ContinuousMultilinearMap.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17) (forall (i : Fin (Nat.succ n)), M i) M₂ (Pi.topologicalSpace.{0, u2} (Fin (Nat.succ n)) (fun (i : Fin (Nat.succ n)) => M i) (fun (a : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, 0, u2, u3} R (Fin (Nat.succ n)) M M₂ _inst_1 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_2 i) i) _inst_5 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_8 i) i) _inst_11 (fun (i : Fin (Nat.succ n)) => (fun (i : Fin (Nat.succ n)) => _inst_14 i) i) _inst_17)) f (Fin.cons.{u2} n (fun (i : Fin (Nat.succ n)) => M i) x m)))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.cons_smul ContinuousMultilinearMap.cons_smulₓ'. -/
/-- In the specific case of continuous multilinear maps on spaces indexed by `fin (n+1)`, where one
can build an element of `Π(i : fin (n+1)), M i` using `cons`, one can express directly the
multiplicativity of a multilinear map along the first variable. -/
@@ -357,11 +505,23 @@ theorem cons_smul (f : ContinuousMultilinearMap R M M₂) (m : ∀ i : Fin n, M
f.toMultilinearMap.cons_smul m c x
#align continuous_multilinear_map.cons_smul ContinuousMultilinearMap.cons_smul
+/- warning: continuous_multilinear_map.map_piecewise_add -> ContinuousMultilinearMap.map_piecewise_add is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : DecidableEq.{succ u2} ι] (m : forall (i : ι), M₁ i) (m' : forall (i : ι), M₁ i) (t : Finset.{u2} ι), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) t (HAdd.hAdd.{max u2 u3, max u2 u3, max u2 u3} (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (instHAdd.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instAdd.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toHasAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) m m') m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j t))) (Finset.sum.{u4, u2} M₂ (Finset.{u2} ι) _inst_5 (Finset.powerset.{u2} ι t) (fun (s : Finset.{u2} ι) => coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) s m m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j s))))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : DecidableEq.{succ u2} ι] (m : forall (i : ι), M₁ i) (m' : forall (i : ι), M₁ i) (t : Finset.{u2} ι), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) t (HAdd.hAdd.{max u2 u3, max u2 u3, max u2 u3} (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (instHAdd.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instAdd.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) m m') m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j t))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) t (HAdd.hAdd.{max u2 u3, max u2 u3, max u2 u3} (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (instHAdd.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instAdd.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) m m') m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j t))) (Finset.sum.{u4, u2} M₂ (Finset.{u2} ι) _inst_5 (Finset.powerset.{u2} ι t) (fun (s : Finset.{u2} ι) => FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) s m m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j s))))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_piecewise_add ContinuousMultilinearMap.map_piecewise_addₓ'. -/
theorem map_piecewise_add [DecidableEq ι] (m m' : ∀ i, M₁ i) (t : Finset ι) :
f (t.piecewise (m + m') m') = ∑ s in t.powerset, f (s.piecewise m m') :=
f.toMultilinearMap.map_piecewise_add _ _ _
#align continuous_multilinear_map.map_piecewise_add ContinuousMultilinearMap.map_piecewise_add
+/- warning: continuous_multilinear_map.map_add_univ -> ContinuousMultilinearMap.map_add_univ is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : DecidableEq.{succ u2} ι] [_inst_21 : Fintype.{u2} ι] (m : forall (i : ι), M₁ i) (m' : forall (i : ι), M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (HAdd.hAdd.{max u2 u3, max u2 u3, max u2 u3} (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (instHAdd.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instAdd.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toHasAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) m m')) (Finset.sum.{u4, u2} M₂ (Finset.{u2} ι) _inst_5 (Finset.univ.{u2} (Finset.{u2} ι) (Finset.fintype.{u2} ι _inst_21)) (fun (s : Finset.{u2} ι) => coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) s m m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j s))))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) [_inst_20 : DecidableEq.{succ u2} ι] [_inst_21 : Fintype.{u2} ι] (m : forall (i : ι), M₁ i) (m' : forall (i : ι), M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (HAdd.hAdd.{max u2 u3, max u2 u3, max u2 u3} (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (instHAdd.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instAdd.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) m m')) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (HAdd.hAdd.{max u2 u3, max u2 u3, max u2 u3} (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (forall (i : ι), M₁ i) (instHAdd.{max u2 u3} (forall (i : ι), M₁ i) (Pi.instAdd.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (i : ι) => AddZeroClass.toAdd.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))))) m m')) (Finset.sum.{u4, u2} M₂ (Finset.{u2} ι) _inst_5 (Finset.univ.{u2} (Finset.{u2} ι) (Finset.fintype.{u2} ι _inst_21)) (fun (s : Finset.{u2} ι) => FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (Finset.piecewise.{u2, succ u3} ι (fun (i : ι) => M₁ i) s m m' (fun (j : ι) => Finset.decidableMem.{u2} ι (fun (a : ι) (b : ι) => _inst_20 a b) j s))))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_add_univ ContinuousMultilinearMap.map_add_univₓ'. -/
/-- Additivity of a continuous multilinear map along all coordinates at the same time,
writing `f (m + m')` as the sum of `f (s.piecewise m m')` over all sets `s`. -/
theorem map_add_univ [DecidableEq ι] [Fintype ι] (m m' : ∀ i, M₁ i) :
@@ -375,6 +535,12 @@ open Fintype Finset
variable {α : ι → Type _} [Fintype ι] (g : ∀ i, α i → M₁ i) (A : ∀ i, Finset (α i))
+/- warning: continuous_multilinear_map.map_sum_finset -> ContinuousMultilinearMap.map_sum_finset is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) {α : ι -> Type.{u5}} [_inst_20 : Fintype.{u2} ι] (g : forall (i : ι), (α i) -> (M₁ i)) (A : forall (i : ι), Finset.{u5} (α i)) [_inst_21 : DecidableEq.{succ u2} ι], Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (fun (i : ι) => Finset.sum.{u3, u5} (M₁ i) (α i) (_inst_3 i) (A i) (fun (j : α i) => g i j))) (Finset.sum.{u4, max u2 u5} M₂ (forall (a : ι), α a) _inst_5 (Fintype.piFinset.{u2, u5} ι (fun (a : ι) (b : ι) => _inst_21 a b) _inst_20 (fun (i : ι) => α i) A) (fun (r : forall (a : ι), α a) => coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (fun (i : ι) => g i (r i))))
+but is expected to have type
+ forall {R : Type.{u2}} {ι : Type.{u3}} {M₁ : ι -> Type.{u4}} {M₂ : Type.{u5}} [_inst_1 : Semiring.{u2} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u4} (M₁ i)] [_inst_5 : AddCommMonoid.{u5} M₂] [_inst_9 : forall (i : ι), Module.{u2, u4} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u2, u5} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u4} (M₁ i)] [_inst_17 : TopologicalSpace.{u5} M₂] (f : ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) {α : ι -> Type.{u1}} [_inst_20 : Fintype.{u3} ι] (g : forall (i : ι), (α i) -> (M₁ i)) (A : forall (i : ι), Finset.{u1} (α i)) [_inst_21 : DecidableEq.{succ u3} ι], Eq.{succ u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (fun (i : ι) => Finset.sum.{u4, u1} (M₁ i) (α i) (_inst_3 i) (A i) (fun (j : α i) => g i j))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (fun (i : ι) => Finset.sum.{u4, u1} (M₁ i) (α i) (_inst_3 i) (A i) (fun (j : α i) => g i j))) (Finset.sum.{u5, max u1 u3} M₂ (forall (a : ι), α a) _inst_5 (Fintype.piFinset.{u3, u1} ι (fun (a : ι) (b : ι) => _inst_21 a b) _inst_20 (fun (i : ι) => α i) A) (fun (r : forall (a : ι), α a) => FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (fun (i : ι) => g i (r i))))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_sum_finset ContinuousMultilinearMap.map_sum_finsetₓ'. -/
/-- If `f` is continuous multilinear, then `f (Σ_{j₁ ∈ A₁} g₁ j₁, ..., Σ_{jₙ ∈ Aₙ} gₙ jₙ)` is the
sum of `f (g₁ (r 1), ..., gₙ (r n))` where `r` ranges over all functions with `r 1 ∈ A₁`, ...,
`r n ∈ Aₙ`. This follows from multilinearity by expanding successively with respect to each
@@ -384,6 +550,12 @@ theorem map_sum_finset [DecidableEq ι] :
f.toMultilinearMap.map_sum_finset _ _
#align continuous_multilinear_map.map_sum_finset ContinuousMultilinearMap.map_sum_finset
+/- warning: continuous_multilinear_map.map_sum -> ContinuousMultilinearMap.map_sum is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) {α : ι -> Type.{u5}} [_inst_20 : Fintype.{u2} ι] (g : forall (i : ι), (α i) -> (M₁ i)) [_inst_21 : DecidableEq.{succ u2} ι] [_inst_22 : forall (i : ι), Fintype.{u5} (α i)], Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (fun (i : ι) => Finset.sum.{u3, u5} (M₁ i) (α i) (_inst_3 i) (Finset.univ.{u5} (α i) (_inst_22 i)) (fun (j : α i) => g i j))) (Finset.sum.{u4, max u2 u5} M₂ (forall (i : ι), α i) _inst_5 (Finset.univ.{max u2 u5} (forall (i : ι), α i) (Pi.fintype.{u2, u5} ι (fun (i : ι) => α i) (fun (a : ι) (b : ι) => _inst_21 a b) _inst_20 (fun (a : ι) => _inst_22 a))) (fun (r : forall (i : ι), α i) => coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) f (fun (i : ι) => g i (r i))))
+but is expected to have type
+ forall {R : Type.{u2}} {ι : Type.{u3}} {M₁ : ι -> Type.{u4}} {M₂ : Type.{u5}} [_inst_1 : Semiring.{u2} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u4} (M₁ i)] [_inst_5 : AddCommMonoid.{u5} M₂] [_inst_9 : forall (i : ι), Module.{u2, u4} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u2, u5} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u4} (M₁ i)] [_inst_17 : TopologicalSpace.{u5} M₂] (f : ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) {α : ι -> Type.{u1}} [_inst_20 : Fintype.{u3} ι] (g : forall (i : ι), (α i) -> (M₁ i)) [_inst_21 : DecidableEq.{succ u3} ι] [_inst_22 : forall (i : ι), Fintype.{u1} (α i)], Eq.{succ u5} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (fun (i : ι) => Finset.sum.{u4, u1} (M₁ i) (α i) (_inst_3 i) (Finset.univ.{u1} (α i) (_inst_22 i)) (fun (j : α i) => g i j))) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (fun (i : ι) => Finset.sum.{u4, u1} (M₁ i) (α i) (_inst_3 i) (Finset.univ.{u1} (α i) (_inst_22 i)) (fun (j : α i) => g i j))) (Finset.sum.{u5, max u3 u1} M₂ (forall (i : ι), α i) _inst_5 (Finset.univ.{max u3 u1} (forall (i : ι), α i) (Pi.fintype.{u3, u1} ι (fun (i : ι) => α i) (fun (a : ι) (b : ι) => _inst_21 a b) _inst_20 (fun (a : ι) => _inst_22 a))) (fun (r : forall (i : ι), α i) => FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f (fun (i : ι) => g i (r i))))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_sum ContinuousMultilinearMap.map_sumₓ'. -/
/-- If `f` is continuous multilinear, then `f (Σ_{j₁} g₁ j₁, ..., Σ_{jₙ} gₙ jₙ)` is the sum of
`f (g₁ (r 1), ..., gₙ (r n))` where `r` ranges over all functions `r`. This follows from
multilinearity by expanding successively with respect to each coordinate. -/
@@ -399,6 +571,7 @@ section RestrictScalar
variable (R) {A : Type _} [Semiring A] [SMul R A] [∀ i : ι, Module A (M₁ i)] [Module A M₂]
[∀ i, IsScalarTower R A (M₁ i)] [IsScalarTower R A M₂]
+#print ContinuousMultilinearMap.restrictScalars /-
/-- Reinterpret an `A`-multilinear map as an `R`-multilinear map, if `A` is an algebra over `R`
and their actions on all involved modules agree with the action of `R` on `A`. -/
def restrictScalars (f : ContinuousMultilinearMap A M₁ M₂) : ContinuousMultilinearMap R M₁ M₂
@@ -406,7 +579,14 @@ def restrictScalars (f : ContinuousMultilinearMap A M₁ M₂) : ContinuousMulti
toMultilinearMap := f.toMultilinearMap.restrictScalars R
cont := f.cont
#align continuous_multilinear_map.restrict_scalars ContinuousMultilinearMap.restrictScalars
+-/
+/- warning: continuous_multilinear_map.coe_restrict_scalars -> ContinuousMultilinearMap.coe_restrictScalars is a dubious translation:
+lean 3 declaration is
+ forall (R : Type.{u1}) {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Semiring.{u1} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u3} (M₁ i)] [_inst_5 : AddCommMonoid.{u4} M₂] [_inst_9 : forall (i : ι), Module.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u1, u4} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_17 : TopologicalSpace.{u4} M₂] {A : Type.{u5}} [_inst_20 : Semiring.{u5} A] [_inst_21 : SMul.{u1, u5} R A] [_inst_22 : forall (i : ι), Module.{u5, u3} A (M₁ i) _inst_20 (_inst_3 i)] [_inst_23 : Module.{u5, u4} A M₂ _inst_20 _inst_5] [_inst_24 : forall (i : ι), IsScalarTower.{u1, u5, u3} R A (M₁ i) _inst_21 (SMulZeroClass.toHasSmul.{u5, u3} A (M₁ i) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))) (SMulWithZero.toSmulZeroClass.{u5, u3} A (M₁ i) (MulZeroClass.toHasZero.{u5} A (MulZeroOneClass.toMulZeroClass.{u5} A (MonoidWithZero.toMulZeroOneClass.{u5} A (Semiring.toMonoidWithZero.{u5} A _inst_20)))) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))) (MulActionWithZero.toSMulWithZero.{u5, u3} A (M₁ i) (Semiring.toMonoidWithZero.{u5} A _inst_20) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))) (Module.toMulActionWithZero.{u5, u3} A (M₁ i) _inst_20 (_inst_3 i) (_inst_22 i))))) (SMulZeroClass.toHasSmul.{u1, u3} R (M₁ i) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))) (SMulWithZero.toSmulZeroClass.{u1, u3} R (M₁ i) (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))) (MulActionWithZero.toSMulWithZero.{u1, u3} R (M₁ i) (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u3} (M₁ i) (AddMonoid.toAddZeroClass.{u3} (M₁ i) (AddCommMonoid.toAddMonoid.{u3} (M₁ i) (_inst_3 i)))) (Module.toMulActionWithZero.{u1, u3} R (M₁ i) _inst_1 (_inst_3 i) (_inst_9 i)))))] [_inst_25 : IsScalarTower.{u1, u5, u4} R A M₂ _inst_21 (SMulZeroClass.toHasSmul.{u5, u4} A M₂ (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))) (SMulWithZero.toSmulZeroClass.{u5, u4} A M₂ (MulZeroClass.toHasZero.{u5} A (MulZeroOneClass.toMulZeroClass.{u5} A (MonoidWithZero.toMulZeroOneClass.{u5} A (Semiring.toMonoidWithZero.{u5} A _inst_20)))) (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))) (MulActionWithZero.toSMulWithZero.{u5, u4} A M₂ (Semiring.toMonoidWithZero.{u5} A _inst_20) (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))) (Module.toMulActionWithZero.{u5, u4} A M₂ _inst_20 _inst_5 _inst_23)))) (SMulZeroClass.toHasSmul.{u1, u4} R M₂ (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))) (SMulWithZero.toSmulZeroClass.{u1, u4} R M₂ (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))) (MulActionWithZero.toSMulWithZero.{u1, u4} R M₂ (Semiring.toMonoidWithZero.{u1} R _inst_1) (AddZeroClass.toHasZero.{u4} M₂ (AddMonoid.toAddZeroClass.{u4} M₂ (AddCommMonoid.toAddMonoid.{u4} M₂ _inst_5))) (Module.toMulActionWithZero.{u1, u4} R M₂ _inst_1 _inst_5 _inst_11))))] (f : ContinuousMultilinearMap.{u5, u2, u3, u4} A ι M₁ M₂ _inst_20 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (max (succ u2) (succ u3)) (succ u4)} ((forall (i : ι), M₁ i) -> M₂) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17) (ContinuousMultilinearMap.restrictScalars.{u1, u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 A _inst_20 _inst_21 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_24 i) _inst_25 f)) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u5, u2, u3, u4} A ι M₁ M₂ _inst_20 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_15 i) _inst_17) (fun (_x : ContinuousMultilinearMap.{u5, u2, u3, u4} A ι M₁ M₂ _inst_20 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_15 i) _inst_17) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u5, u2, u3, u4} A ι M₁ M₂ _inst_20 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_15 i) _inst_17) f)
+but is expected to have type
+ forall (R : Type.{u2}) {ι : Type.{u3}} {M₁ : ι -> Type.{u4}} {M₂ : Type.{u5}} [_inst_1 : Semiring.{u2} R] [_inst_3 : forall (i : ι), AddCommMonoid.{u4} (M₁ i)] [_inst_5 : AddCommMonoid.{u5} M₂] [_inst_9 : forall (i : ι), Module.{u2, u4} R (M₁ i) _inst_1 (_inst_3 i)] [_inst_11 : Module.{u2, u5} R M₂ _inst_1 _inst_5] [_inst_15 : forall (i : ι), TopologicalSpace.{u4} (M₁ i)] [_inst_17 : TopologicalSpace.{u5} M₂] {A : Type.{u1}} [_inst_20 : Semiring.{u1} A] [_inst_21 : SMul.{u2, u1} R A] [_inst_22 : forall (i : ι), Module.{u1, u4} A (M₁ i) _inst_20 (_inst_3 i)] [_inst_23 : Module.{u1, u5} A M₂ _inst_20 _inst_5] [_inst_24 : forall (i : ι), IsScalarTower.{u2, u1, u4} R A (M₁ i) _inst_21 (SMulZeroClass.toSMul.{u1, u4} A (M₁ i) (AddMonoid.toZero.{u4} (M₁ i) (AddCommMonoid.toAddMonoid.{u4} (M₁ i) (_inst_3 i))) (SMulWithZero.toSMulZeroClass.{u1, u4} A (M₁ i) (MonoidWithZero.toZero.{u1} A (Semiring.toMonoidWithZero.{u1} A _inst_20)) (AddMonoid.toZero.{u4} (M₁ i) (AddCommMonoid.toAddMonoid.{u4} (M₁ i) (_inst_3 i))) (MulActionWithZero.toSMulWithZero.{u1, u4} A (M₁ i) (Semiring.toMonoidWithZero.{u1} A _inst_20) (AddMonoid.toZero.{u4} (M₁ i) (AddCommMonoid.toAddMonoid.{u4} (M₁ i) (_inst_3 i))) (Module.toMulActionWithZero.{u1, u4} A (M₁ i) _inst_20 (_inst_3 i) (_inst_22 i))))) (SMulZeroClass.toSMul.{u2, u4} R (M₁ i) (AddMonoid.toZero.{u4} (M₁ i) (AddCommMonoid.toAddMonoid.{u4} (M₁ i) (_inst_3 i))) (SMulWithZero.toSMulZeroClass.{u2, u4} R (M₁ i) (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u4} (M₁ i) (AddCommMonoid.toAddMonoid.{u4} (M₁ i) (_inst_3 i))) (MulActionWithZero.toSMulWithZero.{u2, u4} R (M₁ i) (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u4} (M₁ i) (AddCommMonoid.toAddMonoid.{u4} (M₁ i) (_inst_3 i))) (Module.toMulActionWithZero.{u2, u4} R (M₁ i) _inst_1 (_inst_3 i) (_inst_9 i)))))] [_inst_25 : IsScalarTower.{u2, u1, u5} R A M₂ _inst_21 (SMulZeroClass.toSMul.{u1, u5} A M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (SMulWithZero.toSMulZeroClass.{u1, u5} A M₂ (MonoidWithZero.toZero.{u1} A (Semiring.toMonoidWithZero.{u1} A _inst_20)) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (MulActionWithZero.toSMulWithZero.{u1, u5} A M₂ (Semiring.toMonoidWithZero.{u1} A _inst_20) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (Module.toMulActionWithZero.{u1, u5} A M₂ _inst_20 _inst_5 _inst_23)))) (SMulZeroClass.toSMul.{u2, u5} R M₂ (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (SMulWithZero.toSMulZeroClass.{u2, u5} R M₂ (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (MulActionWithZero.toSMulWithZero.{u2, u5} R M₂ (Semiring.toMonoidWithZero.{u2} R _inst_1) (AddMonoid.toZero.{u5} M₂ (AddCommMonoid.toAddMonoid.{u5} M₂ _inst_5)) (Module.toMulActionWithZero.{u2, u5} R M₂ _inst_1 _inst_5 _inst_11))))] (f : ContinuousMultilinearMap.{u1, u3, u4, u5} A ι M₁ M₂ _inst_20 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_15 i) _inst_17), Eq.{max (max (succ u3) (succ u4)) (succ u5)} (forall (ᾰ : forall (i : ι), M₁ i), (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) ᾰ) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u4, u5} R ι M₁ M₂ _inst_1 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_9 i) i) _inst_11 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) (ContinuousMultilinearMap.restrictScalars.{u2, u3, u4, u5, u1} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_3 i) _inst_5 (fun (i : ι) => _inst_9 i) _inst_11 (fun (i : ι) => _inst_15 i) _inst_17 A _inst_20 _inst_21 (fun (i : ι) => _inst_22 i) _inst_23 (fun (i : ι) => _inst_24 i) _inst_25 f)) (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u5), max (succ u3) (succ u4), succ u5} (ContinuousMultilinearMap.{u1, u3, u4, u5} A ι M₁ M₂ _inst_20 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_22 i) i) _inst_23 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u3 u4) u5, max u3 u4, u5} (ContinuousMultilinearMap.{u1, u3, u4, u5} A ι M₁ M₂ _inst_20 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_22 i) i) _inst_23 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u3, u4} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_15 i) a)) _inst_17 (ContinuousMultilinearMap.continuousMapClass.{u1, u3, u4, u5} A ι M₁ M₂ _inst_20 (fun (i : ι) => (fun (i : ι) => _inst_3 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_22 i) i) _inst_23 (fun (i : ι) => (fun (i : ι) => _inst_15 i) i) _inst_17)) f)
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.coe_restrict_scalars ContinuousMultilinearMap.coe_restrictScalarsₓ'. -/
@[simp]
theorem coe_restrictScalars (f : ContinuousMultilinearMap A M₁ M₂) : ⇑(f.restrictScalars R) = f :=
rfl
@@ -421,6 +601,12 @@ section Ring
variable [Ring R] [∀ i, AddCommGroup (M₁ i)] [AddCommGroup M₂] [∀ i, Module R (M₁ i)] [Module R M₂]
[∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂] (f f' : ContinuousMultilinearMap R M₁ M₂)
+/- warning: continuous_multilinear_map.map_sub -> ContinuousMultilinearMap.map_sub is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Ring.{u1} R] [_inst_2 : forall (i : ι), AddCommGroup.{u3} (M₁ i)] [_inst_3 : AddCommGroup.{u4} M₂] [_inst_4 : forall (i : ι), Module.{u1, u3} R (M₁ i) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i))] [_inst_5 : Module.{u1, u4} R M₂ (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3)] [_inst_6 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_7 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) [_inst_8 : DecidableEq.{succ u2} ι] (m : forall (i : ι), M₁ i) (i : ι) (x : M₁ i) (y : M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i (HSub.hSub.{u3, u3, u3} (M₁ i) (M₁ i) (M₁ i) (instHSub.{u3} (M₁ i) (SubNegMonoid.toHasSub.{u3} (M₁ i) (AddGroup.toSubNegMonoid.{u3} (M₁ i) (AddCommGroup.toAddGroup.{u3} (M₁ i) (_inst_2 i))))) x y))) (HSub.hSub.{u4, u4, u4} M₂ M₂ M₂ (instHSub.{u4} M₂ (SubNegMonoid.toHasSub.{u4} M₂ (AddGroup.toSubNegMonoid.{u4} M₂ (AddCommGroup.toAddGroup.{u4} M₂ _inst_3)))) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i y)))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Ring.{u1} R] [_inst_2 : forall (i : ι), AddCommGroup.{u3} (M₁ i)] [_inst_3 : AddCommGroup.{u4} M₂] [_inst_4 : forall (i : ι), Module.{u1, u3} R (M₁ i) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i))] [_inst_5 : Module.{u1, u4} R M₂ (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3)] [_inst_6 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_7 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) [_inst_8 : DecidableEq.{succ u2} ι] (m : forall (i : ι), M₁ i) (i : ι) (x : M₁ i) (y : M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i (HSub.hSub.{u3, u3, u3} (M₁ i) (M₁ i) (M₁ i) (instHSub.{u3} (M₁ i) (SubNegMonoid.toSub.{u3} (M₁ i) (AddGroup.toSubNegMonoid.{u3} (M₁ i) (AddCommGroup.toAddGroup.{u3} (M₁ i) (_inst_2 i))))) x y))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i (HSub.hSub.{u3, u3, u3} (M₁ i) (M₁ i) (M₁ i) (instHSub.{u3} (M₁ i) (SubNegMonoid.toSub.{u3} (M₁ i) (AddGroup.toSubNegMonoid.{u3} (M₁ i) (AddCommGroup.toAddGroup.{u3} (M₁ i) (_inst_2 i))))) x y))) (HSub.hSub.{u4, u4, u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i y)) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) (instHSub.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) (SubNegMonoid.toSub.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) (AddGroup.toSubNegMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) (AddCommGroup.toAddGroup.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) _inst_3)))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i x)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) f (Function.update.{succ u2, succ u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) (b : ι) => _inst_8 a b) m i y)))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.map_sub ContinuousMultilinearMap.map_subₓ'. -/
@[simp]
theorem map_sub [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (x y : M₁ i) :
f (update m i (x - y)) = f (update m i x) - f (update m i y) :=
@@ -434,6 +620,12 @@ variable [TopologicalAddGroup M₂]
instance : Neg (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f => { -f.toMultilinearMap with cont := f.cont.neg }⟩
+/- warning: continuous_multilinear_map.neg_apply -> ContinuousMultilinearMap.neg_apply is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Ring.{u1} R] [_inst_2 : forall (i : ι), AddCommGroup.{u3} (M₁ i)] [_inst_3 : AddCommGroup.{u4} M₂] [_inst_4 : forall (i : ι), Module.{u1, u3} R (M₁ i) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i))] [_inst_5 : Module.{u1, u4} R M₂ (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3)] [_inst_6 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_7 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) [_inst_8 : TopologicalAddGroup.{u4} M₂ _inst_7 (AddCommGroup.toAddGroup.{u4} M₂ _inst_3)] (m : forall (i : ι), M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (Neg.neg.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.hasNeg.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_2 i) _inst_3 (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7 _inst_8) f) m) (Neg.neg.{u4} M₂ (SubNegMonoid.toHasNeg.{u4} M₂ (AddGroup.toSubNegMonoid.{u4} M₂ (AddCommGroup.toAddGroup.{u4} M₂ _inst_3))) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) f m))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Ring.{u1} R] [_inst_2 : forall (i : ι), AddCommGroup.{u3} (M₁ i)] [_inst_3 : AddCommGroup.{u4} M₂] [_inst_4 : forall (i : ι), Module.{u1, u3} R (M₁ i) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i))] [_inst_5 : Module.{u1, u4} R M₂ (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3)] [_inst_6 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_7 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) [_inst_8 : TopologicalAddGroup.{u4} M₂ _inst_7 (AddCommGroup.toAddGroup.{u4} M₂ _inst_3)] (m : forall (i : ι), M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) (Neg.neg.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.instNegContinuousMultilinearMapToSemiringToAddCommMonoidToAddCommMonoid.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_2 i) _inst_3 (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7 _inst_8) f) m) (Neg.neg.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (NegZeroClass.toNeg.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (SubNegZeroMonoid.toNegZeroClass.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (SubtractionMonoid.toSubNegZeroMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (SubtractionCommMonoid.toSubtractionMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommGroup.toDivisionAddCommMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) f m))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.neg_apply ContinuousMultilinearMap.neg_applyₓ'. -/
@[simp]
theorem neg_apply (m : ∀ i, M₁ i) : (-f) m = -f m :=
rfl
@@ -442,6 +634,12 @@ theorem neg_apply (m : ∀ i, M₁ i) : (-f) m = -f m :=
instance : Sub (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f g => { f.toMultilinearMap - g.toMultilinearMap with cont := f.cont.sub g.cont }⟩
+/- warning: continuous_multilinear_map.sub_apply -> ContinuousMultilinearMap.sub_apply is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Ring.{u1} R] [_inst_2 : forall (i : ι), AddCommGroup.{u3} (M₁ i)] [_inst_3 : AddCommGroup.{u4} M₂] [_inst_4 : forall (i : ι), Module.{u1, u3} R (M₁ i) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i))] [_inst_5 : Module.{u1, u4} R M₂ (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3)] [_inst_6 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_7 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (f' : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) [_inst_8 : TopologicalAddGroup.{u4} M₂ _inst_7 (AddCommGroup.toAddGroup.{u4} M₂ _inst_3)] (m : forall (i : ι), M₁ i), Eq.{succ u4} M₂ (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (HSub.hSub.{max u2 u3 u4, max u2 u3 u4, max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (instHSub.{max u2 u3 u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.hasSub.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_2 i) _inst_3 (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7 _inst_8)) f f') m) (HSub.hSub.{u4, u4, u4} M₂ M₂ M₂ (instHSub.{u4} M₂ (SubNegMonoid.toHasSub.{u4} M₂ (AddGroup.toSubNegMonoid.{u4} M₂ (AddCommGroup.toAddGroup.{u4} M₂ _inst_3)))) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) f m) (coeFn.{max (succ u2) (succ u3) (succ u4), max (max (succ u2) (succ u3)) (succ u4)} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) => (forall (i : ι), M₁ i) -> M₂) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) f' m))
+but is expected to have type
+ forall {R : Type.{u1}} {ι : Type.{u2}} {M₁ : ι -> Type.{u3}} {M₂ : Type.{u4}} [_inst_1 : Ring.{u1} R] [_inst_2 : forall (i : ι), AddCommGroup.{u3} (M₁ i)] [_inst_3 : AddCommGroup.{u4} M₂] [_inst_4 : forall (i : ι), Module.{u1, u3} R (M₁ i) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i))] [_inst_5 : Module.{u1, u4} R M₂ (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3)] [_inst_6 : forall (i : ι), TopologicalSpace.{u3} (M₁ i)] [_inst_7 : TopologicalSpace.{u4} M₂] (f : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (f' : ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) [_inst_8 : TopologicalAddGroup.{u4} M₂ _inst_7 (AddCommGroup.toAddGroup.{u4} M₂ _inst_3)] (m : forall (i : ι), M₁ i), Eq.{succ u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) (HSub.hSub.{max (max u2 u3) u4, max (max u2 u3) u4, max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (instHSub.{max (max u2 u3) u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7) (ContinuousMultilinearMap.instSubContinuousMultilinearMapToSemiringToAddCommMonoidToAddCommMonoid.{u1, u2, u3, u4} R ι M₁ M₂ _inst_1 (fun (i : ι) => _inst_2 i) _inst_3 (fun (i : ι) => _inst_4 i) _inst_5 (fun (i : ι) => _inst_6 i) _inst_7 _inst_8)) f f') m) (HSub.hSub.{u4, u4, u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (instHSub.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (SubNegMonoid.toSub.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddGroup.toSubNegMonoid.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) (AddCommGroup.toAddGroup.{u4} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) m) _inst_3)))) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) f m) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u3), succ u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) (fun (_x : forall (i : ι), M₁ i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), M₁ i) => M₂) _x) (ContinuousMapClass.toFunLike.{max (max u2 u3) u4, max u2 u3, u4} (ContinuousMultilinearMap.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7) (forall (i : ι), M₁ i) M₂ (Pi.topologicalSpace.{u2, u3} ι (fun (i : ι) => M₁ i) (fun (a : ι) => (fun (i : ι) => _inst_6 i) a)) _inst_7 (ContinuousMultilinearMap.continuousMapClass.{u1, u2, u3, u4} R ι M₁ M₂ (Ring.toSemiring.{u1} R _inst_1) (fun (i : ι) => (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} (M₁ i) (_inst_2 i)) i) (AddCommGroup.toAddCommMonoid.{u4} M₂ _inst_3) (fun (i : ι) => (fun (i : ι) => _inst_4 i) i) _inst_5 (fun (i : ι) => (fun (i : ι) => _inst_6 i) i) _inst_7)) f' m))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.sub_apply ContinuousMultilinearMap.sub_applyₓ'. -/
@[simp]
theorem sub_apply (m : ∀ i, M₁ i) : (f - f') m = f m - f' m :=
rfl
@@ -461,17 +659,21 @@ variable [CommSemiring R] [∀ i, AddCommMonoid (M₁ i)] [AddCommMonoid M₂] [
[Module R M₂] [∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂]
(f : ContinuousMultilinearMap R M₁ M₂)
+#print ContinuousMultilinearMap.map_piecewise_smul /-
theorem map_piecewise_smul [DecidableEq ι] (c : ι → R) (m : ∀ i, M₁ i) (s : Finset ι) :
f (s.piecewise (fun i => c i • m i) m) = (∏ i in s, c i) • f m :=
f.toMultilinearMap.map_piecewise_smul _ _ _
#align continuous_multilinear_map.map_piecewise_smul ContinuousMultilinearMap.map_piecewise_smul
+-/
+#print ContinuousMultilinearMap.map_smul_univ /-
/-- Multiplicativity of a continuous multilinear map along all coordinates at the same time,
writing `f (λ i, c i • m i)` as `(∏ i, c i) • f m`. -/
theorem map_smul_univ [Fintype ι] (c : ι → R) (m : ∀ i, M₁ i) :
(f fun i => c i • m i) = (∏ i, c i) • f m :=
f.toMultilinearMap.map_smul_univ _ _
#align continuous_multilinear_map.map_smul_univ ContinuousMultilinearMap.map_smul_univ
+-/
end CommSemiring
@@ -501,6 +703,12 @@ instance : Module R' (ContinuousMultilinearMap A M₁ M₂) :=
Function.Injective.module _ ⟨toMultilinearMap, toMultilinearMap_zero, toMultilinearMap_add⟩
toMultilinearMap_injective fun _ _ => rfl
+/- warning: continuous_multilinear_map.to_multilinear_map_linear -> ContinuousMultilinearMap.toMultilinearMapLinear is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} {M₁ : ι -> Type.{u2}} {M₂ : Type.{u3}} {R' : Type.{u4}} {A : Type.{u5}} [_inst_1 : Semiring.{u4} R'] [_inst_2 : Semiring.{u5} A] [_inst_3 : forall (i : ι), AddCommMonoid.{u2} (M₁ i)] [_inst_4 : AddCommMonoid.{u3} M₂] [_inst_5 : forall (i : ι), TopologicalSpace.{u2} (M₁ i)] [_inst_6 : TopologicalSpace.{u3} M₂] [_inst_7 : ContinuousAdd.{u3} M₂ _inst_6 (AddZeroClass.toHasAdd.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)))] [_inst_8 : forall (i : ι), Module.{u5, u2} A (M₁ i) _inst_2 (_inst_3 i)] [_inst_9 : Module.{u5, u3} A M₂ _inst_2 _inst_4] [_inst_10 : Module.{u4, u3} R' M₂ _inst_1 _inst_4] [_inst_11 : ContinuousConstSMul.{u4, u3} R' M₂ _inst_6 (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M₂ (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_1)))) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M₂ (Semiring.toMonoidWithZero.{u4} R' _inst_1) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (Module.toMulActionWithZero.{u4, u3} R' M₂ _inst_1 _inst_4 _inst_10))))] [_inst_12 : SMulCommClass.{u5, u4, u3} A R' M₂ (SMulZeroClass.toHasSmul.{u5, u3} A M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (SMulWithZero.toSmulZeroClass.{u5, u3} A M₂ (MulZeroClass.toHasZero.{u5} A (MulZeroOneClass.toMulZeroClass.{u5} A (MonoidWithZero.toMulZeroOneClass.{u5} A (Semiring.toMonoidWithZero.{u5} A _inst_2)))) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (MulActionWithZero.toSMulWithZero.{u5, u3} A M₂ (Semiring.toMonoidWithZero.{u5} A _inst_2) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (Module.toMulActionWithZero.{u5, u3} A M₂ _inst_2 _inst_4 _inst_9)))) (SMulZeroClass.toHasSmul.{u4, u3} R' M₂ (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (SMulWithZero.toSmulZeroClass.{u4, u3} R' M₂ (MulZeroClass.toHasZero.{u4} R' (MulZeroOneClass.toMulZeroClass.{u4} R' (MonoidWithZero.toMulZeroOneClass.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_1)))) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M₂ (Semiring.toMonoidWithZero.{u4} R' _inst_1) (AddZeroClass.toHasZero.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4))) (Module.toMulActionWithZero.{u4, u3} R' M₂ _inst_1 _inst_4 _inst_10))))], LinearMap.{u4, u4, max u1 u2 u3, max u1 u2 u3} R' R' _inst_1 _inst_1 (RingHom.id.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_1)) (ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9 (fun (i : ι) => _inst_5 i) _inst_6) (MultilinearMap.{u5, u2, u3, u1} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9) (ContinuousMultilinearMap.addCommMonoid.{u5, u1, u2, u3} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9 (fun (i : ι) => _inst_5 i) _inst_6 _inst_7) (MultilinearMap.addCommMonoid.{u5, u2, u3, u1} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9) (ContinuousMultilinearMap.module.{u1, u2, u3, u4, u5} ι M₁ M₂ R' A _inst_1 _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_5 i) _inst_6 _inst_7 (fun (i : ι) => _inst_8 i) _inst_9 _inst_10 _inst_11 _inst_12) (MultilinearMap.module.{u2, u3, u1, u4, u5} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_4 R' A _inst_1 _inst_2 (fun (i : ι) => _inst_8 i) _inst_9 _inst_10 _inst_12)
+but is expected to have type
+ forall {ι : Type.{u1}} {M₁ : ι -> Type.{u2}} {M₂ : Type.{u3}} {R' : Type.{u4}} {A : Type.{u5}} [_inst_1 : Semiring.{u4} R'] [_inst_2 : Semiring.{u5} A] [_inst_3 : forall (i : ι), AddCommMonoid.{u2} (M₁ i)] [_inst_4 : AddCommMonoid.{u3} M₂] [_inst_5 : forall (i : ι), TopologicalSpace.{u2} (M₁ i)] [_inst_6 : TopologicalSpace.{u3} M₂] [_inst_7 : ContinuousAdd.{u3} M₂ _inst_6 (AddZeroClass.toAdd.{u3} M₂ (AddMonoid.toAddZeroClass.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)))] [_inst_8 : forall (i : ι), Module.{u5, u2} A (M₁ i) _inst_2 (_inst_3 i)] [_inst_9 : Module.{u5, u3} A M₂ _inst_2 _inst_4] [_inst_10 : Module.{u4, u3} R' M₂ _inst_1 _inst_4] [_inst_11 : ContinuousConstSMul.{u4, u3} R' M₂ _inst_6 (SMulZeroClass.toSMul.{u4, u3} R' M₂ (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (SMulWithZero.toSMulZeroClass.{u4, u3} R' M₂ (MonoidWithZero.toZero.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_1)) (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M₂ (Semiring.toMonoidWithZero.{u4} R' _inst_1) (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (Module.toMulActionWithZero.{u4, u3} R' M₂ _inst_1 _inst_4 _inst_10))))] [_inst_12 : SMulCommClass.{u5, u4, u3} A R' M₂ (SMulZeroClass.toSMul.{u5, u3} A M₂ (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (SMulWithZero.toSMulZeroClass.{u5, u3} A M₂ (MonoidWithZero.toZero.{u5} A (Semiring.toMonoidWithZero.{u5} A _inst_2)) (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (MulActionWithZero.toSMulWithZero.{u5, u3} A M₂ (Semiring.toMonoidWithZero.{u5} A _inst_2) (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (Module.toMulActionWithZero.{u5, u3} A M₂ _inst_2 _inst_4 _inst_9)))) (SMulZeroClass.toSMul.{u4, u3} R' M₂ (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (SMulWithZero.toSMulZeroClass.{u4, u3} R' M₂ (MonoidWithZero.toZero.{u4} R' (Semiring.toMonoidWithZero.{u4} R' _inst_1)) (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (MulActionWithZero.toSMulWithZero.{u4, u3} R' M₂ (Semiring.toMonoidWithZero.{u4} R' _inst_1) (AddMonoid.toZero.{u3} M₂ (AddCommMonoid.toAddMonoid.{u3} M₂ _inst_4)) (Module.toMulActionWithZero.{u4, u3} R' M₂ _inst_1 _inst_4 _inst_10))))], LinearMap.{u4, u4, max (max u3 u2) u1, max (max u1 u3) u2} R' R' _inst_1 _inst_1 (RingHom.id.{u4} R' (Semiring.toNonAssocSemiring.{u4} R' _inst_1)) (ContinuousMultilinearMap.{u5, u1, u2, u3} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9 (fun (i : ι) => _inst_5 i) _inst_6) (MultilinearMap.{u5, u2, u3, u1} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9) (ContinuousMultilinearMap.addCommMonoid.{u5, u1, u2, u3} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9 (fun (i : ι) => _inst_5 i) _inst_6 _inst_7) (MultilinearMap.addCommMonoid.{u5, u2, u3, u1} A ι M₁ M₂ _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_8 i) _inst_9) (ContinuousMultilinearMap.instModuleContinuousMultilinearMapAddCommMonoid.{u1, u2, u3, u4, u5} ι M₁ M₂ R' A _inst_1 _inst_2 (fun (i : ι) => _inst_3 i) _inst_4 (fun (i : ι) => _inst_5 i) _inst_6 _inst_7 (fun (i : ι) => _inst_8 i) _inst_9 _inst_10 _inst_11 _inst_12) (MultilinearMap.instModuleMultilinearMapAddCommMonoid.{u2, u3, u1, u4, u5} ι M₁ M₂ (fun (i : ι) => _inst_3 i) _inst_4 R' A _inst_1 _inst_2 (fun (i : ι) => _inst_8 i) _inst_9 _inst_10 _inst_12)
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.to_multilinear_map_linear ContinuousMultilinearMap.toMultilinearMapLinearₓ'. -/
/-- Linear map version of the map `to_multilinear_map` associating to a continuous multilinear map
the corresponding multilinear map. -/
@[simps]
@@ -511,6 +719,12 @@ def toMultilinearMapLinear : ContinuousMultilinearMap A M₁ M₂ →ₗ[R'] Mul
map_smul' := toMultilinearMap_smul
#align continuous_multilinear_map.to_multilinear_map_linear ContinuousMultilinearMap.toMultilinearMapLinear
+/- warning: continuous_multilinear_map.pi_linear_equiv -> ContinuousMultilinearMap.piLinearEquiv is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} {M₁ : ι -> Type.{u2}} {R' : Type.{u3}} {A : Type.{u4}} [_inst_1 : Semiring.{u3} R'] [_inst_2 : Semiring.{u4} A] [_inst_3 : forall (i : ι), AddCommMonoid.{u2} (M₁ i)] [_inst_5 : forall (i : ι), TopologicalSpace.{u2} (M₁ i)] [_inst_8 : forall (i : ι), Module.{u4, u2} A (M₁ i) _inst_2 (_inst_3 i)] {ι' : Type.{u5}} {M' : ι' -> Type.{u6}} [_inst_13 : forall (i : ι'), AddCommMonoid.{u6} (M' i)] [_inst_14 : forall (i : ι'), TopologicalSpace.{u6} (M' i)] [_inst_15 : forall (i : ι'), ContinuousAdd.{u6} (M' i) (_inst_14 i) (AddZeroClass.toHasAdd.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))))] [_inst_16 : forall (i : ι'), Module.{u3, u6} R' (M' i) _inst_1 (_inst_13 i)] [_inst_17 : forall (i : ι'), Module.{u4, u6} A (M' i) _inst_2 (_inst_13 i)] [_inst_18 : forall (i : ι'), SMulCommClass.{u4, u3, u6} A R' (M' i) (SMulZeroClass.toHasSmul.{u4, u6} A (M' i) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (SMulWithZero.toSmulZeroClass.{u4, u6} A (M' i) (MulZeroClass.toHasZero.{u4} A (MulZeroOneClass.toMulZeroClass.{u4} A (MonoidWithZero.toMulZeroOneClass.{u4} A (Semiring.toMonoidWithZero.{u4} A _inst_2)))) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (MulActionWithZero.toSMulWithZero.{u4, u6} A (M' i) (Semiring.toMonoidWithZero.{u4} A _inst_2) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (Module.toMulActionWithZero.{u4, u6} A (M' i) _inst_2 (_inst_13 i) (_inst_17 i))))) (SMulZeroClass.toHasSmul.{u3, u6} R' (M' i) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (SMulWithZero.toSmulZeroClass.{u3, u6} R' (M' i) (MulZeroClass.toHasZero.{u3} R' (MulZeroOneClass.toMulZeroClass.{u3} R' (MonoidWithZero.toMulZeroOneClass.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)))) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (MulActionWithZero.toSMulWithZero.{u3, u6} R' (M' i) (Semiring.toMonoidWithZero.{u3} R' _inst_1) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (Module.toMulActionWithZero.{u3, u6} R' (M' i) _inst_1 (_inst_13 i) (_inst_16 i)))))] [_inst_19 : forall (i : ι'), ContinuousConstSMul.{u3, u6} R' (M' i) (_inst_14 i) (SMulZeroClass.toHasSmul.{u3, u6} R' (M' i) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (SMulWithZero.toSmulZeroClass.{u3, u6} R' (M' i) (MulZeroClass.toHasZero.{u3} R' (MulZeroOneClass.toMulZeroClass.{u3} R' (MonoidWithZero.toMulZeroOneClass.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)))) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (MulActionWithZero.toSMulWithZero.{u3, u6} R' (M' i) (Semiring.toMonoidWithZero.{u3} R' _inst_1) (AddZeroClass.toHasZero.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i)))) (Module.toMulActionWithZero.{u3, u6} R' (M' i) _inst_1 (_inst_13 i) (_inst_16 i)))))], LinearEquiv.{u3, u3, max u5 u1 u2 u6, max u1 u2 u5 u6} R' R' _inst_1 _inst_1 (RingHom.id.{u3} R' (Semiring.toNonAssocSemiring.{u3} R' _inst_1)) (RingHom.id.{u3} R' (Semiring.toNonAssocSemiring.{u3} R' _inst_1)) (RingHomInvPair.ids.{u3} R' _inst_1) (RingHomInvPair.ids.{u3} R' _inst_1) (forall (i : ι'), ContinuousMultilinearMap.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i)) (ContinuousMultilinearMap.{u4, u1, u2, max u5 u6} A ι M₁ (forall (i : ι'), M' i) _inst_2 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u5, u6} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_13 i)) (fun (i : ι) => _inst_8 i) (Pi.module.{u5, u6, u4} ι' (fun (i : ι') => M' i) A _inst_2 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_17 i)) (fun (i : ι) => _inst_5 i) (Pi.topologicalSpace.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a))) (Pi.addCommMonoid.{u5, max u1 u2 u6} ι' (fun (i : ι') => ContinuousMultilinearMap.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i)) (fun (i : ι') => ContinuousMultilinearMap.addCommMonoid.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i) (_inst_15 i))) (ContinuousMultilinearMap.addCommMonoid.{u4, u1, u2, max u5 u6} A ι M₁ (forall (i : ι'), M' i) _inst_2 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u5, u6} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_13 i)) (fun (i : ι) => _inst_8 i) (Pi.module.{u5, u6, u4} ι' (fun (i : ι') => M' i) A _inst_2 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_17 i)) (fun (i : ι) => _inst_5 i) (Pi.topologicalSpace.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a)) (ContinuousMultilinearMap.piLinearEquiv._proof_1.{u5, u6} ι' M' _inst_13 _inst_14 _inst_15)) (Pi.module.{u5, max u1 u2 u6, u3} ι' (fun (i : ι') => ContinuousMultilinearMap.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i)) R' _inst_1 (fun (i : ι') => ContinuousMultilinearMap.addCommMonoid.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i) (_inst_15 i)) (fun (i : ι') => ContinuousMultilinearMap.module.{u1, u2, u6, u3, u4} ι M₁ (M' i) R' A _inst_1 _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_5 i) (_inst_14 i) (_inst_15 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (_inst_16 i) (_inst_19 i) (_inst_18 i))) (ContinuousMultilinearMap.module.{u1, u2, max u5 u6, u3, u4} ι M₁ (forall (i : ι'), M' i) R' A _inst_1 _inst_2 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u5, u6} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_13 i)) (fun (i : ι) => _inst_5 i) (Pi.topologicalSpace.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a)) (ContinuousMultilinearMap.piLinearEquiv._proof_2.{u5, u6} ι' M' _inst_13 _inst_14 _inst_15) (fun (i : ι) => _inst_8 i) (Pi.module.{u5, u6, u4} ι' (fun (i : ι') => M' i) A _inst_2 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_17 i)) (Pi.module.{u5, u6, u3} ι' (fun (i : ι') => M' i) R' _inst_1 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_16 i)) (ContinuousMultilinearMap.piLinearEquiv._proof_3.{u3, u5, u6} R' _inst_1 ι' M' _inst_13 _inst_14 _inst_16 _inst_19) (ContinuousMultilinearMap.piLinearEquiv._proof_4.{u3, u4, u5, u6} R' A _inst_1 _inst_2 ι' M' _inst_13 _inst_16 _inst_17 _inst_18))
+but is expected to have type
+ forall {ι : Type.{u1}} {M₁ : ι -> Type.{u2}} {R' : Type.{u3}} {A : Type.{u4}} [_inst_1 : Semiring.{u3} R'] [_inst_2 : Semiring.{u4} A] [_inst_3 : forall (i : ι), AddCommMonoid.{u2} (M₁ i)] [_inst_5 : forall (i : ι), TopologicalSpace.{u2} (M₁ i)] [_inst_8 : forall (i : ι), Module.{u4, u2} A (M₁ i) _inst_2 (_inst_3 i)] {ι' : Type.{u5}} {M' : ι' -> Type.{u6}} [_inst_13 : forall (i : ι'), AddCommMonoid.{u6} (M' i)] [_inst_14 : forall (i : ι'), TopologicalSpace.{u6} (M' i)] [_inst_15 : forall (i : ι'), ContinuousAdd.{u6} (M' i) (_inst_14 i) (AddZeroClass.toAdd.{u6} (M' i) (AddMonoid.toAddZeroClass.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))))] [_inst_16 : forall (i : ι'), Module.{u3, u6} R' (M' i) _inst_1 (_inst_13 i)] [_inst_17 : forall (i : ι'), Module.{u4, u6} A (M' i) _inst_2 (_inst_13 i)] [_inst_18 : forall (i : ι'), SMulCommClass.{u4, u3, u6} A R' (M' i) (SMulZeroClass.toSMul.{u4, u6} A (M' i) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (SMulWithZero.toSMulZeroClass.{u4, u6} A (M' i) (MonoidWithZero.toZero.{u4} A (Semiring.toMonoidWithZero.{u4} A _inst_2)) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (MulActionWithZero.toSMulWithZero.{u4, u6} A (M' i) (Semiring.toMonoidWithZero.{u4} A _inst_2) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (Module.toMulActionWithZero.{u4, u6} A (M' i) _inst_2 (_inst_13 i) (_inst_17 i))))) (SMulZeroClass.toSMul.{u3, u6} R' (M' i) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (SMulWithZero.toSMulZeroClass.{u3, u6} R' (M' i) (MonoidWithZero.toZero.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (MulActionWithZero.toSMulWithZero.{u3, u6} R' (M' i) (Semiring.toMonoidWithZero.{u3} R' _inst_1) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (Module.toMulActionWithZero.{u3, u6} R' (M' i) _inst_1 (_inst_13 i) (_inst_16 i)))))] [_inst_19 : forall (i : ι'), ContinuousConstSMul.{u3, u6} R' (M' i) (_inst_14 i) (SMulZeroClass.toSMul.{u3, u6} R' (M' i) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (SMulWithZero.toSMulZeroClass.{u3, u6} R' (M' i) (MonoidWithZero.toZero.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (MulActionWithZero.toSMulWithZero.{u3, u6} R' (M' i) (Semiring.toMonoidWithZero.{u3} R' _inst_1) (AddMonoid.toZero.{u6} (M' i) (AddCommMonoid.toAddMonoid.{u6} (M' i) (_inst_13 i))) (Module.toMulActionWithZero.{u3, u6} R' (M' i) _inst_1 (_inst_13 i) (_inst_16 i)))))], LinearEquiv.{u3, u3, max (max (max u1 u2) u5) u6, max (max (max u5 u6) u2) u1} R' R' _inst_1 _inst_1 (RingHom.id.{u3} R' (Semiring.toNonAssocSemiring.{u3} R' _inst_1)) (RingHom.id.{u3} R' (Semiring.toNonAssocSemiring.{u3} R' _inst_1)) (RingHomInvPair.ids.{u3} R' _inst_1) (RingHomInvPair.ids.{u3} R' _inst_1) (forall (i : ι'), ContinuousMultilinearMap.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i)) (ContinuousMultilinearMap.{u4, u1, u2, max u5 u6} A ι M₁ (forall (i : ι'), M' i) _inst_2 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u5, u6} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_13 i)) (fun (i : ι) => _inst_8 i) (Pi.module.{u5, u6, u4} ι' (fun (i : ι') => M' i) A _inst_2 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_17 i)) (fun (i : ι) => _inst_5 i) (Pi.topologicalSpace.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a))) (Pi.addCommMonoid.{u5, max (max u1 u2) u6} ι' (fun (i : ι') => ContinuousMultilinearMap.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i)) (fun (i : ι') => ContinuousMultilinearMap.addCommMonoid.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i) (_inst_15 i))) (ContinuousMultilinearMap.addCommMonoid.{u4, u1, u2, max u5 u6} A ι M₁ (forall (i : ι'), M' i) _inst_2 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u5, u6} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_13 i)) (fun (i : ι) => _inst_8 i) (Pi.module.{u5, u6, u4} ι' (fun (i : ι') => M' i) A _inst_2 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_17 i)) (fun (i : ι) => _inst_5 i) (Pi.topologicalSpace.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a)) (Pi.continuousAdd.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a) (fun (i : ι') => AddSemigroup.toAdd.{u6} ((fun (i : ι') => (fun (i : ι') => (fun (i : ι') => M' i) i) i) i) ((fun (i : ι') => AddMonoid.toAddSemigroup.{u6} ((fun (i : ι') => (fun (i : ι') => M' i) i) i) ((fun (i : ι') => AddCommMonoid.toAddMonoid.{u6} ((fun (i : ι') => M' i) i) ((fun (i : ι') => _inst_13 i) i)) i)) i)) (fun (i : ι') => _inst_15 i))) (Pi.module.{u5, max (max u1 u2) u6, u3} ι' (fun (i : ι') => ContinuousMultilinearMap.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i)) R' _inst_1 (fun (i : ι') => ContinuousMultilinearMap.addCommMonoid.{u4, u1, u2, u6} A ι M₁ (M' i) _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (fun (i : ι) => _inst_5 i) (_inst_14 i) (_inst_15 i)) (fun (i : ι') => ContinuousMultilinearMap.instModuleContinuousMultilinearMapAddCommMonoid.{u1, u2, u6, u3, u4} ι M₁ (M' i) R' A _inst_1 _inst_2 (fun (i : ι) => _inst_3 i) (_inst_13 i) (fun (i : ι) => _inst_5 i) (_inst_14 i) (_inst_15 i) (fun (i : ι) => _inst_8 i) (_inst_17 i) (_inst_16 i) (_inst_19 i) (_inst_18 i))) (ContinuousMultilinearMap.instModuleContinuousMultilinearMapAddCommMonoid.{u1, u2, max u5 u6, u3, u4} ι M₁ (forall (i : ι'), M' i) R' A _inst_1 _inst_2 (fun (i : ι) => _inst_3 i) (Pi.addCommMonoid.{u5, u6} ι' (fun (i : ι') => M' i) (fun (i : ι') => _inst_13 i)) (fun (i : ι) => _inst_5 i) (Pi.topologicalSpace.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a)) (Pi.continuousAdd.{u5, u6} ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a) (fun (i : ι') => AddSemigroup.toAdd.{u6} ((fun (i : ι') => (fun (i : ι') => (fun (i : ι') => M' i) i) i) i) ((fun (i : ι') => AddMonoid.toAddSemigroup.{u6} ((fun (i : ι') => (fun (i : ι') => M' i) i) i) ((fun (i : ι') => AddCommMonoid.toAddMonoid.{u6} ((fun (i : ι') => M' i) i) ((fun (i : ι') => _inst_13 i) i)) i)) i)) (fun (i : ι') => _inst_15 i)) (fun (i : ι) => _inst_8 i) (Pi.module.{u5, u6, u4} ι' (fun (i : ι') => M' i) A _inst_2 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_17 i)) (Pi.module.{u5, u6, u3} ι' (fun (i : ι') => M' i) R' _inst_1 (fun (i : ι') => _inst_13 i) (fun (i : ι') => _inst_16 i)) (instContinuousConstSMulForAllTopologicalSpaceInstSMul.{u3, u5, u6} R' ι' (fun (i : ι') => M' i) (fun (a : ι') => _inst_14 a) (fun (i : ι') => MulAction.toSMul.{u3, u6} R' ((fun (i : ι') => (fun (i : ι') => (fun (i : ι') => M' i) i) i) i) (MonoidWithZero.toMonoid.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)) ((fun (i : ι') => DistribMulAction.toMulAction.{u3, u6} R' ((fun (i : ι') => (fun (i : ι') => M' i) i) i) (MonoidWithZero.toMonoid.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)) ((fun (i : ι') => AddCommMonoid.toAddMonoid.{u6} ((fun (i : ι') => M' i) i) ((fun (i : ι') => _inst_13 i) i)) i) ((fun (i : ι') => Module.toDistribMulAction.{u3, u6} R' ((fun (i : ι') => M' i) i) _inst_1 ((fun (i : ι') => _inst_13 i) i) ((fun (i : ι') => _inst_16 i) i)) i)) i)) (fun (i : ι') => _inst_19 i)) (Pi.smulCommClass.{u5, u6, u4, u3} ι' (fun (i : ι') => M' i) A R' (fun (i : ι') => MulAction.toSMul.{u4, u6} A ((fun (i : ι') => (fun (i : ι') => (fun (i : ι') => M' i) i) i) i) (MonoidWithZero.toMonoid.{u4} A (Semiring.toMonoidWithZero.{u4} A _inst_2)) ((fun (i : ι') => DistribMulAction.toMulAction.{u4, u6} A ((fun (i : ι') => (fun (i : ι') => M' i) i) i) (MonoidWithZero.toMonoid.{u4} A (Semiring.toMonoidWithZero.{u4} A _inst_2)) ((fun (i : ι') => AddCommMonoid.toAddMonoid.{u6} ((fun (i : ι') => M' i) i) ((fun (i : ι') => _inst_13 i) i)) i) ((fun (i : ι') => Module.toDistribMulAction.{u4, u6} A ((fun (i : ι') => M' i) i) _inst_2 ((fun (i : ι') => _inst_13 i) i) ((fun (i : ι') => _inst_17 i) i)) i)) i)) (fun (i : ι') => MulAction.toSMul.{u3, u6} R' ((fun (i : ι') => (fun (i : ι') => (fun (i : ι') => M' i) i) i) i) (MonoidWithZero.toMonoid.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)) ((fun (i : ι') => DistribMulAction.toMulAction.{u3, u6} R' ((fun (i : ι') => (fun (i : ι') => M' i) i) i) (MonoidWithZero.toMonoid.{u3} R' (Semiring.toMonoidWithZero.{u3} R' _inst_1)) ((fun (i : ι') => AddCommMonoid.toAddMonoid.{u6} ((fun (i : ι') => M' i) i) ((fun (i : ι') => _inst_13 i) i)) i) ((fun (i : ι') => Module.toDistribMulAction.{u3, u6} R' ((fun (i : ι') => M' i) i) _inst_1 ((fun (i : ι') => _inst_13 i) i) ((fun (i : ι') => _inst_16 i) i)) i)) i)) (fun (i : ι') => _inst_18 i)))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.pi_linear_equiv ContinuousMultilinearMap.piLinearEquivₓ'. -/
/-- `continuous_multilinear_map.pi` as a `linear_equiv`. -/
@[simps (config := { simpRhs := true })]
def piLinearEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
@@ -529,6 +743,12 @@ section CommAlgebra
variable (R ι) (A : Type _) [Fintype ι] [CommSemiring R] [CommSemiring A] [Algebra R A]
[TopologicalSpace A] [ContinuousMul A]
+/- warning: continuous_multilinear_map.mk_pi_algebra -> ContinuousMultilinearMap.mkPiAlgebra is a dubious translation:
+lean 3 declaration is
+ forall (R : Type.{u1}) (ι : Type.{u2}) (A : Type.{u3}) [_inst_1 : Fintype.{u2} ι] [_inst_2 : CommSemiring.{u1} R] [_inst_3 : CommSemiring.{u3} A] [_inst_4 : Algebra.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3)] [_inst_5 : TopologicalSpace.{u3} A] [_inst_6 : ContinuousMul.{u3} A _inst_5 (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))))], ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5
+but is expected to have type
+ forall (R : Type.{u1}) (ι : Type.{u2}) (A : Type.{u3}) [_inst_1 : Fintype.{u2} ι] [_inst_2 : CommSemiring.{u1} R] [_inst_3 : CommSemiring.{u3} A] [_inst_4 : Algebra.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3)] [_inst_5 : TopologicalSpace.{u3} A] [_inst_6 : ContinuousMul.{u3} A _inst_5 (NonUnitalNonAssocSemiring.toMul.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3))))], ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (Semiring.toNonAssocSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u3} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra ContinuousMultilinearMap.mkPiAlgebraₓ'. -/
/-- The continuous multilinear map on `A^ι`, where `A` is a normed commutative algebra
over `𝕜`, associating to `m` the product of all the `m i`.
@@ -539,6 +759,12 @@ protected def mkPiAlgebra : ContinuousMultilinearMap R (fun i : ι => A) A
toMultilinearMap := MultilinearMap.mkPiAlgebra R ι A
#align continuous_multilinear_map.mk_pi_algebra ContinuousMultilinearMap.mkPiAlgebra
+/- warning: continuous_multilinear_map.mk_pi_algebra_apply -> ContinuousMultilinearMap.mkPiAlgebra_apply is a dubious translation:
+lean 3 declaration is
+ forall (R : Type.{u1}) (ι : Type.{u2}) (A : Type.{u3}) [_inst_1 : Fintype.{u2} ι] [_inst_2 : CommSemiring.{u1} R] [_inst_3 : CommSemiring.{u3} A] [_inst_4 : Algebra.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3)] [_inst_5 : TopologicalSpace.{u3} A] [_inst_6 : ContinuousMul.{u3} A _inst_5 (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))))] (m : ι -> A), Eq.{succ u3} A (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5) (fun (_x : ContinuousMultilinearMap.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5) => (ι -> A) -> A) (ContinuousMultilinearMap.hasCoeToFun.{u1, u2, u3, u3} R ι (fun (i : ι) => A) A (CommSemiring.toSemiring.{u1} R _inst_2) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A _inst_3)))) (fun (i : ι) => Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (Algebra.toModule.{u1, u3} R A _inst_2 (CommSemiring.toSemiring.{u3} A _inst_3) _inst_4) (fun (i : ι) => _inst_5) _inst_5) (ContinuousMultilinearMap.mkPiAlgebra.{u1, u2, u3} R ι A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) m) (Finset.prod.{u3, u2} A ι (CommSemiring.toCommMonoid.{u3} A _inst_3) (Finset.univ.{u2} ι _inst_1) (fun (i : ι) => m i))
+but is expected to have type
+ forall (R : Type.{u2}) (ι : Type.{u3}) (A : Type.{u1}) [_inst_1 : Fintype.{u3} ι] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : CommSemiring.{u1} A] [_inst_4 : Algebra.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3)] [_inst_5 : TopologicalSpace.{u1} A] [_inst_6 : ContinuousMul.{u1} A _inst_5 (NonUnitalNonAssocSemiring.toMul.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3))))] (m : ι -> A), Eq.{succ u1} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) => A) m) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), succ u1} (ContinuousMultilinearMap.{u2, u3, u1, u1} R ι (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) A (CommSemiring.toSemiring.{u2} R _inst_2) (fun (i : ι) => (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3)))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3)))) (fun (i : ι) => (fun (i : ι) => Algebra.toModule.{u2, u1} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3) _inst_4) i) (Algebra.toModule.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3) _inst_4) (fun (i : ι) => (fun (i : ι) => _inst_5) i) _inst_5) (forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (fun (_x : forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) => A) _x) (ContinuousMapClass.toFunLike.{max u3 u1, max u3 u1, u1} (ContinuousMultilinearMap.{u2, u3, u1, u1} R ι (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) A (CommSemiring.toSemiring.{u2} R _inst_2) (fun (i : ι) => (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3)))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3)))) (fun (i : ι) => (fun (i : ι) => Algebra.toModule.{u2, u1} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3) _inst_4) i) (Algebra.toModule.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3) _inst_4) (fun (i : ι) => (fun (i : ι) => _inst_5) i) _inst_5) (forall (i : ι), (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) A (Pi.topologicalSpace.{u3, u1} ι (fun (i : ι) => (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (fun (a : ι) => (fun (i : ι) => _inst_5) a)) _inst_5 (ContinuousMultilinearMap.continuousMapClass.{u2, u3, u1, u1} R ι (fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) A (CommSemiring.toSemiring.{u2} R _inst_2) (fun (i : ι) => (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3)))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A _inst_3)))) (fun (i : ι) => (fun (i : ι) => Algebra.toModule.{u2, u1} R ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_2 (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22065 : ι) => A) i) _inst_3) _inst_4) i) (Algebra.toModule.{u2, u1} R A _inst_2 (CommSemiring.toSemiring.{u1} A _inst_3) _inst_4) (fun (i : ι) => (fun (i : ι) => _inst_5) i) _inst_5)) (ContinuousMultilinearMap.mkPiAlgebra.{u2, u3, u1} R ι A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) m) (Finset.prod.{u1, u3} A ι (CommSemiring.toCommMonoid.{u1} A _inst_3) (Finset.univ.{u3} ι _inst_1) (fun (i : ι) => m i))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra_apply ContinuousMultilinearMap.mkPiAlgebra_applyₓ'. -/
@[simp]
theorem mkPiAlgebra_apply (m : ι → A) : ContinuousMultilinearMap.mkPiAlgebra R ι A m = ∏ i, m i :=
rfl
@@ -551,6 +777,12 @@ section Algebra
variable (R n) (A : Type _) [CommSemiring R] [Semiring A] [Algebra R A] [TopologicalSpace A]
[ContinuousMul A]
+/- warning: continuous_multilinear_map.mk_pi_algebra_fin -> ContinuousMultilinearMap.mkPiAlgebraFin is a dubious translation:
+lean 3 declaration is
+ forall (R : Type.{u1}) (n : Nat) (A : Type.{u2}) [_inst_1 : CommSemiring.{u1} R] [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u2} A] [_inst_5 : ContinuousMul.{u2} A _inst_4 (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))))], ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4
+but is expected to have type
+ forall (R : Type.{u1}) (n : Nat) (A : Type.{u2}) [_inst_1 : CommSemiring.{u1} R] [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u2} A] [_inst_5 : ContinuousMul.{u2} A _inst_4 (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2)))], ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u2} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra_fin ContinuousMultilinearMap.mkPiAlgebraFinₓ'. -/
/-- The continuous multilinear map on `A^n`, where `A` is a normed algebra over `𝕜`, associating to
`m` the product of all the `m i`.
@@ -566,6 +798,12 @@ protected def mkPiAlgebraFin : A[×n]→L[R] A
variable {R n A}
+/- warning: continuous_multilinear_map.mk_pi_algebra_fin_apply -> ContinuousMultilinearMap.mkPiAlgebraFin_apply is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {n : Nat} {A : Type.{u2}} [_inst_1 : CommSemiring.{u1} R] [_inst_2 : Semiring.{u2} A] [_inst_3 : Algebra.{u1, u2} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u2} A] [_inst_5 : ContinuousMul.{u2} A _inst_4 (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))))] (m : (Fin n) -> A), Eq.{succ u2} A (coeFn.{succ u2, succ u2} (ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4) (fun (_x : ContinuousMultilinearMap.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4) => ((Fin n) -> A) -> A) (ContinuousMultilinearMap.hasCoeToFun.{u1, 0, u2, u2} R (Fin n) (fun (i : Fin n) => A) A (CommSemiring.toSemiring.{u1} R _inst_1) (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2))) (fun (i : Fin n) => Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (Algebra.toModule.{u1, u2} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => _inst_4) _inst_4) (ContinuousMultilinearMap.mkPiAlgebraFin.{u1, u2} R n A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5) m) (List.prod.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2)))) (AddMonoidWithOne.toOne.{u2} A (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} A (NonAssocSemiring.toAddCommMonoidWithOne.{u2} A (Semiring.toNonAssocSemiring.{u2} A _inst_2)))) (List.ofFn.{u2} A n m))
+but is expected to have type
+ forall {R : Type.{u2}} {n : Nat} {A : Type.{u1}} [_inst_1 : CommSemiring.{u2} R] [_inst_2 : Semiring.{u1} A] [_inst_3 : Algebra.{u2, u1} R A _inst_1 _inst_2] [_inst_4 : TopologicalSpace.{u1} A] [_inst_5 : ContinuousMul.{u1} A _inst_4 (NonUnitalNonAssocSemiring.toMul.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2)))] (m : (Fin n) -> A), Eq.{succ u1} ((fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) => A) m) (FunLike.coe.{succ u1, succ u1, succ u1} (ContinuousMultilinearMap.{u2, 0, u1, u1} R (Fin n) (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) A (CommSemiring.toSemiring.{u2} R _inst_1) (fun (i : Fin n) => (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_2))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (fun (i : Fin n) => (fun (i : Fin n) => Algebra.toModule.{u2, u1} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) i) (Algebra.toModule.{u2, u1} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => (fun (i : Fin n) => _inst_4) i) _inst_4) (forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (fun (_x : forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) => (fun (x._@.Mathlib.Topology.ContinuousFunction.Basic._hyg.699 : forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) => A) _x) (ContinuousMapClass.toFunLike.{u1, u1, u1} (ContinuousMultilinearMap.{u2, 0, u1, u1} R (Fin n) (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) A (CommSemiring.toSemiring.{u2} R _inst_1) (fun (i : Fin n) => (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_2))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (fun (i : Fin n) => (fun (i : Fin n) => Algebra.toModule.{u2, u1} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) i) (Algebra.toModule.{u2, u1} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => (fun (i : Fin n) => _inst_4) i) _inst_4) (forall (i : Fin n), (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) A (Pi.topologicalSpace.{0, u1} (Fin n) (fun (i : Fin n) => (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (fun (a : Fin n) => (fun (i : Fin n) => _inst_4) a)) _inst_4 (ContinuousMultilinearMap.continuousMapClass.{u2, 0, u1, u1} R (Fin n) (fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) A (CommSemiring.toSemiring.{u2} R _inst_1) (fun (i : Fin n) => (fun (i : Fin n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) (Semiring.toNonAssocSemiring.{u1} ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_2))) i) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (fun (i : Fin n) => (fun (i : Fin n) => Algebra.toModule.{u2, u1} R ((fun (i._@.Mathlib.Topology.Algebra.Module.Multilinear._hyg.22234 : Fin n) => A) i) _inst_1 _inst_2 _inst_3) i) (Algebra.toModule.{u2, u1} R A _inst_1 _inst_2 _inst_3) (fun (i : Fin n) => (fun (i : Fin n) => _inst_4) i) _inst_4)) (ContinuousMultilinearMap.mkPiAlgebraFin.{u2, u1} R n A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5) m) (List.prod.{u1} A (NonUnitalNonAssocSemiring.toMul.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A _inst_2))) (Semiring.toOne.{u1} A _inst_2) (List.ofFn.{u1} A n m))
+Case conversion may be inaccurate. Consider using '#align continuous_multilinear_map.mk_pi_algebra_fin_apply ContinuousMultilinearMap.mkPiAlgebraFin_applyₓ'. -/
@[simp]
theorem mkPiAlgebraFin_apply (m : Fin n → A) :
ContinuousMultilinearMap.mkPiAlgebraFin R n A m = (List.ofFn m).Prod :=
@@ -580,6 +818,7 @@ variable [CommSemiring R] [∀ i, AddCommMonoid (M₁ i)] [AddCommMonoid M₂] [
[Module R M₂] [TopologicalSpace R] [∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂]
[ContinuousSMul R M₂] (f : ContinuousMultilinearMap R M₁ R) (z : M₂)
+#print ContinuousMultilinearMap.smulRight /-
/-- Given a continuous `R`-multilinear map `f` taking values in `R`, `f.smul_right z` is the
continuous multilinear map sending `m` to `f m • z`. -/
@[simps toMultilinearMap apply]
@@ -588,6 +827,7 @@ def smulRight : ContinuousMultilinearMap R M₁ M₂
toMultilinearMap := f.toMultilinearMap.smul_right z
cont := f.cont.smul continuous_const
#align continuous_multilinear_map.smul_right ContinuousMultilinearMap.smulRight
+-/
end SmulRight
mathlib commit https://github.com/leanprover-community/mathlib/commit/284fdd2962e67d2932fa3a79ce19fcf92d38e228
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Sébastien Gouëzel
! This file was ported from Lean 3 source module topology.algebra.module.multilinear
-! leanprover-community/mathlib commit ce11c3c2a285bbe6937e26d9792fda4e51f3fe1a
+! leanprover-community/mathlib commit 284fdd2962e67d2932fa3a79ce19fcf92d38e228
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -70,8 +70,22 @@ variable [Semiring R] [∀ i, AddCommMonoid (M i)] [∀ i, AddCommMonoid (M₁ i
[∀ i, TopologicalSpace (M₁' i)] [TopologicalSpace M₂] [TopologicalSpace M₃] [TopologicalSpace M₄]
(f f' : ContinuousMultilinearMap R M₁ M₂)
+theorem toMultilinearMap_injective :
+ Function.Injective
+ (ContinuousMultilinearMap.toMultilinearMap :
+ ContinuousMultilinearMap R M₁ M₂ → MultilinearMap R M₁ M₂)
+ | ⟨f, hf⟩, ⟨g, hg⟩, rfl => rfl
+#align continuous_multilinear_map.to_multilinear_map_injective ContinuousMultilinearMap.toMultilinearMap_injective
+
+instance continuousMapClass : ContinuousMapClass (ContinuousMultilinearMap R M₁ M₂) (∀ i, M₁ i) M₂
+ where
+ coe f := f.toFun
+ coe_injective' f g h := toMultilinearMap_injective <| MultilinearMap.coe_injective h
+ map_continuous := ContinuousMultilinearMap.cont
+#align continuous_multilinear_map.continuous_map_class ContinuousMultilinearMap.continuousMapClass
+
instance : CoeFun (ContinuousMultilinearMap R M₁ M₂) fun _ => (∀ i, M₁ i) → M₂ :=
- ⟨fun f => f.toFun⟩
+ ⟨fun f => f⟩
/-- See Note [custom simps projection]. We need to specify this projection explicitly in this case,
because it is a composition of multiple projections. -/
@@ -92,20 +106,13 @@ theorem coe_coe : (f.toMultilinearMap : (∀ i, M₁ i) → M₂) = f :=
rfl
#align continuous_multilinear_map.coe_coe ContinuousMultilinearMap.coe_coe
-theorem toMultilinearMap_inj :
- Function.Injective
- (ContinuousMultilinearMap.toMultilinearMap :
- ContinuousMultilinearMap R M₁ M₂ → MultilinearMap R M₁ M₂)
- | ⟨f, hf⟩, ⟨g, hg⟩, rfl => rfl
-#align continuous_multilinear_map.to_multilinear_map_inj ContinuousMultilinearMap.toMultilinearMap_inj
-
@[ext]
theorem ext {f f' : ContinuousMultilinearMap R M₁ M₂} (H : ∀ x, f x = f' x) : f = f' :=
- toMultilinearMap_inj <| MultilinearMap.ext H
+ FunLike.ext _ _ H
#align continuous_multilinear_map.ext ContinuousMultilinearMap.ext
theorem ext_iff {f f' : ContinuousMultilinearMap R M₁ M₂} : f = f' ↔ ∀ x, f x = f' x := by
- rw [← to_multilinear_map_inj.eq_iff, MultilinearMap.ext_iff] <;> rfl
+ rw [← to_multilinear_map_injective.eq_iff, MultilinearMap.ext_iff] <;> rfl
#align continuous_multilinear_map.ext_iff ContinuousMultilinearMap.ext_iff
@[simp]
@@ -178,7 +185,7 @@ instance [DistribMulAction R'ᵐᵒᵖ M₂] [IsCentralScalar R' M₂] :
⟨fun c₁ f => ext fun x => op_smul_eq_smul _ _⟩
instance : MulAction R' (ContinuousMultilinearMap A M₁ M₂) :=
- Function.Injective.mulAction toMultilinearMap toMultilinearMap_inj fun _ _ => rfl
+ Function.Injective.mulAction toMultilinearMap toMultilinearMap_injective fun _ _ => rfl
end SMul
@@ -201,7 +208,7 @@ theorem toMultilinearMap_add (f g : ContinuousMultilinearMap R M₁ M₂) :
#align continuous_multilinear_map.to_multilinear_map_add ContinuousMultilinearMap.toMultilinearMap_add
instance addCommMonoid : AddCommMonoid (ContinuousMultilinearMap R M₁ M₂) :=
- toMultilinearMap_inj.AddCommMonoid _ rfl (fun _ _ => rfl) fun _ _ => rfl
+ toMultilinearMap_injective.AddCommMonoid _ rfl (fun _ _ => rfl) fun _ _ => rfl
#align continuous_multilinear_map.add_comm_monoid ContinuousMultilinearMap.addCommMonoid
/-- Evaluation of a `continuous_multilinear_map` at a vector as an `add_monoid_hom`. -/
@@ -441,7 +448,7 @@ theorem sub_apply (m : ∀ i, M₁ i) : (f - f') m = f m - f' m :=
#align continuous_multilinear_map.sub_apply ContinuousMultilinearMap.sub_apply
instance : AddCommGroup (ContinuousMultilinearMap R M₁ M₂) :=
- toMultilinearMap_inj.AddCommGroup _ rfl (fun _ _ => rfl) (fun _ => rfl) (fun _ _ => rfl)
+ toMultilinearMap_injective.AddCommGroup _ rfl (fun _ _ => rfl) (fun _ => rfl) (fun _ _ => rfl)
(fun _ _ => rfl) fun _ _ => rfl
end TopologicalAddGroup
@@ -477,8 +484,8 @@ variable {R' R'' A : Type _} [Monoid R'] [Monoid R''] [Semiring A] [∀ i, AddCo
instance [ContinuousAdd M₂] : DistribMulAction R' (ContinuousMultilinearMap A M₁ M₂) :=
Function.Injective.distribMulAction
- ⟨toMultilinearMap, toMultilinearMap_zero, toMultilinearMap_add⟩ toMultilinearMap_inj fun _ _ =>
- rfl
+ ⟨toMultilinearMap, toMultilinearMap_zero, toMultilinearMap_add⟩ toMultilinearMap_injective
+ fun _ _ => rfl
end DistribMulAction
@@ -492,7 +499,7 @@ variable {R' A : Type _} [Semiring R'] [Semiring A] [∀ i, AddCommMonoid (M₁
pointwise addition and scalar multiplication. -/
instance : Module R' (ContinuousMultilinearMap A M₁ M₂) :=
Function.Injective.module _ ⟨toMultilinearMap, toMultilinearMap_zero, toMultilinearMap_add⟩
- toMultilinearMap_inj fun _ _ => rfl
+ toMultilinearMap_injective fun _ _ => rfl
/-- Linear map version of the map `to_multilinear_map` associating to a continuous multilinear map
the corresponding multilinear map. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce11c3c2a285bbe6937e26d9792fda4e51f3fe1a
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Sébastien Gouëzel
! This file was ported from Lean 3 source module topology.algebra.module.multilinear
-! leanprover-community/mathlib commit 4601791ea62fea875b488dafc4e6dede19e8363f
+! leanprover-community/mathlib commit ce11c3c2a285bbe6937e26d9792fda4e51f3fe1a
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -44,16 +44,15 @@ open BigOperators
universe u v w w₁ w₁' w₂ w₃ w₄
variable {R : Type u} {ι : Type v} {n : ℕ} {M : Fin n.succ → Type w} {M₁ : ι → Type w₁}
- {M₁' : ι → Type w₁'} {M₂ : Type w₂} {M₃ : Type w₃} {M₄ : Type w₄} [DecidableEq ι]
+ {M₁' : ι → Type w₁'} {M₂ : Type w₂} {M₃ : Type w₃} {M₄ : Type w₄}
/-- Continuous multilinear maps over the ring `R`, from `Πi, M₁ i` to `M₂` where `M₁ i` and `M₂`
are modules over `R` with a topological structure. In applications, there will be compatibility
conditions between the algebraic and the topological structures, but this is not needed for the
definition. -/
structure ContinuousMultilinearMap (R : Type u) {ι : Type v} (M₁ : ι → Type w₁) (M₂ : Type w₂)
- [DecidableEq ι] [Semiring R] [∀ i, AddCommMonoid (M₁ i)] [AddCommMonoid M₂] [∀ i, Module R (M₁ i)]
- [Module R M₂] [∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂] extends
- MultilinearMap R M₁ M₂ where
+ [Semiring R] [∀ i, AddCommMonoid (M₁ i)] [AddCommMonoid M₂] [∀ i, Module R (M₁ i)] [Module R M₂]
+ [∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂] extends MultilinearMap R M₁ M₂ where
cont : Continuous to_fun
#align continuous_multilinear_map ContinuousMultilinearMap
@@ -110,13 +109,13 @@ theorem ext_iff {f f' : ContinuousMultilinearMap R M₁ M₂} : f = f' ↔ ∀ x
#align continuous_multilinear_map.ext_iff ContinuousMultilinearMap.ext_iff
@[simp]
-theorem map_add (m : ∀ i, M₁ i) (i : ι) (x y : M₁ i) :
+theorem map_add [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (x y : M₁ i) :
f (update m i (x + y)) = f (update m i x) + f (update m i y) :=
f.map_add' m i x y
#align continuous_multilinear_map.map_add ContinuousMultilinearMap.map_add
@[simp]
-theorem map_smul (m : ∀ i, M₁ i) (i : ι) (c : R) (x : M₁ i) :
+theorem map_smul [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (c : R) (x : M₁ i) :
f (update m i (c • x)) = c • f (update m i x) :=
f.map_smul' m i c x
#align continuous_multilinear_map.map_smul ContinuousMultilinearMap.map_smul
@@ -221,7 +220,7 @@ end ContinuousAdd
/-- If `f` is a continuous multilinear map, then `f.to_continuous_linear_map m i` is the continuous
linear map obtained by fixing all coordinates but `i` equal to those of `m`, and varying the
`i`-th coordinate. -/
-def toContinuousLinearMap (m : ∀ i, M₁ i) (i : ι) : M₁ i →L[R] M₂ :=
+def toContinuousLinearMap [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) : M₁ i →L[R] M₂ :=
{ f.toMultilinearMap.toLinearMap m i with
cont := f.cont.comp (continuous_const.update i continuous_id) }
#align continuous_multilinear_map.to_continuous_linear_map ContinuousMultilinearMap.toContinuousLinearMap
@@ -351,14 +350,14 @@ theorem cons_smul (f : ContinuousMultilinearMap R M M₂) (m : ∀ i : Fin n, M
f.toMultilinearMap.cons_smul m c x
#align continuous_multilinear_map.cons_smul ContinuousMultilinearMap.cons_smul
-theorem map_piecewise_add (m m' : ∀ i, M₁ i) (t : Finset ι) :
+theorem map_piecewise_add [DecidableEq ι] (m m' : ∀ i, M₁ i) (t : Finset ι) :
f (t.piecewise (m + m') m') = ∑ s in t.powerset, f (s.piecewise m m') :=
f.toMultilinearMap.map_piecewise_add _ _ _
#align continuous_multilinear_map.map_piecewise_add ContinuousMultilinearMap.map_piecewise_add
/-- Additivity of a continuous multilinear map along all coordinates at the same time,
writing `f (m + m')` as the sum of `f (s.piecewise m m')` over all sets `s`. -/
-theorem map_add_univ [Fintype ι] (m m' : ∀ i, M₁ i) :
+theorem map_add_univ [DecidableEq ι] [Fintype ι] (m m' : ∀ i, M₁ i) :
f (m + m') = ∑ s : Finset ι, f (s.piecewise m m') :=
f.toMultilinearMap.map_add_univ _ _
#align continuous_multilinear_map.map_add_univ ContinuousMultilinearMap.map_add_univ
@@ -373,14 +372,15 @@ variable {α : ι → Type _} [Fintype ι] (g : ∀ i, α i → M₁ i) (A : ∀
sum of `f (g₁ (r 1), ..., gₙ (r n))` where `r` ranges over all functions with `r 1 ∈ A₁`, ...,
`r n ∈ Aₙ`. This follows from multilinearity by expanding successively with respect to each
coordinate. -/
-theorem map_sum_finset : (f fun i => ∑ j in A i, g i j) = ∑ r in piFinset A, f fun i => g i (r i) :=
+theorem map_sum_finset [DecidableEq ι] :
+ (f fun i => ∑ j in A i, g i j) = ∑ r in piFinset A, f fun i => g i (r i) :=
f.toMultilinearMap.map_sum_finset _ _
#align continuous_multilinear_map.map_sum_finset ContinuousMultilinearMap.map_sum_finset
/-- If `f` is continuous multilinear, then `f (Σ_{j₁} g₁ j₁, ..., Σ_{jₙ} gₙ jₙ)` is the sum of
`f (g₁ (r 1), ..., gₙ (r n))` where `r` ranges over all functions `r`. This follows from
multilinearity by expanding successively with respect to each coordinate. -/
-theorem map_sum [∀ i, Fintype (α i)] :
+theorem map_sum [DecidableEq ι] [∀ i, Fintype (α i)] :
(f fun i => ∑ j, g i j) = ∑ r : ∀ i, α i, f fun i => g i (r i) :=
f.toMultilinearMap.map_sum _
#align continuous_multilinear_map.map_sum ContinuousMultilinearMap.map_sum
@@ -415,7 +415,7 @@ variable [Ring R] [∀ i, AddCommGroup (M₁ i)] [AddCommGroup M₂] [∀ i, Mod
[∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂] (f f' : ContinuousMultilinearMap R M₁ M₂)
@[simp]
-theorem map_sub (m : ∀ i, M₁ i) (i : ι) (x y : M₁ i) :
+theorem map_sub [DecidableEq ι] (m : ∀ i, M₁ i) (i : ι) (x y : M₁ i) :
f (update m i (x - y)) = f (update m i x) - f (update m i y) :=
f.toMultilinearMap.map_sub _ _ _ _
#align continuous_multilinear_map.map_sub ContinuousMultilinearMap.map_sub
@@ -454,7 +454,7 @@ variable [CommSemiring R] [∀ i, AddCommMonoid (M₁ i)] [AddCommMonoid M₂] [
[Module R M₂] [∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂]
(f : ContinuousMultilinearMap R M₁ M₂)
-theorem map_piecewise_smul (c : ι → R) (m : ∀ i, M₁ i) (s : Finset ι) :
+theorem map_piecewise_smul [DecidableEq ι] (c : ι → R) (m : ∀ i, M₁ i) (s : Finset ι) :
f (s.piecewise (fun i => c i • m i) m) = (∏ i in s, c i) • f m :=
f.toMultilinearMap.map_piecewise_smul _ _ _
#align continuous_multilinear_map.map_piecewise_smul ContinuousMultilinearMap.map_piecewise_smul
mathlib commit https://github.com/leanprover-community/mathlib/commit/dd6388c44e6f6b4547070b887c5905d5cfe6c9f8
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Sébastien Gouëzel
! This file was ported from Lean 3 source module topology.algebra.module.multilinear
-! leanprover-community/mathlib commit 44b58b42794e5abe2bf86397c38e26b587e07e59
+! leanprover-community/mathlib commit 4601791ea62fea875b488dafc4e6dede19e8363f
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
ContinuousMultilinearLinearMap.mkPiField
to mkPiRing
(#9910)
This matches the generality of the non-continuous versions.
The norm_smulRight
lemma is the only new result.
@@ -650,4 +650,46 @@ def smulRight : ContinuousMultilinearMap R M₁ M₂ where
end SMulRight
+section CommRing
+variable {M : Type*}
+variable [Fintype ι] [CommRing R] [AddCommMonoid M] [Module R M]
+variable [TopologicalSpace R] [TopologicalSpace M]
+variable [ContinuousMul R] [ContinuousSMul R M]
+
+variable (R ι) in
+/-- The canonical continuous multilinear map on `R^ι`, associating to `m` the product of all the
+`m i` (multiplied by a fixed reference element `z` in the target module) -/
+protected def mkPiRing (z : M) : ContinuousMultilinearMap R (fun _ : ι => R) M :=
+ (ContinuousMultilinearMap.mkPiAlgebra R ι R).smulRight z
+#align continuous_multilinear_map.mk_pi_field ContinuousMultilinearMap.mkPiRing
+
+
+@[simp]
+theorem mkPiRing_apply (z : M) (m : ι → R) :
+ (ContinuousMultilinearMap.mkPiRing R ι z : (ι → R) → M) m = (∏ i, m i) • z :=
+ rfl
+#align continuous_multilinear_map.mk_pi_field_apply ContinuousMultilinearMap.mkPiRing_apply
+
+theorem mkPiRing_apply_one_eq_self (f : ContinuousMultilinearMap R (fun _ : ι => R) M) :
+ ContinuousMultilinearMap.mkPiRing R ι (f fun _ => 1) = f :=
+ toMultilinearMap_injective f.toMultilinearMap.mkPiRing_apply_one_eq_self
+#align continuous_multilinear_map.mk_pi_field_apply_one_eq_self ContinuousMultilinearMap.mkPiRing_apply_one_eq_self
+
+theorem mkPiRing_eq_iff {z₁ z₂ : M} :
+ ContinuousMultilinearMap.mkPiRing R ι z₁ = ContinuousMultilinearMap.mkPiRing R ι z₂ ↔
+ z₁ = z₂ := by
+ rw [← toMultilinearMap_injective.eq_iff]
+ exact MultilinearMap.mkPiRing_eq_iff
+#align continuous_multilinear_map.mk_pi_field_eq_iff ContinuousMultilinearMap.mkPiRing_eq_iff
+
+theorem mkPiRing_zero : ContinuousMultilinearMap.mkPiRing R ι (0 : M) = 0 := by
+ ext; rw [mkPiRing_apply, smul_zero, ContinuousMultilinearMap.zero_apply]
+#align continuous_multilinear_map.mk_pi_field_zero ContinuousMultilinearMap.mkPiRing_zero
+
+theorem mkPiRing_eq_zero_iff (z : M) : ContinuousMultilinearMap.mkPiRing R ι z = 0 ↔ z = 0 := by
+ rw [← mkPiRing_zero, mkPiRing_eq_iff]
+#align continuous_multilinear_map.mk_pi_field_eq_zero_iff ContinuousMultilinearMap.mkPiRing_eq_zero_iff
+
+end CommRing
+
end ContinuousMultilinearMap
@@ -381,6 +381,23 @@ def domDomCongrEquiv {ι' : Type*} (e : ι ≃ ι') :
#align continuous_multilinear_map.dom_dom_congr_equiv_apply ContinuousMultilinearMap.domDomCongrEquiv_apply
#align continuous_multilinear_map.dom_dom_congr_equiv_symm_apply ContinuousMultilinearMap.domDomCongrEquiv_symm_apply
+section linearDeriv
+open scoped BigOperators
+variable [ContinuousAdd M₂] [DecidableEq ι] [Fintype ι] (x y : ∀ i, M₁ i)
+
+/-- The derivative of a continuous multilinear map, as a continuous linear map
+from `∀ i, M₁ i` to `M₂`; see `ContinuousMultilinearMap.hasFDerivAt`. -/
+def linearDeriv : (∀ i, M₁ i) →L[R] M₂ := ∑ i : ι, (f.toContinuousLinearMap x i).comp (.proj i)
+
+@[simp]
+lemma linearDeriv_apply : f.linearDeriv x y = ∑ i, f (Function.update x i (y i)) := by
+ unfold linearDeriv toContinuousLinearMap
+ simp only [ContinuousLinearMap.coe_sum', ContinuousLinearMap.coe_comp',
+ ContinuousLinearMap.coe_mk', LinearMap.coe_mk, LinearMap.coe_toAddHom, Finset.sum_apply]
+ rfl
+
+end linearDeriv
+
/-- In the specific case of continuous multilinear maps on spaces indexed by `Fin (n+1)`, where one
can build an element of `(i : Fin (n+1)) → M i` using `cons`, one can express directly the
additivity of a multilinear map along the first variable. -/
The FunLike hierarchy is very big and gets scanned through each time we need a coercion (via the CoeFun
instance). It looks like unbundled inheritance suits Lean 4 better here. The only class that still extends FunLike
is EquivLike
, since that has a custom coe_injective'
field that is easier to implement. All other classes should take FunLike
or EquivLike
as a parameter.
Previously, morphism classes would be Type
-valued and extend FunLike
:
/-- `MyHomClass F A B` states that `F` is a type of `MyClass.op`-preserving morphisms.
You should extend this class when you extend `MyHom`. -/
class MyHomClass (F : Type*) (A B : outParam <| Type*) [MyClass A] [MyClass B]
extends FunLike F A B :=
(map_op : ∀ (f : F) (x y : A), f (MyClass.op x y) = MyClass.op (f x) (f y))
After this PR, they should be Prop
-valued and take FunLike
as a parameter:
/-- `MyHomClass F A B` states that `F` is a type of `MyClass.op`-preserving morphisms.
You should extend this class when you extend `MyHom`. -/
class MyHomClass (F : Type*) (A B : outParam <| Type*) [MyClass A] [MyClass B]
[FunLike F A B] : Prop :=
(map_op : ∀ (f : F) (x y : A), f (MyClass.op x y) = MyClass.op (f x) (f y))
(Note that A B
stay marked as outParam
even though they are not purely required to be so due to the FunLike
parameter already filling them in. This is required to see through type synonyms, which is important in the category theory library. Also, I think keeping them as outParam
is slightly faster.)
Similarly, MyEquivClass
should take EquivLike
as a parameter.
As a result, every mention of [MyHomClass F A B]
should become [FunLike F A B] [MyHomClass F A B]
.
While overall this gives some great speedups, there are some cases that are noticeably slower. In particular, a failing application of a lemma such as map_mul
is more expensive. This is due to suboptimal processing of arguments. For example:
variable [FunLike F M N] [Mul M] [Mul N] (f : F) (x : M) (y : M)
theorem map_mul [MulHomClass F M N] : f (x * y) = f x * f y
example [AddHomClass F A B] : f (x * y) = f x * f y := map_mul f _ _
Before this PR, applying map_mul f
gives the goals [Mul ?M] [Mul ?N] [MulHomClass F ?M ?N]
. Since M
and N
are out_param
s, [MulHomClass F ?M ?N]
is synthesized first, supplies values for ?M
and ?N
and then the Mul M
and Mul N
instances can be found.
After this PR, the goals become [FunLike F ?M ?N] [Mul ?M] [Mul ?N] [MulHomClass F ?M ?N]
. Now [FunLike F ?M ?N]
is synthesized first, supplies values for ?M
and ?N
and then the Mul M
and Mul N
instances can be found, before trying MulHomClass F M N
which fails. Since the Mul
hierarchy is very big, this can be slow to fail, especially when there is no such Mul
instance.
A long-term but harder to achieve solution would be to specify the order in which instance goals get solved. For example, we'd like to change the arguments to map_mul
to look like [FunLike F M N] [Mul M] [Mul N] [highPriority <| MulHomClass F M N]
because MulHomClass
fails or succeeds much faster than the others.
As a consequence, the simpNF
linter is much slower since by design it tries and fails to apply many map_
lemmas. The same issue occurs a few times in existing calls to simp [map_mul]
, where map_mul
is tried "too soon" and fails. Thanks to the speedup of leanprover/lean4#2478 the impact is very limited, only in files that already were close to the timeout.
simp
not firing sometimesThis affects map_smulₛₗ
and related definitions. For simp
lemmas Lean apparently uses a slightly different mechanism to find instances, so that rw
can find every argument to map_smulₛₗ
successfully but simp
can't: leanprover/lean4#3701.
Especially in the category theory library, we might sometimes have a type A
which is also accessible as a synonym (Bundled A hA).1
. Instance synthesis doesn't always work if we have f : A →* B
but x * y : (Bundled A hA).1
or vice versa. This seems to be mostly fixed by keeping A B
as outParam
s in MulHomClass F A B
. (Presumably because Lean will do a definitional check A =?= (Bundled A hA).1
instead of using the syntax in the discrimination tree.)
The timeouts can be worked around for now by specifying which map_mul
we mean, either as map_mul f
for some explicit f
, or as e.g. MonoidHomClass.map_mul
.
map_smulₛₗ
not firing as simp
lemma can be worked around by going back to the pre-FunLike situation and making LinearMap.map_smulₛₗ
a simp
lemma instead of the generic map_smulₛₗ
. Writing simp [map_smulₛₗ _]
also works.
Co-authored-by: Matthew Ballard <matt@mrb.email> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Scott Morrison <scott@tqft.net> Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>
@@ -76,10 +76,12 @@ theorem toMultilinearMap_injective :
| ⟨f, hf⟩, ⟨g, hg⟩, h => by subst h; rfl
#align continuous_multilinear_map.to_multilinear_map_injective ContinuousMultilinearMap.toMultilinearMap_injective
-instance continuousMapClass : ContinuousMapClass (ContinuousMultilinearMap R M₁ M₂) (∀ i, M₁ i) M₂
- where
+instance funLike : FunLike (ContinuousMultilinearMap R M₁ M₂) (∀ i, M₁ i) M₂ where
coe f := f.toFun
coe_injective' _ _ h := toMultilinearMap_injective <| MultilinearMap.coe_injective h
+
+instance continuousMapClass : ContinuousMapClass (ContinuousMultilinearMap R M₁ M₂) (∀ i, M₁ i) M₂
+ where
map_continuous := ContinuousMultilinearMap.cont
#align continuous_multilinear_map.continuous_map_class ContinuousMultilinearMap.continuousMapClass
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>
@@ -107,7 +107,7 @@ theorem coe_coe : (f.toMultilinearMap : (∀ i, M₁ i) → M₂) = f :=
@[ext]
theorem ext {f f' : ContinuousMultilinearMap R M₁ M₂} (H : ∀ x, f x = f' x) : f = f' :=
- FunLike.ext _ _ H
+ DFunLike.ext _ _ H
#align continuous_multilinear_map.ext ContinuousMultilinearMap.ext
theorem ext_iff {f f' : ContinuousMultilinearMap R M₁ M₂} : f = f' ↔ ∀ x, f x = f' x := by
Nsmul
-> NSMul
, Zpow
-> ZPow
, etc (#9067)
Normalising to naming convention rule number 6.
@@ -615,7 +615,7 @@ theorem mkPiAlgebraFin_apply (m : Fin n → A) :
end Algebra
-section SmulRight
+section SMulRight
variable [CommSemiring R] [∀ i, AddCommMonoid (M₁ i)] [AddCommMonoid M₂] [∀ i, Module R (M₁ i)]
[Module R M₂] [TopologicalSpace R] [∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂]
@@ -629,6 +629,6 @@ def smulRight : ContinuousMultilinearMap R M₁ M₂ where
cont := f.cont.smul continuous_const
#align continuous_multilinear_map.smul_right ContinuousMultilinearMap.smulRight
-end SmulRight
+end SMulRight
end ContinuousMultilinearMap
@@ -220,7 +220,7 @@ def applyAddHom (m : ∀ i, M₁ i) : ContinuousMultilinearMap R M₁ M₂ →+
@[simp]
theorem sum_apply {α : Type*} (f : α → ContinuousMultilinearMap R M₁ M₂) (m : ∀ i, M₁ i)
{s : Finset α} : (∑ a in s, f a) m = ∑ a in s, f a m :=
- (applyAddHom m).map_sum f s
+ map_sum (applyAddHom m) f s
#align continuous_multilinear_map.sum_apply ContinuousMultilinearMap.sum_apply
end ContinuousAdd
*.ofSubsingleton
(#8694)
Change MultilinearMap.ofSubsingleton
and other similar definitions
so that they are now equivalences between linear maps
and 1
-multilinear maps.
@@ -278,14 +278,20 @@ def codRestrict (f : ContinuousMultilinearMap R M₁ M₂) (p : Submodule R M₂
section
-variable (R M₂)
-
-/-- The evaluation map from `ι → M₂` to `M₂` is multilinear at a given `i` when `ι` is subsingleton.
--/
-@[simps! toMultilinearMap apply]
-def ofSubsingleton [Subsingleton ι] (i' : ι) : ContinuousMultilinearMap R (fun _ : ι => M₂) M₂ where
- toMultilinearMap := MultilinearMap.ofSubsingleton R _ i'
- cont := continuous_apply _
+variable (R M₂ M₃)
+
+/-- The natural equivalence between continuous linear maps from `M₂` to `M₃`
+and continuous 1-multilinear maps from `M₂` to `M₃`. -/
+@[simps! apply_toMultilinearMap apply_apply symm_apply_apply]
+def ofSubsingleton [Subsingleton ι] (i : ι) :
+ (M₂ →L[R] M₃) ≃ ContinuousMultilinearMap R (fun _ : ι => M₂) M₃ where
+ toFun f := ⟨MultilinearMap.ofSubsingleton R M₂ M₃ i f,
+ (map_continuous f).comp (continuous_apply i)⟩
+ invFun f := ⟨(MultilinearMap.ofSubsingleton R M₂ M₃ i).symm f.toMultilinearMap,
+ (map_continuous f).comp <| continuous_pi fun _ ↦ continuous_id⟩
+ left_inv _ := rfl
+ right_inv f := toMultilinearMap_injective <|
+ (MultilinearMap.ofSubsingleton R M₂ M₃ i).apply_symm_apply f.toMultilinearMap
#align continuous_multilinear_map.of_subsingleton ContinuousMultilinearMap.ofSubsingleton
variable (M₁) {M₂}
Type _
and Sort _
(#6499)
We remove all possible occurences of Type _
and Sort _
in favor of Type*
and Sort*
.
This has nice performance benefits.
@@ -153,7 +153,7 @@ theorem toMultilinearMap_zero : (0 : ContinuousMultilinearMap R M₁ M₂).toMul
section SMul
-variable {R' R'' A : Type _} [Monoid R'] [Monoid R''] [Semiring A] [∀ i, Module A (M₁ i)]
+variable {R' R'' A : Type*} [Monoid R'] [Monoid R''] [Semiring A] [∀ i, Module A (M₁ i)]
[Module A M₂] [DistribMulAction R' M₂] [ContinuousConstSMul R' M₂] [SMulCommClass A R' M₂]
[DistribMulAction R'' M₂] [ContinuousConstSMul R'' M₂] [SMulCommClass A R'' M₂]
@@ -218,7 +218,7 @@ def applyAddHom (m : ∀ i, M₁ i) : ContinuousMultilinearMap R M₁ M₂ →+
#align continuous_multilinear_map.apply_add_hom ContinuousMultilinearMap.applyAddHom
@[simp]
-theorem sum_apply {α : Type _} (f : α → ContinuousMultilinearMap R M₁ M₂) (m : ∀ i, M₁ i)
+theorem sum_apply {α : Type*} (f : α → ContinuousMultilinearMap R M₁ M₂) (m : ∀ i, M₁ i)
{s : Finset α} : (∑ a in s, f a) m = ∑ a in s, f a m :=
(applyAddHom m).map_sum f s
#align continuous_multilinear_map.sum_apply ContinuousMultilinearMap.sum_apply
@@ -247,7 +247,7 @@ theorem prod_apply (f : ContinuousMultilinearMap R M₁ M₂) (g : ContinuousMul
/-- Combine a family of continuous multilinear maps with the same domain and codomains `M' i` into a
continuous multilinear map taking values in the space of functions `∀ i, M' i`. -/
-def pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)] [∀ i, TopologicalSpace (M' i)]
+def pi {ι' : Type*} {M' : ι' → Type*} [∀ i, AddCommMonoid (M' i)] [∀ i, TopologicalSpace (M' i)]
[∀ i, Module R (M' i)] (f : ∀ i, ContinuousMultilinearMap R M₁ (M' i)) :
ContinuousMultilinearMap R M₁ (∀ i, M' i) where
cont := continuous_pi fun i => (f i).coe_continuous
@@ -255,13 +255,13 @@ def pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)] [∀ i
#align continuous_multilinear_map.pi ContinuousMultilinearMap.pi
@[simp]
-theorem coe_pi {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
+theorem coe_pi {ι' : Type*} {M' : ι' → Type*} [∀ i, AddCommMonoid (M' i)]
[∀ i, TopologicalSpace (M' i)] [∀ i, Module R (M' i)]
(f : ∀ i, ContinuousMultilinearMap R M₁ (M' i)) : ⇑(pi f) = fun m j => f j m :=
rfl
#align continuous_multilinear_map.coe_pi ContinuousMultilinearMap.coe_pi
-theorem pi_apply {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
+theorem pi_apply {ι' : Type*} {M' : ι' → Type*} [∀ i, AddCommMonoid (M' i)]
[∀ i, TopologicalSpace (M' i)] [∀ i, Module R (M' i)]
(f : ∀ i, ContinuousMultilinearMap R M₁ (M' i)) (m : ∀ i, M₁ i) (j : ι') : pi f m j = f j m :=
rfl
@@ -333,7 +333,7 @@ theorem _root_.ContinuousLinearMap.compContinuousMultilinearMap_coe (g : M₂
/-- `ContinuousMultilinearMap.pi` as an `Equiv`. -/
@[simps]
-def piEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
+def piEquiv {ι' : Type*} {M' : ι' → Type*} [∀ i, AddCommMonoid (M' i)]
[∀ i, TopologicalSpace (M' i)] [∀ i, Module R (M' i)] :
(∀ i, ContinuousMultilinearMap R M₁ (M' i)) ≃ ContinuousMultilinearMap R M₁ (∀ i, M' i) where
toFun := ContinuousMultilinearMap.pi
@@ -349,7 +349,7 @@ def piEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
/-- An equivalence of the index set defines an equivalence between the spaces of continuous
multilinear maps. This is the forward map of this equivalence. -/
@[simps! toMultilinearMap apply]
-nonrec def domDomCongr {ι' : Type _} (e : ι ≃ ι')
+nonrec def domDomCongr {ι' : Type*} (e : ι ≃ ι')
(f : ContinuousMultilinearMap R (fun _ : ι => M₂) M₃) :
ContinuousMultilinearMap R (fun _ : ι' => M₂) M₃ where
toMultilinearMap := f.domDomCongr e
@@ -362,7 +362,7 @@ nonrec def domDomCongr {ι' : Type _} (e : ι ≃ ι')
multilinear maps. In case of normed spaces, this is a linear isometric equivalence, see
`ContinuousMultilinearMap.domDomCongrₗᵢ`. -/
@[simps]
-def domDomCongrEquiv {ι' : Type _} (e : ι ≃ ι') :
+def domDomCongrEquiv {ι' : Type*} (e : ι ≃ ι') :
ContinuousMultilinearMap R (fun _ : ι => M₂) M₃ ≃
ContinuousMultilinearMap R (fun _ : ι' => M₂) M₃ where
toFun := domDomCongr e
@@ -405,7 +405,7 @@ section ApplySum
open Fintype Finset
-variable {α : ι → Type _} [Fintype ι] (g : ∀ i, α i → M₁ i) (A : ∀ i, Finset (α i))
+variable {α : ι → Type*} [Fintype ι] (g : ∀ i, α i → M₁ i) (A : ∀ i, Finset (α i))
/-- If `f` is continuous multilinear, then `f (Σ_{j₁ ∈ A₁} g₁ j₁, ..., Σ_{jₙ ∈ Aₙ} gₙ jₙ)` is the
sum of `f (g₁ (r 1), ..., gₙ (r n))` where `r` ranges over all functions with `r 1 ∈ A₁`, ...,
@@ -429,7 +429,7 @@ end ApplySum
section RestrictScalar
variable (R)
-variable {A : Type _} [Semiring A] [SMul R A] [∀ i : ι, Module A (M₁ i)] [Module A M₂]
+variable {A : Type*} [Semiring A] [SMul R A] [∀ i : ι, Module A (M₁ i)] [Module A M₂]
[∀ i, IsScalarTower R A (M₁ i)] [IsScalarTower R A M₂]
/-- Reinterpret an `A`-multilinear map as an `R`-multilinear map, if `A` is an algebra over `R`
@@ -509,7 +509,7 @@ end CommSemiring
section DistribMulAction
-variable {R' R'' A : Type _} [Monoid R'] [Monoid R''] [Semiring A] [∀ i, AddCommMonoid (M₁ i)]
+variable {R' R'' A : Type*} [Monoid R'] [Monoid R''] [Semiring A] [∀ i, AddCommMonoid (M₁ i)]
[AddCommMonoid M₂] [∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂] [∀ i, Module A (M₁ i)]
[Module A M₂] [DistribMulAction R' M₂] [ContinuousConstSMul R' M₂] [SMulCommClass A R' M₂]
[DistribMulAction R'' M₂] [ContinuousConstSMul R'' M₂] [SMulCommClass A R'' M₂]
@@ -526,7 +526,7 @@ end DistribMulAction
section Module
-variable {R' A : Type _} [Semiring R'] [Semiring A] [∀ i, AddCommMonoid (M₁ i)] [AddCommMonoid M₂]
+variable {R' A : Type*} [Semiring R'] [Semiring A] [∀ i, AddCommMonoid (M₁ i)] [AddCommMonoid M₂]
[∀ i, TopologicalSpace (M₁ i)] [TopologicalSpace M₂] [ContinuousAdd M₂] [∀ i, Module A (M₁ i)]
[Module A M₂] [Module R' M₂] [ContinuousConstSMul R' M₂] [SMulCommClass A R' M₂]
@@ -550,7 +550,7 @@ def toMultilinearMapLinear : ContinuousMultilinearMap A M₁ M₂ →ₗ[R'] Mul
/-- `ContinuousMultilinearMap.pi` as a `LinearEquiv`. -/
@[simps (config := { simpRhs := true })]
-def piLinearEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
+def piLinearEquiv {ι' : Type*} {M' : ι' → Type*} [∀ i, AddCommMonoid (M' i)]
[∀ i, TopologicalSpace (M' i)] [∀ i, ContinuousAdd (M' i)] [∀ i, Module R' (M' i)]
[∀ i, Module A (M' i)] [∀ i, SMulCommClass A R' (M' i)] [∀ i, ContinuousConstSMul R' (M' i)] :
(∀ i, ContinuousMultilinearMap A M₁ (M' i)) ≃ₗ[R'] ContinuousMultilinearMap A M₁ (∀ i, M' i) :=
@@ -563,7 +563,7 @@ end Module
section CommAlgebra
-variable (R ι) (A : Type _) [Fintype ι] [CommSemiring R] [CommSemiring A] [Algebra R A]
+variable (R ι) (A : Type*) [Fintype ι] [CommSemiring R] [CommSemiring A] [Algebra R A]
[TopologicalSpace A] [ContinuousMul A]
/-- The continuous multilinear map on `A^ι`, where `A` is a normed commutative algebra
@@ -584,7 +584,7 @@ end CommAlgebra
section Algebra
-variable (R n) (A : Type _) [CommSemiring R] [Semiring A] [Algebra R A] [TopologicalSpace A]
+variable (R n) (A : Type*) [CommSemiring R] [Semiring A] [Algebra R A] [TopologicalSpace A]
[ContinuousMul A]
/-- The continuous multilinear map on `A^n`, where `A` is a normed algebra over `𝕜`, associating to
@@ -2,15 +2,12 @@
Copyright (c) 2020 Sébastien Gouëzel. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Sébastien Gouëzel
-
-! This file was ported from Lean 3 source module topology.algebra.module.multilinear
-! leanprover-community/mathlib commit f40476639bac089693a489c9e354ebd75dc0f886
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.Topology.Algebra.Module.Basic
import Mathlib.LinearAlgebra.Multilinear.Basic
+#align_import topology.algebra.module.multilinear from "leanprover-community/mathlib"@"f40476639bac089693a489c9e354ebd75dc0f886"
+
/-!
# Continuous multilinear maps
@@ -398,7 +398,7 @@ theorem map_piecewise_add [DecidableEq ι] (m m' : ∀ i, M₁ i) (t : Finset ι
#align continuous_multilinear_map.map_piecewise_add ContinuousMultilinearMap.map_piecewise_add
/-- Additivity of a continuous multilinear map along all coordinates at the same time,
-writing `f (m + m')` as the sum of `f (s.piecewise m m')` over all sets `s`. -/
+writing `f (m + m')` as the sum of `f (s.piecewise m m')` over all sets `s`. -/
theorem map_add_univ [DecidableEq ι] [Fintype ι] (m m' : ∀ i, M₁ i) :
f (m + m') = ∑ s : Finset ι, f (s.piecewise m m') :=
f.toMultilinearMap.map_add_univ _ _
Forward-port leanprover-community/mathlib#19114
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Sébastien Gouëzel
! This file was ported from Lean 3 source module topology.algebra.module.multilinear
-! leanprover-community/mathlib commit 284fdd2962e67d2932fa3a79ce19fcf92d38e228
+! leanprover-community/mathlib commit f40476639bac089693a489c9e354ebd75dc0f886
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -270,6 +270,15 @@ theorem pi_apply {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M'
rfl
#align continuous_multilinear_map.pi_apply ContinuousMultilinearMap.pi_apply
+/-- Restrict the codomain of a continuous multilinear map to a submodule. -/
+@[simps! toMultilinearMap apply_coe]
+def codRestrict (f : ContinuousMultilinearMap R M₁ M₂) (p : Submodule R M₂) (h : ∀ v, f v ∈ p) :
+ ContinuousMultilinearMap R M₁ p :=
+ ⟨f.1.codRestrict p h, f.cont.subtype_mk _⟩
+#align continuous_multilinear_map.cod_restrict ContinuousMultilinearMap.codRestrict
+#align continuous_multilinear_map.cod_restrict_to_multilinear_map ContinuousMultilinearMap.codRestrict_toMultilinearMap
+#align continuous_multilinear_map.cod_restrict_apply_coe ContinuousMultilinearMap.codRestrict_apply_coe
+
section
variable (R M₂)
@@ -340,6 +349,33 @@ def piEquiv {ι' : Type _} {M' : ι' → Type _} [∀ i, AddCommMonoid (M' i)]
rfl
#align continuous_multilinear_map.pi_equiv ContinuousMultilinearMap.piEquiv
+/-- An equivalence of the index set defines an equivalence between the spaces of continuous
+multilinear maps. This is the forward map of this equivalence. -/
+@[simps! toMultilinearMap apply]
+nonrec def domDomCongr {ι' : Type _} (e : ι ≃ ι')
+ (f : ContinuousMultilinearMap R (fun _ : ι => M₂) M₃) :
+ ContinuousMultilinearMap R (fun _ : ι' => M₂) M₃ where
+ toMultilinearMap := f.domDomCongr e
+ cont := f.cont.comp <| continuous_pi fun _ => continuous_apply _
+#align continuous_multilinear_map.dom_dom_congr ContinuousMultilinearMap.domDomCongr
+#align continuous_multilinear_map.dom_dom_congr_to_multilinear_map ContinuousMultilinearMap.domDomCongr_toMultilinearMap
+#align continuous_multilinear_map.dom_dom_congr_apply ContinuousMultilinearMap.domDomCongr_apply
+
+/-- An equivalence of the index set defines an equivalence between the spaces of continuous
+multilinear maps. In case of normed spaces, this is a linear isometric equivalence, see
+`ContinuousMultilinearMap.domDomCongrₗᵢ`. -/
+@[simps]
+def domDomCongrEquiv {ι' : Type _} (e : ι ≃ ι') :
+ ContinuousMultilinearMap R (fun _ : ι => M₂) M₃ ≃
+ ContinuousMultilinearMap R (fun _ : ι' => M₂) M₃ where
+ toFun := domDomCongr e
+ invFun := domDomCongr e.symm
+ left_inv _ := ext fun _ => by simp
+ right_inv _ := ext fun _ => by simp
+#align continuous_multilinear_map.dom_dom_congr_equiv ContinuousMultilinearMap.domDomCongrEquiv
+#align continuous_multilinear_map.dom_dom_congr_equiv_apply ContinuousMultilinearMap.domDomCongrEquiv_apply
+#align continuous_multilinear_map.dom_dom_congr_equiv_symm_apply ContinuousMultilinearMap.domDomCongrEquiv_symm_apply
+
/-- In the specific case of continuous multilinear maps on spaces indexed by `Fin (n+1)`, where one
can build an element of `(i : Fin (n+1)) → M i` using `cons`, one can express directly the
additivity of a multilinear map along the first variable. -/
@@ -466,7 +466,7 @@ theorem map_piecewise_smul [DecidableEq ι] (c : ι → R) (m : ∀ i, M₁ i) (
#align continuous_multilinear_map.map_piecewise_smul ContinuousMultilinearMap.map_piecewise_smul
/-- Multiplicativity of a continuous multilinear map along all coordinates at the same time,
-writing `f (λ i, c i • m i)` as `(∏ i, c i) • f m`. -/
+writing `f (fun i ↦ c i • m i)` as `(∏ i, c i) • f m`. -/
theorem map_smul_univ [Fintype ι] (c : ι → R) (m : ∀ i, M₁ i) :
(f fun i => c i • m i) = (∏ i, c i) • f m :=
f.toMultilinearMap.map_smul_univ _ _
Now that leanprover/lean4#2210 has been merged, this PR:
set_option synthInstance.etaExperiment true
commands (and some etaExperiment%
term elaborators)set_option maxHeartbeats
commandsCo-authored-by: Scott Morrison <scott.morrison@anu.edu.au> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Matthew Ballard <matt@mrb.email>
@@ -430,9 +430,6 @@ section TopologicalAddGroup
variable [TopologicalAddGroup M₂]
--- Porting note: this requires slightly more time to synthesize an instance.
--- I couldn't see what was wrong with turning on tracing.
-set_option synthInstance.maxHeartbeats 30000 in
instance : Neg (ContinuousMultilinearMap R M₁ M₂) :=
⟨fun f => { -f.toMultilinearMap with cont := f.cont.neg }⟩
The unported dependencies are