def cell

bend-edit-distance@0.2.2.0 · src/DistanceDP.bend:16

import bend-edit-distance@0.2.2.0/src/DistanceDP.bend as DistanceDP
import Base
import bend-edit-distance@0.2.2.0/EdlibTypes.bend as E

16# D[i,j] = min(D[i-1,j] + 1, D[i,j-1] + 1,
17#              D[i-1,j-1] + !equal(pairs, row_symbol, column_symbol)).
18def cell(above: U32, left: U32, diagonal: U32,
19         row_symbol: Char, column_symbol: Char,
20         pairs: List<&2, E.EqualityPair>) -> U32:
21  U32.min(U32.min(U32.add(above, 1), U32.add(left, 1)),
22    U32.add(diagonal, Bool.to_u32(Bool.not(E.equal(pairs, row_symbol, column_symbol)))))

Uses (9)

Used by (1)