Thompson's algorithm

E162099

Thompson's algorithm is a classic computer science method for converting regular expressions into nondeterministic finite automata (NFAs), widely used in pattern matching and lexical analysis.

All labels observed (5)

How this entity was disambiguated

Statements (47)

Predicate Object
instanceOf algorithm ⓘ
automata theory technique ⓘ
construction algorithm ⓘ
abbreviation Thompson NFA construction ⓘ
advantage easy to implement ⓘ
guarantees NFA size linear in regex length ⓘ
simple and mechanical construction rules ⓘ
alsoKnownAs Thompson construction ⓘ
basedOn regular expressions ⓘ
complexityClass O(n) in size of regular expression ⓘ
constructs single accept state NFA ⓘ
single start state NFA ⓘ
creator Ken Thompson ⓘ
field automata theory ⓘ
compiler construction ⓘ
computer science ⓘ
formal language theory ⓘ
lexical analysis ⓘ
pattern matching ⓘ
formalizes semantics of regular expressions via automata ⓘ
guarantees language equivalence between regex and constructed NFA ⓘ
inputType regular expression ⓘ
limitation produces NFAs with epsilon transitions ⓘ
outputType NFA ⓘ
produces nondeterministic finite automata ⓘ
property linear in the length of the regular expression ⓘ
systematic construction using small NFA fragments ⓘ
publishedIn Communications of the ACM ⓘ
relatedTo Glushkov construction ⓘ
position automaton ⓘ
powerset construction ⓘ
subset construction algorithm ⓘ
supportsOperator Kleene star ⓘ
concatenation ⓘ
optional operator ⓘ
parentheses grouping ⓘ
union ⓘ
taughtIn compiler design courses ⓘ
undergraduate automata theory courses ⓘ
typicalUse foundation for efficient regex matching implementations ⓘ
intermediate step before DFA construction ⓘ
usedIn compiler front-ends ⓘ
lexical analyzers ⓘ
pattern matching libraries ⓘ
regular expression engines ⓘ
usesTransitionType epsilon transitions ⓘ
yearIntroduced 1968 ⓘ

How these facts were elicited

Referenced by (6)

Full triples — surface form annotated when it differs from this entity's canonical label.

Ken Thompson → knownFor → Thompson's construction for converting regular expressions to NFAs ⓘ
linked to: Thompson's algorithm
Ken Thompson → developed → Thompson's algorithm ⓘ
Ken Thompson → developed → Thompson's construction ⓘ
linked to: Thompson's algorithm
Thompson's algorithm → abbreviation → Thompson NFA construction ⓘ
linked to: Thompson's algorithm
Thompson's algorithm → alsoKnownAs → Thompson construction ⓘ
linked to: Thompson's algorithm
Glushkov construction → relatedTo → Thompson construction ⓘ
linked to: Thompson's algorithm