Template Function sequant::eval::detail::slot_modes_of¶
Defined in File lifetime_mask.hpp
Function Documentation¶
-
template<typename Node>
container::svector<Index> sequant::eval::detail::slot_modes_of(Node const &n)¶ A node’s own result-slot modes: its canonical indices, each taken as itself.
Batch loops are always over plain occ/aux modes (the DP’s batchable modes; a PAO/PNO composite
a<i,j>is the CSV inner dimension, never a loop axis), so a batch mode lives on this node iff it appears here as a plain slot. A composite slota<i,j>therefore contributes only modea, not its proto pairi,j: in array landa<i,j>is just modeaover an<i,j>-tied range, and slicing ani/jloop does nothing to modea. Callers (the residency meet instamp_residency_impl, andvalue_key_impl'sper-value keying below) intersect the in-scope batch modes with this set to keep only those onn'sresult; a node carrying none of a loop’s mode is left unsliced by it (loop-invariant).