Two-layer refinements of a finite node poset #
Every old node has an upper copy, while nodes below an anchor also have a lower copy. The product order preserves joins. A global selector moves the selected atoms below the anchor to the lower layer; this preserves all total mass and every upper cumulative weight.
Upper copies of every node and lower copies below the chosen anchor.
Instances For
Equations
- EGZ.TwoLayer.instFintypeNode anchor = Subtype.fintype fun (a : α × Fin 2) => a.2 = 0 → a.1 ≤ anchor
Equations
Forget the layer; this preserves joins.
Equations
- EGZ.TwoLayer.projection anchor = { toFun := fun (a : EGZ.TwoLayer.Node anchor) => (↑a).1, map_sup' := ⋯ }
Instances For
The upper copy of an old node.
Instances For
The lower copy of a node below the anchor.
Instances For
The order embedding of the original poset into the upper layer.
Equations
- EGZ.TwoLayer.upperEmbedding anchor = { toFun := EGZ.TwoLayer.upper anchor, inj' := ⋯, map_rel_iff' := ⋯ }
Instances For
The order embedding of the principal lower set of the anchor into the lower layer.
Equations
- EGZ.TwoLayer.lowerEmbedding anchor = { toFun := fun (a : { a : α // a ≤ anchor }) => EGZ.TwoLayer.lower anchor ↑a ⋯, inj' := ⋯, map_rel_iff' := ⋯ }
Instances For
Split a sum over layered nodes into upper and lower contributions.
Move selected atoms below the anchor into the lower layer.
Equations
Instances For
Every old atom retains its full weight at one of the two copies.
Splitting atoms between the two layers preserves every retained weight.
Cumulative weight in an arbitrary finite node order.
Instances For
Every upper node retains its entire old cumulative weight.
A lower node has precisely the selected part of its old cumulative weight.
Every layered cumulative weight is bounded by its old projected weight.