A fast bit-vector algorithm for approximate string matching based on dynamic programming | Synapse