Documentation

Mathlib.LinearAlgebra.AffineSpace.Pointwise

Pointwise instances on AffineSubspaces #

This file provides the additive action AffineSubspace.pointwiseAddAction in the Pointwise locale.

@[implicit_reducible]
def AffineSubspace.pointwiseVAdd {k : Type u_2} {V : Type u_3} {P : Type u_4} [Ring k] [AddCommGroup V] [Module k V] [AddTorsor V P] :

The additive action on an affine subspace corresponding to applying the action to every element.

This is available as an instance in the Pointwise locale.

Instances For
    @[simp]
    theorem AffineSubspace.coe_pointwise_vadd {k : Type u_2} {V : Type u_3} {P : Type u_4} [Ring k] [AddCommGroup V] [Module k V] [AddTorsor V P] (v : V) (s : AffineSubspace k P) :
    โ†‘(v +แตฅ s) = v +แตฅ โ†‘s
    @[implicit_reducible]
    def AffineSubspace.pointwiseAddAction {k : Type u_2} {V : Type u_3} {P : Type u_4} [Ring k] [AddCommGroup V] [Module k V] [AddTorsor V P] :

    The additive action on an affine subspace corresponding to applying the action to every element.

    This is available as an instance in the Pointwise locale.

    Instances For
      theorem AffineSubspace.pointwise_vadd_eq_map {k : Type u_2} {V : Type u_3} {P : Type u_4} [Ring k] [AddCommGroup V] [Module k V] [AddTorsor V P] (v : V) (s : AffineSubspace k P) :
      v +แตฅ s = map (โ†‘(AffineEquiv.constVAdd k P v)) s
      theorem AffineSubspace.vadd_mem_pointwise_vadd_iff {k : Type u_2} {V : Type u_3} {P : Type u_4} [Ring k] [AddCommGroup V] [Module k V] [AddTorsor V P] {v : V} {s : AffineSubspace k P} {p : P} :
      v +แตฅ p โˆˆ v +แตฅ s โ†” p โˆˆ s
      @[simp]
      theorem AffineSubspace.pointwise_vadd_bot {k : Type u_2} {V : Type u_3} {P : Type u_4} [Ring k] [AddCommGroup V] [Module k V] [AddTorsor V P] (v : V) :
      @[simp]
      theorem AffineSubspace.pointwise_vadd_top {k : Type u_2} {V : Type u_3} {P : Type u_4} [Ring k] [AddCommGroup V] [Module k V] [AddTorsor V P] (v : V) :
      theorem AffineSubspace.pointwise_vadd_direction {k : Type u_2} {V : Type u_3} {P : Type u_4} [Ring k] [AddCommGroup V] [Module k V] [AddTorsor V P] (v : V) (s : AffineSubspace k P) :
      theorem AffineSubspace.pointwise_vadd_span {k : Type u_2} {V : Type u_3} {P : Type u_4} [Ring k] [AddCommGroup V] [Module k V] [AddTorsor V P] (v : V) (s : Set P) :
      theorem AffineSubspace.map_pointwise_vadd {k : Type u_2} {Vโ‚ : Type u_5} {Pโ‚ : Type u_6} {Vโ‚‚ : Type u_7} {Pโ‚‚ : Type u_8} [Ring k] [AddCommGroup Vโ‚] [Module k Vโ‚] [AddTorsor Vโ‚ Pโ‚] [AddCommGroup Vโ‚‚] [Module k Vโ‚‚] [AddTorsor Vโ‚‚ Pโ‚‚] (f : Pโ‚ โ†’แตƒ[k] Pโ‚‚) (v : Vโ‚) (s : AffineSubspace k Pโ‚) :
      map f (v +แตฅ s) = f.linear v +แตฅ map f s
      @[implicit_reducible]
      def AffineSubspace.pointwiseSMul {M : Type u_1} {k : Type u_2} {V : Type u_3} [Ring k] [AddCommGroup V] [Module k V] [DistribSMul M V] [SMulCommClass M k V] :
      SMul M (AffineSubspace k V)

      The multiplicative action on an affine subspace corresponding to applying the action to every element.

      This is available as an instance in the Pointwise locale.

      TODO: generalize to include SMul (P โ‰ƒแตƒ[k] P) (AffineSubspace k P), which acts on P with a VAdd version of a DistribMulAction.

      Instances For
        @[simp]
        theorem AffineSubspace.coe_smul {M : Type u_1} {k : Type u_2} {V : Type u_3} [Ring k] [AddCommGroup V] [Module k V] [DistribSMul M V] [SMulCommClass M k V] (a : M) (s : AffineSubspace k V) :
        โ†‘(a โ€ข s) = a โ€ข โ†‘s
        theorem AffineSubspace.smul_eq_map {M : Type u_1} {k : Type u_2} {V : Type u_3} [Ring k] [AddCommGroup V] [Module k V] [DistribSMul M V] [SMulCommClass M k V] (a : M) (s : AffineSubspace k V) :
        a โ€ข s = map (DistribSMul.toLinearMap k V a).toAffineMap s
        theorem AffineSubspace.smul_mem_smul_iff {k : Type u_2} {V : Type u_3} [Ring k] [AddCommGroup V] [Module k V] {s : AffineSubspace k V} {p : V} {G : Type u_9} [Group G] [DistribMulAction G V] [SMulCommClass G k V] {a : G} :
        a โ€ข p โˆˆ a โ€ข s โ†” p โˆˆ s
        @[simp]
        theorem AffineSubspace.smul_bot {M : Type u_1} {k : Type u_2} {V : Type u_3} [Ring k] [AddCommGroup V] [Module k V] [DistribSMul M V] [SMulCommClass M k V] (a : M) :
        a โ€ข โŠฅ = โŠฅ
        theorem AffineSubspace.smul_span {M : Type u_1} {k : Type u_2} {V : Type u_3} [Ring k] [AddCommGroup V] [Module k V] [DistribSMul M V] [SMulCommClass M k V] (a : M) (s : Set V) :
        a โ€ข affineSpan k s = affineSpan k (a โ€ข s)
        @[implicit_reducible]
        def AffineSubspace.mulAction {M : Type u_1} {k : Type u_2} {V : Type u_3} [Ring k] [AddCommGroup V] [Module k V] [Monoid M] [DistribMulAction M V] [SMulCommClass M k V] :

        The multiplicative action on an affine subspace corresponding to applying the action to every element.

        This is available as an instance in the Pointwise locale.

        TODO: generalize to include SMul (P โ‰ƒแตƒ[k] P) (AffineSubspace k P), which acts on P with a VAdd version of a DistribMulAction.

        Instances For
          theorem AffineSubspace.smul_mem_smul_iff_of_isUnit {M : Type u_1} {k : Type u_2} {V : Type u_3} [Ring k] [AddCommGroup V] [Module k V] [Monoid M] [DistribMulAction M V] [SMulCommClass M k V] {a : M} {s : AffineSubspace k V} {p : V} (ha : IsUnit a) :
          a โ€ข p โˆˆ a โ€ข s โ†” p โˆˆ s
          theorem AffineSubspace.smul_mem_smul_iffโ‚€ {k : Type u_2} {V : Type u_3} [Ring k] [AddCommGroup V] [Module k V] {s : AffineSubspace k V} {p : V} {Gโ‚€ : Type u_9} [GroupWithZero Gโ‚€] [DistribMulAction Gโ‚€ V] [SMulCommClass Gโ‚€ k V] {a : Gโ‚€} (ha : a โ‰  0) :
          a โ€ข p โˆˆ a โ€ข s โ†” p โˆˆ s
          @[simp]
          theorem AffineSubspace.smul_top {M : Type u_1} {k : Type u_2} {V : Type u_3} [Ring k] [AddCommGroup V] [Module k V] [Monoid M] [DistribMulAction M V] [SMulCommClass M k V] {a : M} (ha : IsUnit a) :
          a โ€ข โŠค = โŠค
          @[simp]
          theorem AffineSubspace.direction_smul {k : Type u_2} {V : Type u_3} [Field k] [AddCommGroup V] [Module k V] {a : k} (ha : a โ‰  0) (s : AffineSubspace k V) :
          (a โ€ข s).direction = s.direction