def lsum

bendtorch@1.3.0.0 · main.bend:1453

import bendtorch@1.3.0.0/main.bend as Bendtorch
import Base

1453# acc + exp(a[j] - m) for j = idx..idx + k, in order
1454def lsum(k: Nat, +idx: U32, +m: F32, acc: F32, r: Array<F32> & F32) -> AS:
1455  match k r:
1456    case 0n Tuple{a, +x}:
1457      AS{a, (acc + F32.exp((x - m : F32)) : F32)}
1458    case 1n+q Tuple{a, +x}:
1459      lsum(q, (idx + 1 : U32), m, (acc + F32.exp((x - m : F32)) : F32), Array.get(F32, a, (idx + 1 : U32)))

Uses (12)

Used by (1)