19.1. Задача: хранене на философи

Модел на програмиране е математически модел, който дава семантичното значение на задачите и програмите, дефинира конструктивни операции над задачи и програми и указва кога дадена програма решава задача. Говорим за релационен модел, ако елементите на семантичните домейни са релационни.

Нека помислим върху задачата за програмиране [[. Изхождаме от концепцията за бъдещето 83]]. Задача за програмиране винаги се изпълнява на клавиш за състояние [[. Награда 76]]. За да формулираме проблема, трябва да създадем математически модел на проблема, който се използва в общ смисъл. Ако мислим за концепцията на модела, използвана в математическата логика, теорията на моделите, ние се позоваваме на нея отделно. Формулирането на задача не може да бъде обвързано с напр. към фиксирана времева логическа структура, тъй като в този случай задачата вече не може да бъде формулирана независимо от програмата, дефинираща времевата структура. Ние не идентифицираме проблема с набора от формули, които го описват, нито със синтактични единици, тъй като неинтерпретиран набор от формули носи както семантично значение във всички интерпретации. Проблемът винаги се дава в пространство с фиксирано състояние, с помощта на подразбиращите се отношения., Необходима е абстракция. Пътят, водещ до формулирането на задачата, не се изследва сега. Не изследваме дали официалната форма на задача наистина описва задача, която е формулирана на някакъв естествен език. Разглеждане на този въпрос в рамките на избрания програмен модел.