Sebuah program fungsional terdiri dari E ekspresi (mewakili kedua algoritma dan masukan). Ini E ekspresi tunduk pada beberapa aturan menulis ulang. Pengurangan terdiri dari mengganti beberapa bagian dari E P oleh satu lagi P ungkapan 'menurut aturan menulis ulang diberikan. ... Proses pengurangan akan diulangi sampai ekspresi yang dihasilkan memiliki bagian lagi yang bisa ditulis ulang. Ekspresi E * yang diperoleh disebut bentuk normal E dan merupakan output dari program fungsional H. P. Barendregt