Skip to main content

cumsum_operator

Function cumsum_operator 

Source
pub fn cumsum_operator(r: usize) -> Result<LinearOperator<TensorDynLen, usize>>
Expand description

Create a cumulative sum operator: y_i = Σ_{j < i} x_j

This MPO implements a strict lower triangular matrix filled with ones. For a function g defined on {0, 1, …, 2^R - 1}, it computes: f(i) = Σ_{j < i} g(j)

§Arguments

  • r - Number of bits (sites). Must be at least 2.

§Returns

LinearOperator representing the cumulative sum

§Examples

use tensor4all_quanticstransform::cumsum_operator;

let op = cumsum_operator(4).unwrap();
assert_eq!(op.mpo.node_count(), 4);

// Requires at least 2 sites
assert!(cumsum_operator(1).is_err());
assert!(cumsum_operator(0).is_err());