Это просто название алгоритма, который используется при разработке компилятора.
Когда вы разрабатываете язык, вы разрабатываете лексическую структуру языка, используя инструмент, известный как регулярные выражения. Регулярные выражения являются декларативными и действуют как генераторы, тогда как вам нужно что-то, что может действовать как распознаватель.
Чтобы это произошло, вы хотите прибыть на «машину», которая делает это, известную как конечный автомат. Вы можете создать недетерминированный конечный автомат из регулярного выражения, используя алгоритм, известный как Конструкция Томпсона .
Проблема с NFA, с которой вы сталкиваетесь, заключается в том, что из-за недетерминизма довольно сложно эмулировать программно. По этой причине мы хотим выполнить другое преобразование для перехода от NFA к DFA, и этот алгоритм известен как Подмножество .