Jump to content

Объединение теорий программирования

Унификация теорий программирования ( UTP ) в информатике занимается семантикой программ . Он показывает, как денотатационная семантика , операционная семантика и алгебраическая семантика могут быть объединены в единую структуру для формальной спецификации , проектирования и реализации программ и компьютерных систем .

Книга под этим названием, написанная К. А. Хоаром и Хэ Цзифэном, была опубликована в международной серии Prentice Hall по информатике в 1998 году и теперь находится в свободном доступе в Интернете. [1]

Семантической основой UTP является исчисление предикатов первого порядка , дополненное конструкциями с фиксированной точкой из логики второго порядка. Следуя традиции Эрика Хенера , программы являются предикатами в UTP, и на семантическом уровне нет различия между программами и спецификациями. По словам Хоара :

Компьютерная программа идентифицируется самым сильным предикатом, описывающим все соответствующие наблюдения, которые можно сделать о поведении компьютера, выполняющего эту программу. [2]

На языке UTP теория — это модель конкретной парадигмы программирования. Теория UTP состоит из трех компонентов:

  • алфавит , который представляет собой набор имен переменных , обозначающих атрибуты парадигмы, которые может наблюдать внешний объект;
  • подпись ; , которая представляет собой набор конструкций языка программирования, присущих парадигме и
  • набор условий работоспособности , которые определяют пространство программ, соответствующих парадигме. Эти условия работоспособности обычно выражаются как монотонные идемпотентные преобразователи предикатов .

Уточнение программы является важной концепцией в UTP. Программа уточняется тогда и только тогда, когда каждое наблюдение, которое можно сделать из также является наблюдением .Определение уточнения является общим для всех теорий UTP:

где обозначает [3] универсальное замыкание всех переменных в алфавите.

Отношения

[ редактировать ]

Самая основная теория UTP — это алфавитное исчисление предикатов, которое не имеет ограничений по алфавиту или условий работоспособности. Теория отношений немного более специализирована, поскольку алфавит отношения может состоять только из:

  • недекорированные переменные ( ), моделирование наблюдения за программой в начале ее выполнения; и
  • штрихованные переменные ( ), моделируя наблюдение за программой на более позднем этапе ее выполнения.

Некоторые общеязыковые конструкции можно определить в теории отношений следующим образом:

  • Оператор пропуска, который никак не изменяет состояние программы, моделируется как реляционная идентичность:

  • Присвоение значения в переменную моделируется как установка к и сохраняя все остальные переменные (обозначенные ) постоянный:

  • Недетерминированный выбор между программами является их наивысшей нижней границей:

  1. ^ Хоар, Африка ; Цзифэн, Хэ (1 апреля 1998 г.). Объединение теорий программирования . Прентис Холл. п. 320. ИСБН  978-0-13-458761-5 . Проверено 17 сентября 2014 г.
  2. ^ Хоар, ЦАР (апрель 1984 г.). «Программирование: волшебство или наука?». Программное обеспечение IEEE . 1 (2): 5–16. дои : 10.1109/MS.1984.234042 . S2CID   375578 .
  3. ^ Дейкстра, Эдсгер В .; Схолтен, Карел С. (1990). Исчисление предикатов и семантика программ . Тексты и монографии по информатике. Спрингер. ISBN  0-387-96957-8 .

Дальнейшее чтение

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 84be2b603bd3bd5939b0f5afff6245ea__1670490960
URL1:https://arc.ask3.ru/arc/aa/84/ea/84be2b603bd3bd5939b0f5afff6245ea.html
Заголовок, (Title) документа по адресу, URL1:
Unifying Theories of Programming - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)