Alfred V. Aho 2026-11-05
Alfred V. Aho coauthored Efficient String Matching: An Aid to Bibliographic Search by Alfred V. Aho and Margaret J. Corasick with Margaret J. Corasick in 1975. Their Aho-Corasick algorithm constructs a machine for a whole pattern dictionary and searches a text in a single pass.[ref]
Its useful distinction is between text progress and pattern progress. On a failed extension, a failure link changes the candidate pattern prefix without moving backward in the text. Shared prefixes and suffix continuations avoid repeating a complete independent search for every keyword, while reporting cost still grows with the number of actual matches.
Efficient String Matching: An Aid to Bibliographic Search by Alfred V. Aho and Margaret J. Corasick 2026-11-05
Primary source: doi.org/10.1145/360825.360855
Margaret J. Corasick 2026-11-05
Margaret J. Corasick coauthored the 1975 multi-keyword matching algorithm with Alfred V. Aho. Their Aho-Corasick algorithm builds a finite-state keyword-matching machine and scans the text once, reporting occurrences of all dictionary patterns.[ref]
A trie shares pattern prefixes, while failure links retain the longest useful suffix after a mismatch. For patterns
he and she, reaching the end of she must also report he; terminal suffix information is therefore part of matching, not merely following trie edges. The mechanism makes one text scan reusable across many search terms.