Розширення моделей обчислення лямбда


11

Я перекладаю книгу на LISP і, природно, вона торкається деяких елементів -calculus. Отже, поняття розширеності згадується там поряд з деякими моделями -calculus, а саме: і (так, з нескінченністю вгорі). І кажуть, що є екстенсіональним, тоді як - ні.λ P ω D ∞ P ω D ∞λλПωD∞ПωD∞

Але ... я переглянув обчислення Ламбди Барендрегта , це синтаксис і семантика , і (сподіваюся, правильно) прочитав там прямо навпаки: не є екстенсіональним, є.D ∞ПωD∞

Хтось знає про ту дивну модель ? Чи може це бути та сама модель, що і , але помилково написана? Я правий щодо розширеності моделей?D ∞D∞D∞

Дякую.


Ви не хотіли б дати контекст для книги LISP? Чи є в ньому посилання на результати чи моделі, на які вони посилаються?
— коді

1
Так, це LISP Крістіана Квіненка в невеликих шматочках , с. 153. Уривок із згадкою: [...] З тих пір властивості були розширені декількома різними способами, даючи кілька різних моделей: або в [Sco76, Sto77]. [...] Як не дивно, є розширенням, оскільки дві функції, які обчислюють одну й ту саму річ у кожній точці, рівні, тоді як не є розширенням. [...] Sco76 означає типи даних Дани Скоттс як Решітки . Sto77 означає « Денотаційну семантику Джозефа Стоїса» : підхід Скотта-Стейчі до теорії мови програмування . P ω P ω D ∞D∞ПωПωD∞
— Кріс

1
Дякую! У цьому випадку, ймовірно, був помилковий помилок, що означає і що не є екстенсіональним. D ∞ P ωD∞D∞Пω
— Коді

Відповіді:


14

Я припускаю, що під розширенням ви маєте на увазі закон Якщо це саме ви маєте на увазі, то модель графіка не є екстенсіональною, тоді як Дани Скотт (я припускаю, що - модель Дати Скотта - числення).P ω D ∞ D ∞ β ξ η λ

(∀х.fх=гх)⟹f=г.
ПωD∞D∞βξηλ

Для цього згадайте, що - це алгебраїчна решітка із властивістю, що її простір безперервних карт - це правильне відведення , тобто існують безперервні карти та так, що але . З огляду на , додаток інтерпретується як . Тепер візьміть[ Р ш → Р ш ] P зі | Л : Р ш → [ Р ш → Р ш ] Г : [ Р ш → Р ш ] → Р ш Л ∘ Г = я д Г ∘ Л ≠ я d U , V ∈ P ω u v Λ ( u ) ( vПω[Пω→Пω]Пω

Λ:Пω→[Пω→Пω]
Γ:[Пω→Пω]→Пω
Λ∘Γ=iгΓ∘Λ≠iгу,v∈Пωуvu u ′ u ≠ u ′ Λ ( u ) = Λ ( v ) Γ ∘ Λ ≠ i d v u v = u v ′ u ≠ u ′Λ(у)(v)уі такий, що але (вони існують тому, що ). Тоді для всіх маємо все ж . Напруженість порушується.у'у≠у'Λ(u)=Λ(v)Γ∘Λ≠idvuv=uv'у≠у'

На відміну від є ізоморфним для , тобто існують безперервні карти і які є оберненими один до одного. Тому розглянемо будь-яке і припустимо, що для всіх . Це означає, що для всіх , отже, і так . Встановлено розтяжність.D ∞ Λ : D ∞ → [ D ∞ → D ∞ ] Γ : [ D ∞ → D ∞ ] → D ∞ u , u ′ ∈ D ∞ u v = u ′ v v ∈ D ∞ Λ ( u ) ( v ) = Λ ( u[D∞→D∞]D∞

Λ:D∞→[D∞→D∞]
Γ:[D∞→D∞]→D∞
у,у'∈D∞уv=у'vv∈D∞v ∈ D ∞ Λ ( u ) = Λ ( u ′ ) u = Γ ( Λ ( u ) ) = Γ ( Λ ( u ′ ) ) = u ′Λ(у)(v)=Λ(у')(v)v∈D∞Λ(у)=Λ(у')у=Γ(Λ(у))=Γ(Λ(у'))=у'

Ми бачимо, що розширеність є наслідком . Для чого корисне інше рівняння ? Для цього нам слід пам'ятати, як інтерпретується -abstraction: Словами, може бути інтерпретований вираз зі змінною як карта, яка приймає до . Тоді -abstraction інтерпретується як -образ цієї функції. Тепер із отримуємо Л ∘ Г = я д А , А , Х . у ( х ) = Γ ( v ↦ U ( v ) ) у ( Х ) Х v у ( V ) А , А , Х . у ( Х ) Г Л ∘ Г = я д ( λ х . у (Γ∘Λ=iгΛ∘Γ=iгλ

λХ.у(Х)=Γ(v↦у(v))
у(Х)Хvу(v)λλХ.у(Х)ΓΛ∘Γ=iг
(λХ.у(Х))ш=Λ(Γ(v↦у(v)))(ш)=(v↦у(v))(ш)=у(ш)
що є просто зменшення.β

Щиро дякую. Тож я буду припускати, що в книзі є фактична помилка. Це можливо, тому що сама книга є перекладом з французької мови, і в цьому абзаці оригіналу книги може бути подвійне заперечення шенагіганів чи щось подібне. На жаль, у мене немає французької, щоб хоча б спробувати перевірити.
— Кріс

Французька мова не має значення, у вас є доказ перед очима.
— Андрій Бауер

До речі, LIPS - це не розширення -calculus, воно просто натхнене ним. Схему можна вважати розширенням, хоча, звичайно, розширення схеми виходить з ладу через наявність обчислювальних ефектів. λ
— Андрій Бауер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.