難以表達(dá)的“IF-THEN-ELSE”是一階邏輯的一個(gè)缺陷。If..Then…Else(或者“ite(c, a, b)”,其中c是一個(gè)用公式表達(dá)的條件,當(dāng)它為真時(shí),返回a,為假時(shí),返回b)結(jié)構(gòu)大量地應(yīng)用在數(shù)學(xué)公式表達(dá)和程序設(shè)計(jì)語言中,但是這種常用的結(jié)構(gòu)卻很難在一階邏輯中給予表達(dá),因?yàn)樵谶@種結(jié)構(gòu)中,c是公式,而一階邏輯中的項(xiàng)和公式都只接受“項(xiàng)”作為參數(shù)。
一階邏輯對命題邏輯進(jìn)行了擴(kuò)展,引入了變量、項(xiàng)、量詞、函數(shù)、謂詞。不過一階邏輯只允許量化變量,而在高級(jí)邏輯中,變量類型可以出現(xiàn)在量化中(二階邏輯)。高階謂詞就是接受其他謂詞作為參數(shù)的謂詞。一般的,階為 n 的高階謂詞接受一個(gè)或多個(gè)(n ? 1)階的謂詞作為參數(shù),這里的 n > 1。