Pencocokan pola tingkat tinggi adalah masalah yang tidak dapat ditentukan. Itu berarti tidak ada algoritma yang, diberikan persamaan a => b, di mana adan badalah istilah terbuka pada kalkulus lambda yang diketik sederhana, menemukan substitusi Ssehingga aS => bS, di mana =>singkatan "memiliki bentuk normal Bn yang sama". Namun, manusia dapat menyelesaikan masalah itu secara efisien. Misalnya, diberikan masalah berikut:
a = (λt . t
(F (λ f x . (f (f (f x)))))
(F (λ f x . (f (f x)))))
b = (λ t . t
(λ f x . (f (f (f (f (f (f x)))))))
(λ f x . (f (f (f (f x))))))
Setiap manusia dengan pengetahuan yang cukup tentang kalkulus lambda akan dapat memperhatikan Fadalah fungsi "ganda" untuk jumlah gereja, dengan cepat datang dengan solusi yang
F = (λ a b c . (a b (a b c)))
Pertanyaan saya adalah: jika masalah itu tidak dapat dipastikan, bagaimana manusia dapat dengan cepat dan mudah menyelesaikannya?