def cell
import bend-edit-distance@0.2.2.0/src/DistanceDP.bend as DistanceDPimport 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)))))