Programowanie logiczne wykorzystuje logikę matematyczną do pisania programów komputerowych. Istnieją wyspecjalizowane języki programowania, w których użytkownik może bezpośrednio wprowadzać polecenia logiczne. Prawdopodobnie najbardziej znanym z tych języków jest Prolog. Kościół Alonzo używał formy programowania logicznego w tzw. rachunku lambda. Programowanie logiczne zostało również użyte w LISP.

Programy składają się z zestawu zasad i faktów. W większości przypadków programowanie logiczne wykorzystuje tzw. negację jako porażkę lub słabą negację: Oznacza to, że jeśli nie jest możliwe wyprowadzenie jakiejś klauzuli p {\i0}z{\displaystyle p} faktów i reguł, system założy, że jego negacja jest prawdziwa.