Ковальски, Роберт

Роберт Энтони Ковальски (род. 15 мая 1941, Бриджпорт) — американский логик и учёный, который провёл большую часть своей карьеры в Великобритании.

Образование

Получил образование в Чикагском университете, Бриджпортском университете (бакалавр в области математики, 1963), Стэнфордском университете (магистр в области математики, 1966), в Варшавском университете и в Эдинбургском университете (научная степень в области компьютерных наук, 1970).

Карьера

Был научным сотрудником в Эдинбургском университете (1970—1975) и в Имперском колледже Лондона с 1975 года. В 1999 году стал заслуженным профессором. Вскоре присоединился к Американской ассоциации по развитию искусственного интеллекта в 1991 году, Координационного комитета искусственного интеллекта в 1999 году, и ассоциации вычислительной техники в 2001 году.

Свои исследования Роберт начал в области автоматических доказательств[2], что реализовано на программном уровне. В основу положен аппарат математическая логика. Однако известность ему принёс вклад в развитие логического программирования, начиная с процедурной интерпретации Хорна[3].

Он также разработал минимальную модель семантики Хорна с Маартен ван Эмден[4]. С Мареком Серготом, разработал исчисление событий[5] и применение логического программирования к правовым рассуждениям[6][7]. С Фариба Садри, он разработал модель агента[8][9], в котором убеждению представленные логическими программами и цель представлена ограничением целостности.

Ковальски был одним из первых разработчиков абдуктивной логики программирования, где логические программы дополнены ограничениями целостности и с неопределёнными, абдуктивними предикатами[10][11]. Эта работа продемонстрировала, что логику для рассуждений по умолчанию может рассматриваться как отдельные случаи допущения на основе аргументации[12][13].

Prolog

Разработка языка Prolog началась в 1970 году Аланом Кулмерое и Филиппом Русселом. Они хотели создать язык, который мог бы делать логические выводы на основе заданного текста. Название Prolog является сокращением от «PROgramming in LOGic». Этот язык был разработан в Марселе в 1972 году. Принцип резолюции Кузнечного казался подходящей моделью, на основе которой можно было разработать механизм логических выводов. С ограничением резолюции на дизъюнкт Хорна унификация привела к эффективной системе, где непреодолимый недетерминизм обрабатывался с помощью процесса отката, который мог быть легко реализован. Алгоритм резолюции позволял создать выполняемую последовательность, необходимую для реализации спецификаций, подобных приведённому выше отношению.

Первая реализация языка Prolog с использованием компилятора Вирта ALGOL-W была закончена в 1972 году, а основы современного языка были заложены в 1973. Использование языка Prolog постепенно распространялось среди тех, кто занимался логическим программированием, в основном благодаря личным контактам, а не через коммерциализацию продукта. В настоящее время существует несколько различных, но весьма схожих между собой версий. Хотя стандарта языка Prolog не существует, однако, версия, разработанная в Эдинбургском университете, стала наиболее широко используемым вариантом. Недостаток разработок эффективных приложений Prolog сдерживал его распространение вплоть до 1980 года.

Книги

  • «Logic for Problem Solving», North Holland, Elsevier, 1979.
    • Ковальски, Роберт Логика в решении проблем. / Пер. с англ. Л. Г. Осмоловского и др. С предисл. и примеч. Д. А. Поспелова. — М. : Наука, 1990. — 277, [1] с. : ил. — (Проблемы искусств. интеллекта; Вып. 18). — ISBN 5-02-014148-8
  • «Computational Logic and Human Thinking: How to be Artificially Intelligent», Cambridge University Press, 2011.

Примечания

Ссылки