You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
maxbonddim: Option<usize>: tensor4all-quanticstci options, which translates its own field into its dependency's spelling (options.rs:287)
treetn and simplett each contain two of the three. Every user crossing crates relearns the name, and a user or agent arriving from ITensors.jl has no stable target for maxdim. This was identified as a vocabulary decision in the 2026-08-02 audit umbrella (#566, Phase 2); this issue splits it out because it does not depend on tensor4all-agent-rules#6 and now has an additional motivation (ITensors.jl persona mapping, see #573).
max_bond_dim over max_rank: rank is overloaded in TCI context; bond dimension is the unambiguous tensor-network term and the closest cousin of ITensors.jl maxdim.
Option<usize> over a usize::MAX sentinel: idiomatic, and the unlimited case is explicit at call sites.
Proposed direction
simplett CompressionOptions: max_bond_dim: usize becomes Option<usize>; remove the sentinel.
treetn TruncationOptions: rename max_rank/with_max_rank to max_bond_dim/with_max_bond_dim.
quanticstci: rename maxbonddim to max_bond_dim; drop the translation shim once spellings match.
Early development policy applies (no backward compatibility, remove old names immediately); include a CHANGELOG mapping table old name to new name, plus the ITensors.jl row (maxdim maps to max_bond_dim).
Problem
The bond-dimension cap has three spellings in the workspace:
max_bond_dim: usizewith ausize::MAXsentinel:tensor4all-simplettCompressionOptionsmax_rank: Option<usize>:tensor4all-treetnTruncationOptions(with_max_rank)maxbonddim: Option<usize>:tensor4all-quanticstcioptions, which translates its own field into its dependency's spelling (options.rs:287)treetn and simplett each contain two of the three. Every user crossing crates relearns the name, and a user or agent arriving from ITensors.jl has no stable target for
maxdim. This was identified as a vocabulary decision in the 2026-08-02 audit umbrella (#566, Phase 2); this issue splits it out because it does not depend on tensor4all-agent-rules#6 and now has an additional motivation (ITensors.jl persona mapping, see #573).Decision
Adopt
max_bond_dim: Option<usize>workspace-wide (None= unlimited):max_bond_dimovermax_rank: rank is overloaded in TCI context; bond dimension is the unambiguous tensor-network term and the closest cousin of ITensors.jlmaxdim.Option<usize>over ausize::MAXsentinel: idiomatic, and the unlimited case is explicit at call sites.Proposed direction
CompressionOptions:max_bond_dim: usizebecomesOption<usize>; remove the sentinel.TruncationOptions: renamemax_rank/with_max_ranktomax_bond_dim/with_max_bond_dim.maxbonddimtomax_bond_dim; drop the translation shim once spellings match.maxdimmaps tomax_bond_dim).SvdTruncationPolicyas the shared tolerance type); this issue deliberately covers only the bond cap and does not preempt that work.Acceptance criteria
grep -rn "max_rank\|maxbonddim" crates/returns nothing outside CHANGELOG.maxdimmaps tomax_bond_dimandcutoffmaps tortol*rtol.