邏輯編程
维基百科,自由的百科全书
邏輯編程是種編程典範,它設定答案須符合的規則來解決問題,而非設定步驟來解決問題。過程是
事實+規則=結果。
不同的方法,可以看Inductive logic programming。
邏輯編程的要點是將正規的邏輯風格帶入電腦程式設計之中。數學家和哲學家發現邏輯是有效的理論分析工具。很多問題可以自然地表示成一個理論。說需要解答一個問題,通常與解答一個新的假設是否跟現在的理論無衝突等價。邏輯提供了一個證明問題是真還是假的方法。建立證明的方法是人所皆知的,故邏輯是解答問題的可靠方法。邏輯編程系統則自動化了這個程序。人工智能在邏輯編程的發展中發揮了重要的影響。
猴子和香蕉問題是邏輯編程社群的著名問題。電腦須自行找出令猴子接觸香蕉的可行方法,取代程式設計師指定猴子接觸香蕉的路徑和方法。
邏輯編程建立了描述一個問題裏的世界的邏輯模型。邏輯編程的目標是對它的模型建立新的陳述。世界上知識不斷澎漲。傳統來說,我們會將一個問題陳述成單一的假設。邏輯編程的程式透過證明這個假設在模型裏是否為真來解決問題。
一些經常用到邏輯編程工具的範疇:
- 專家系統,程式從一個巨大的模型中產生一個建議或答案。
- 自動化證明定理,程式產生一些新定理來擴充現有的理論。
最常用的邏輯編程語言是Prolog,另外有較適用於大型方案的Mercury。詳盡的清單可見於Category:邏輯編程語言。