Состояние дел & mdash; да, насколько я знаю, все алгоритмы более или менее принимают ту же форму, что и Уэ (я следую теории логического программирования, хотя мой опыт и тангенциальный) при условии вам необходимо полное сопоставление более высокого порядка: такие подзадачи сопоставление более высокого порядка (объединение, где один член является замкнутым) и исчисление шаблона Дейла Миллера являются разрешимыми.
Обратите внимание, что алгоритм Хьюта является лучшим в следующем смысле & mdash; он похож на алгоритм полуопределения, в котором он найдет объединители, если они существуют, но он не гарантированно завершится, если они не будут. Так как мы знаем, что объединение высшего порядка (действительно, объединение второго порядка) неразрешимо, вы не можете добиться большего успеха, чем это.
Пояснения: первые четыре главы кандидатской диссертации Конала Эллиотта, Расширения и применения объединения высшего порядка должны соответствовать требованиям. Эта часть весит почти 80 страниц, с некоторой плотной теорией типов, но она хорошо мотивирована и является самой читаемой учетной записью, которую я когда-либо видел.
Примеры. Алгоритм Хьюта придумает товары для этого примера: [X (o), Y (succ (0))]; что по необходимости поставит в тупик алгоритм объединения первого порядка.