While this submission is a draft, it cannot be used by other submissions.

Rank of a lifted tensor sum

Lax342547.BlockDeficits · concepts/Lax342547/BlockDeficits.lean · lax-342547

proven

Loading review…

Sign in with ORCID

Community review

Flags

Each flag is tied to a public ORCID identity and explains why this concept may be incorrect.

No flags have been submitted.

    Community review

    Flag this concept

    State precisely what appears incorrect. This explanation will be public under your ORCID name.

    No source line selected.

    Natural Language Statement

    Lemma

    A lifted block sum has rank at least its number of nonzero blocks minus the actual column and row span deficits.

    Concept map
    6 concepts
    100%
    Proven claimThis conceptRelated conceptA → B: B builds on ADescendants are omitted for concepts with more than 10 descendants.
    Evidence

    This concept declares 3 statements. Each proof establishes one of them relative to its assumptions.

    1 lifted_sum_rank_deficit proven

    2 nonzero_block_count_deficit proven

    Lean source view on GitHub

    1import Lax342547.RankLoss
    2import Lax342547.DirectRanks
    3import Lax342547.SpanDeficits
    4
    5/-!
    6---
    7title: Rank of a lifted tensor sum
    8type: lemma
    9---
    10A lifted block sum has rank at least its number of nonzero blocks minus the actual column and row span deficits.
    11-/
    12
    13namespace Lax342547.BlockDeficits
    14
    15open Lax342547.SpanDeficits
    16open scoped BigOperators
    17
    18noncomputable def liftedSum {K V W ι : Type} [Field K] [Fintype ι]
    19 [AddCommGroup V] [Module K V] [AddCommGroup W] [Module K W]
    20 (S : ι → Submodule K W) (T : ι → Submodule K V)
    21 (M : ∀ i, Module.Dual K (T i) →ₗ[K] S i) : Module.Dual K V →ₗ[K] W := by
    22 classical
    23 let B := (LinearMap.lsum K (fun i => T i) K).symm.toLinearMap.comp (addition T).dualMap
    24 exact (addition S).comp ((LinearMap.piMap M).comp B)
    25
    26axiom lifted_sum_rank_deficit {K V W ι : Type} [Field K] [Fintype ι]
    27 [AddCommGroup V] [Module K V] [AddCommGroup W] [Module K W]
    28 [FiniteDimensional K V] [FiniteDimensional K W]
    29 (S : ι → Submodule K W) (T : ι → Submodule K V)
    30 (M : ∀ i, Module.Dual K (T i) →ₗ[K] S i) :
    31 (∑ i, Module.finrank K (LinearMap.range (M i))) ≤
    32 Module.finrank K (LinearMap.range (liftedSum S T M)) +
    33 ((∑ i, Module.finrank K (S i))-Module.finrank K (⨆ i, S i : Submodule K W)) +
    34 ((∑ i, Module.finrank K (T i))-Module.finrank K (⨆ i, T i : Submodule K V))
    35
    36axiom nonzero_map_rank {K V W : Type} [Field K]
    37 [AddCommGroup V] [Module K V] [AddCommGroup W] [Module K W]
    38 [FiniteDimensional K W] (M : V →ₗ[K] W) (hM : M ≠ 0) :
    39 1 ≤ Module.finrank K (LinearMap.range M)
    40
    41axiom nonzero_block_count_deficit {K V W ι : Type} [Field K] [Fintype ι]
    42 [AddCommGroup V] [Module K V] [AddCommGroup W] [Module K W]
    43 [FiniteDimensional K V] [FiniteDimensional K W]
    44 (S : ι → Submodule K W) (T : ι → Submodule K V)
    45 (M : ∀ i, Module.Dual K (T i) →ₗ[K] S i) : by
    46 classical
    47 exact (Finset.univ.filter (fun i => M i ≠ 0)).card ≤
    48 Module.finrank K (LinearMap.range (liftedSum S T M)) +
    49 ((∑ i, Module.finrank K (S i))-Module.finrank K (⨆ i, S i : Submodule K W)) +
    50 ((∑ i, Module.finrank K (T i))-Module.finrank K (⨆ i, T i : Submodule K V))
    51
    52end Lax342547.BlockDeficits
    53
    Show ProofShow ProofShow Proof

    Discussion

    Ask a question or add context. Endorsements and structured flags are kept in the review panel above.

    Loading discussion…