~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ 124565FD61658495316D771E1D908657__1675054800 ✰
Заголовок документа оригинал.:
✰ Programming Computable Functions - Wikipedia ✰
Заголовок документа перевод.:
✰ Программирование вычислимых функций — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/Programming_Computable_Functions ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/12/57/124565fd61658495316d771e1d908657.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/12/57/124565fd61658495316d771e1d908657__translat.html ✰
Дата и время сохранения документа:
✰ 21.06.2024 09:12:23 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 30 January 2023, at 08:00 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

Программирование вычислимых функций — Википедия Jump to content

Программирование вычислимых функций

Из Википедии, бесплатной энциклопедии

В информатике , Программирование Вычислимых Функций (PCF) — это типизированный функциональный язык предложенный Гордоном Плоткиным в 1977 году. [1] основано на ранее неопубликованном материале Даны Скотт . [примечание 1] Его можно рассматривать как расширенную версию типизированного лямбда-исчисления или упрощенную версию современных типизированных функциональных языков, таких как ML или Haskell .

модель Полностью абстрактная PCF была впервые предложена Робином Милнером . [2] Однако, поскольку модель Милнера по существу была основана на синтаксисе PCF, она была сочтена менее чем удовлетворительной. [3] Первые две полностью абстрактные модели, не использующие синтаксис, были сформулированы в 1990-х годах. Эти модели основаны на игровой семантике. [4] [5] и логические отношения Крипке . [6] Какое-то время считалось, что ни одна из этих моделей не является полностью удовлетворительной, поскольку они не обладают эффектным презентабельным видом. Однако Ральф Лоудер продемонстрировал, что эффективно представимая полностью абстрактная модель не может существовать, поскольку вопрос эквивалентности программ в конечном фрагменте PCF неразрешим. [7]

Синтаксис [ править ]

Типы ПКФ индуктивно определяются как

  • нат - это тип
  • Для типов σ и τ существует тип σ τ

Контекст σ — это список пар x : σ , где x — имя переменной, а тип, так что ни одно имя переменной не дублируется. Затем обычным способом определяются суждения о типизации терминов в контексте для следующих синтаксических конструкций:

  • Переменные (если x : σ является частью контекста Γ , то Γ x : σ )
  • Применение (термина типа σ τ к терму типа σ )
  • λ-абстракция
  • Комбинатор неподвижной точки Y (создание термов типа σ из термов типа σ σ )
  • Операции преемника ( succ ) и предшественника ( pred ) над nat и константой 0.
  • Условное if с правилом типизации:
( nat s здесь будет интерпретироваться как логические значения с таким соглашением, как ноль, обозначающий истину, и любое другое число, обозначающее ложь)

Семантика [ править ]

Денотационная семантика [ править ]

Относительно простой семантикой языка является модель Скотта . В этой модели

  • Типы интерпретируются как определенные домены .
    • (натуральные числа с присоединенным нижним элементом, с плоским порядком)
    • интерпретируется как область определения непрерывных по Скотту функций из к , с поточечным упорядочением.
  • Контекст интерпретируется как произведение
  • Термины в контексте интерпретируются как непрерывные функции
    • Переменные термины интерпретируются как прогнозы.
    • Абстракция и применение лямбда интерпретируются с использованием декартовой замкнутой структуры категории областей и непрерывных функций.
    • Y интерпретируется путем взятия наименее фиксированной точки аргумента

Эта модель не является полностью абстрактной для PCF; но он полностью абстрактен для языка, полученного добавлением параллельного оператора или к PCF. [4] : 293 

Примечания [ править ]

  1. ^ «PCF — это язык программирования для вычислимых функций, основанный на LCF, логике вычислимых функций Скотта». [1] Программирование вычислимых функций используется ( Mitchell 1996 ). Его также называют программированием с помощью вычислимых функций или языком программирования для вычислимых функций .

Ссылки [ править ]

  1. ^ Перейти обратно: а б Плоткин, Гордон Д. (1977). «LCF рассматривается как язык программирования» (PDF) . Теоретическая информатика . 5 (3): 223–255. дои : 10.1016/0304-3975(77)90044-5 .
  2. ^ Милнер, Робин (1977). «Полностью абстрактные модели типизированных λ-исчислений» (PDF) . Теоретическая информатика . 4 : 1–22. дои : 10.1016/0304-3975(77)90053-6 . hdl : 20.500.11820/731c88c6-cdb1-4ea0-945e-f39d85de11f1 .
  3. ^ Онг, К.-ХЛ (1995). «Соответствие между операционной и денотационной семантикой: проблема полной абстракции для PCF» . В Абрамский С.; Габбай, Д.; Майбау, TSE (ред.). Справочник по логике в информатике . Издательство Оксфордского университета. стр. 269–356. Архивировано из оригинала 7 января 2006 г. Проверено 19 января 2006 г.
  4. ^ Перейти обратно: а б Хайланд, JME и Онг, C.-HL (2000). «О полной абстракции для PCF» . Информация и вычисления . 163 (2): 285–408. дои : 10.1006/inco.2000.2917 .
  5. ^ Абрамский С., Джагадисан Р. и Малакария П. (2000). «Полная абстракция для PCF» . Информация и вычисления . 163 (2): 409–470. дои : 10.1006/inco.2000.2930 . {{cite journal}}: CS1 maint: несколько имен: список авторов ( ссылка )
  6. ^ О'Хирн, П.В. и Рике, Дж.Г. (1995). «Логические отношения Крипке и ПКФ» . Информация и вычисления . 120 (1): 107–116. дои : 10.1006/inco.1995.1103 .
  7. ^ Лоадер, Р. (2001). «Финитарные ПКФ неразрешимы» . Теоретическая информатика . 266 (1–2): 341–364. дои : 10.1016/S0304-3975(00)00194-8 .

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: 124565FD61658495316D771E1D908657__1675054800
URL1:https://en.wikipedia.org/wiki/Programming_Computable_Functions
Заголовок, (Title) документа по адресу, URL1:
Programming Computable Functions - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)