邏輯程序設計是一種計算機程序設計,在這種程序中,程序員必須向計算機發出指令,說明如何使用數學邏輯做出決定,例如使用數學算法。計算機程序是由告訴計算機該做什么的代碼組成的。然而,最終,計算機將遇到這樣一個實例,在這種...
邏輯程序設計是一種計算機程序設計,在這種程序中,程序員必須向計算機發出指令,說明如何使用數學邏輯做出決定,例如使用數學算法。計算機程序是由告訴計算機該做什么的代碼組成的。然而,最終,計算機將遇到這樣一個實例,在這種情況下,它必須決定如何繼續,而沒有任何關于如何進行的信息,它無法完成當前的功能。邏輯程序設計處理這些類型的決策,并向計算機發出指令,以便計算機能夠就如何最好地應對特定情況做出"邏輯"的決定。要使邏輯編程工作,編寫代碼的程序員需要確保她的語句有意義并且是真實的,因此是合乎邏輯的,一個被稱為定理證明器的計算機程序需要根據它在程序員代碼中遇到的語句來做出決策。

一種計算機編程算法。
定理證明程序是指一種計算機程序,它被設計用來解算被稱為定理。定理是根據先前的陳述證明是正確的陳述。在邏輯程序設計中,定理證明程序與計算機程序員創建的語句一起工作以得出結論。例如,如果代碼聲明A等于B,B等于C,定理證明者將得出A必須等于C的邏輯結論。這個過程不同于程序員在代碼中簡單地告訴計算機A等于C,因為計算機程序必須使用定理證明者和程序員在代碼中的原始語句得出這個結論

一個正在工作的計算機程序員。
理論上,為了使邏輯編程正常工作,程序員只需要確保她的陳述是正確的,而定理證明者的創建者應該確保程序能夠讀取語句并基于這些語句做出最有效的決策。做出有效決策的能力被稱為"邏輯"的計算機。實際上,這兩個領域的工作是重疊的,而那些執行邏輯編程的人為了達到他們想要的結果,常常不得不根據定理證明程序的工作方式來改變和操作代碼。簡單地輸入關于如何做出某個決定的準確陳述可能不足以讓計算機執行正確的功能,程序員必須測試她的代碼并做出相應的調整。
為了使邏輯編程工作,它還依賴于反向推理。在反向推理中,程序通過查看一組數據并從一般已知語句中得出更高級的結論。程序可能知道兩條信息是真的,它會推斷,既然這兩條信息是真的,那就意味著第三條信息也是真的。它繼續這個過程,直到根據它給出的信息得出一個邏輯結論。由于它的工作方式,邏輯編程是建立在聲明性表示的基礎上的語言,即程序告訴計算機它應該做什么,但留給定理證明者來決定執行所請求的過程的最合理或最有效的方法。

數學算法在邏輯程序設計中經常使用。