關於單調謂詞的推理
**** 可以通過應用宣告性推理來除錯單調謂詞。
在純 Prolog 中,程式設計錯誤可能導致以下一種或所有現象:
- 謂語不正確成功的情況下,它應該會失敗
- 謂語錯誤失敗的情況下,它應該獲得成功
- 謂詞意外地迴圈,它應該只產生一組有限的答案。
作為一個例子,考慮如何通過宣告性推理除錯 case(2)
:我們可以系統地刪除謂詞的子句的目標,並檢視查詢是否仍然失敗。在單調程式碼中,刪除目標最多可以使得結果程式更加通用。因此,我們可以通過檢視哪些目標導致意外故障來查明錯誤。
**** 可以通過應用宣告性推理來除錯單調謂詞。
在純 Prolog 中,程式設計錯誤可能導致以下一種或所有現象:
作為一個例子,考慮如何通過宣告性推理除錯 case(2)
:我們可以系統地刪除謂詞的子句的目標,並檢視查詢是否仍然失敗。在單調程式碼中,刪除目標最多可以使得結果程式更加通用。因此,我們可以通過檢視哪些目標導致意外故障來查明錯誤。