edit_cost.h
Go to the documentation of this file.
#define PRIVATE static
PRIVATE char sep = ':';
PRIVATE char *coding = "Null:U:P:H:B:I:M:S:E:R";
#define INF 10000 /* infinity */
typedef int CostMatrix[10][10];
PRIVATE CostMatrix *EditCost; /* will point to UsualCost or ShapiroCost */
PRIVATE CostMatrix UsualCost =
{
/* Null, U, P, H, B, I, M, S, E, R */
{ 0, 1, 2, 2, 2, 2, 2, 1, 1, INF}, /* Null replaced */
{ 1, 0, 1, INF, INF, INF, INF, INF, INF, INF}, /* U replaced */
{ 2, 1, 0, INF, INF, INF, INF, INF, INF, INF}, /* P replaced */
{ 2, INF, INF, 0, 2, 2, 2, INF, INF, INF}, /* H replaced */
{ 2, INF, INF, 2, 0, 1, 2, INF, INF, INF}, /* B replaced */
{ 2, INF, INF, 2, 1, 0, 2, INF, INF, INF}, /* I replaced */
{ 2, INF, INF, 2, 2, 2, 0, INF, INF, INF}, /* M replaced */
{ 1, INF, INF, INF, INF, INF, INF, 0, INF, INF}, /* S replaced */
{ 1, INF, INF, INF, INF, INF, INF, INF, 0, INF}, /* E replaced */
{ INF, INF, INF, INF, INF, INF, INF, INF, INF, 0}, /* R replaced */
};
PRIVATE CostMatrix ShapiroCost =
{
/* Null, U, P, H, B, I, M, S, E, R */
{ 0, 1, 2, 100, 5, 5, 75, 5, 5, INF}, /* Null replaced */
{ 1, 0, 1, INF, INF, INF, INF, INF, INF, INF}, /* U replaced */
{ 2, 1, 0, INF, INF, INF, INF, INF, INF, INF}, /* P replaced */
{ 100, INF, INF, 0, 8, 8, 8, INF, INF, INF}, /* H replaced */
{ 5, INF, INF, 8, 0, 3, 8, INF, INF, INF}, /* B replaced */
{ 5, INF, INF, 8, 3, 0, 8, INF, INF, INF}, /* I replaced */
{ 75, INF, INF, 8, 8, 8, 0, INF, INF, INF}, /* M replaced */
{ 5, INF, INF, INF, INF, INF, INF, 0, INF, INF}, /* S replaced */
{ 5, INF, INF, INF, INF, INF, INF, INF, 0, INF}, /* E replaced */
{ INF, INF, INF, INF, INF, INF, INF, INF, INF, 0}, /* R replaced */
};