Логічне програмування — парадигма програмування, заснована на автоматичному доказі теорем, а також розділ дискретної математики, що вивчає принципи логічного виведення інформації на основі певних фактів і правил виводу. Логічне програмування засноване на теорії та апараті математичної логіки з використанням математичних принципів резолюцій.
Найвідомішим мовою логічного програмування Prolog є.
Першою мовою логічного програмування мова Planner (див. огляд Шапіро (Ehud Shapiro) [1989]), у якому була закладена можливість автоматичного виводу результату даних і заданих правил перебору варіантів (сукупність яких називалася планом). Planner використовувався для того, щоб знизити вимоги до обчислювальних ресурсів (з допомогою бэктрекинга — пошуку з поверненням) і забезпечити можливість виводу фактів, без активного використання стека. Потім був розроблений мовою Prolog, який не вимагав плану перебору варіантів і був, в цьому сенсі, спрощенням мови Planner.
Від мови Planner також відбулися логічні мови програмування QA-4, Popler, Conniver і QLISP. Мови програмування Mercury, Visual Prolog, Oz і Fril відбулися вже від мови Prolog. На базі мови Planner було розроблено кілька альтернативних мов логічного програмування, не заснованих на методі пошуку з поверненнями), наприклад, Ether (див. огляд Шапіро [1989]).