Reduced tensor words and deconcatenation #
For an R-module M, reduced tensor words are the direct sum of its positive tensor powers. This
file constructs that module, TauCeti.ReducedTensorWords, and its reduced deconcatenation map,
which cuts a positive word at every nontrivial position. It also defines blocks of consecutive
letters in a tensor word, used to express iterated cuts. The tensor words that also carry the
empty word are the separate type TauCeti.TensorWords, built in
TauCeti.LinearAlgebra.TensorCoalgebra.Coaugmented.Basic.
The construction uses Mathlib's TensorPower and direct-sum/tensor-product equivalences, together
with TensorPower.splitAt. It is the coalgebra-side input for the suspended bar construction in
the DGAInfinity roadmap.
Main definitions #
TauCeti.ReducedTensorWords: the direct sum of positive tensor powers.TauCeti.ReducedTensorWords.deconcatenation: sum over every nontrivial cut of a tensor word.TauCeti.ReducedTensorWords.subword: a block of consecutive letters in a tensor word.TauCeti.ReducedTensorWords.prepend: prepend a letter to a reduced tensor word.
Main results #
TauCeti.ReducedTensorWords.of_tprod_congr: a pure tensor word depends only on its letters, even when the two sides present its length by different arithmetic expressions.TauCeti.ReducedTensorWords.subword_congr: equal-length blocks in different ambient tuples or at different offsets agree when their letters agree.TauCeti.ReducedTensorWords.subword_tail: blocks of the tail of a tuple.TauCeti.ReducedTensorWords.prepend_subword: prepending the preceding letter extends a block.TauCeti.ReducedTensorWords.map_subword: mapping a block applies the map to each of its letters.TauCeti.ReducedTensorWords.deconcatenation_subword: deconcatenation of a block.
References #
- E. Getzler and J. D. S. Jones, A-infinity algebras and the cyclic bar complex, Sections 1--2.
- B. Keller, Introduction to A-infinity algebras and modules, Sections 3.1 and 3.6.
The module of nonempty tensor words.
Equations
Instances For
Include a positive tensor power into reduced tensor words.
Equations
Instances For
Two linear maps out of reduced tensor words agree if they agree on pure tensor words.
Two pure tensor words of the same length with the same letters are equal. The two lengths are separate arguments, so that this closes goals whose two sides were assembled from different arithmetic expressions for one length.
Project reduced tensor words to a fixed positive tensor length.
Equations
Instances For
Evaluating a reduced tensor word at a length agrees with its named component projection.
Reading off the component of a tensor word at its own length, presented by a second arithmetic expression for that length.
Projecting an included tensor power vanishes when the two lengths differ.
A linear map assembled from its length components is that component on a tensor word of that length.
Deconcatenation on words of one fixed length, summed over all nontrivial cuts.
Equations
- One or more equations did not get rendered due to their size.
Instances For
On a pure tensor, deconcatenation is the sum of its prefix--suffix cuts.
Reduced deconcatenation cuts a nonempty tensor word at every nontrivial position.
Words of lengths zero and one have no nontrivial cuts; only positive lengths occur in the source, so length one is sent to zero.
Equations
- One or more equations did not get rendered due to their size.
Instances For
On tensor words of length one, reduced deconcatenation is zero.
The tensor word x a ⊗ ⋯ ⊗ x (a + b - 1), of length b and starting at position a.
It is zero when the requested block is empty or runs past the end of x; the intended range of
the definition is 0 < b and a + b ≤ n.
Equations
- TauCeti.ReducedTensorWords.subword R x a b = if h : 0 < b ∧ a + b ≤ n then (TauCeti.ReducedTensorWords.of R M ⟨b, ⋯⟩) ((PiTensorProduct.tprod R) fun (j : Fin b) => x ⟨a + ↑j, ⋯⟩) else 0
Instances For
On its intended range, a subword is the pure tensor of the selected block of letters.
A block running past the end of the tuple is zero.
A whole tuple is the subword of full length starting at its beginning.
A block of a tensor word depends only on its letters, not on the tuple carrying them nor on where the block sits inside it.
A block of the tail of a tuple is the block one position further along the tuple.
Deconcatenating a block cuts it at each of its nontrivial internal positions.
Mapping both halves of the cuts of a block, written as one sum over the cut position.
Prepend a letter to a reduced tensor word: a and y₁ ⋯ y_k give a y₁ ⋯ y_k.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Prepending a letter to a pure tensor word conses it onto the letters.
Prepending the letter at position a to the block that starts right after it extends the
block by that letter.
Apply a linear map to every letter of a reduced tensor word.
Equations
- TauCeti.ReducedTensorWords.map R f = DirectSum.lmap fun (x : { n : ℕ // 0 < n }) => PiTensorProduct.map fun (x : Fin ↑x) => f
Instances For
Mapping a homogeneous tensor word applies the tensor power of the map in the same length.
Each length component of a mapped tensor word is the tensor power of the map applied to that component.
Mapping a pure tensor applies the map to each of its letters.
Mapping a block of a tensor word applies the map to each letter in the block.
Mapping the identity map over the letters is the identity.
Mapping a composite over the letters composes the two letterwise maps.
Applying a linear equivalence and then its inverse to every letter is the identity.
Applying the inverse of a linear equivalence and then the equivalence to every letter is the identity.
Applying a linear equivalence to every letter is a bijection of reduced tensor words, with inverse the letterwise inverse equivalence.
Reduced deconcatenation is natural with respect to linear maps of the letters.