Посилання на невизначеність модуля безперервності, функціонального в PCF?


10

Чи може хтось вказати мені на посилання на не визначеність модуля безперервності, функціонального в PCF?

Андрій Бауер написав дуже приємну публікацію в блозі, вивчивши деякі питання більш детально, але я підсумую лише трохи його публікації, щоб дати деякий контекст цьому питанню. Беровскій цьому безліч послідовностей натурального числа, або , що еквівалентно безліч функцій від натуралів до Naturals . З цього питання ми обмежимо нашу увагу лише потоками, які обчислюються.NNBNN

Тепер функція неперервна, якщо для кожного значення залежить лише від кінцевої кількості елементів , і воно обчислено безперервно, якщо ми можемо обчислити верхню пов'язане з тим, скільки елементів xs потрібно. У деяких моделях обчислень фактично можна записати програму \ mathsf {modulus}: (B \ to \ bool) \ to B \ to \ N, яка виконує обчислювальну функцію на просторі Байра та елементі простору Байра, і повертає верхню межу на кількість елементів потоку. x s B f ( x s ) x s x s m o d u l u s : ( B b o o l ) B Nf:BboolxsBf(xs)xsxsmodulus:(Bbool)BN

Одним із фокусів для цього є використання локального сховища для запису максимального індексу у потік, що бачиться:

let modulus f xs =
  let r = ref 0 in
  let ys = fun i -> (r := max i !r; xs i) in 
    f ys;
    !r

Звичайно, ysаргумент - це вже не суто функціональна програма. Мій інтерес до цієї програми виходить з того , що він робить тільки використання місцевого магазину, і тому є екстенсіонально чистим. Я працюю над (серед іншого) імперативним програмуванням вищого порядку, і розробляю теорії типів, які могли б класифікувати це як чисту функцію.

Є і більш практичних прикладів, що стосуються таких предметів, як запам'ятовування та об'єднання з'єднань, але я вважаю це особливо гарним прикладом.

Відповіді:


4

Доказ прихований десь у Троельстрі та ван Далені, Конструктивізм з математики, том 2, я думаю. Швидше за все, це можна знайти в розслідуваннях Троельстри , якщо ви можете покласти руки на це.

Виходить так. Припустимо, ми могли б визначити модуль безперервності в набраному -calculus з операторами fixpoint. Тоді ми могли б інтерпретувати його в доменно-теоретичній моделі реалізації, наприклад, у де - графська модель Скотта. У цій моделі діє принцип вибору . Але відомо, що разом із розширенням функцій (що має місце у кожній моделі реалізації) є несумісним із існуванням модуля безперервності. Якщо я отримаю мить, деталі я заповнить пізніше.P E R ( P ω ) P ω A C 2 , 0 A C 2 , 0λPER(Pω)PωAC2,0AC2,0

Див. Також М. Ескардо, Т. Стрейчер: У доменній реалізаційності не всі функціонали є безперервними , опубліковані в « Математичній логіці квартал», том 48, випуск Доповнення 1, стор. 41-44, 2002 .


Я подивився. Це є в "Конструктивізмі з математики", т. 2, розділ 6.10, сторінка 500 Троельстра і Ван Далена. Я думаю, що я викладу це у своєму блозі, оскільки це важко знайти.
Андрій Бауер

Дякую! Що таке ? AC2,0
Neel Krishnaswami

( х Х у Y . Р ( х , у ) ) F Y Xх Х . R ( x , f ( x ) ) A C 2 , 0 A C ( N N N , N )AC(X,Y) є , а потім є . (xXyY.R(x,y))fYXxX.R(x,f(x))АС2,0АС(NNN,N)
Андрій Бауер

Добре, ось половина доказу: math.andrej.com/2011/07/27/…
Андрій Бауер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.