Застосування метричних структур на постатах / ґратах в теоріїCS


17

Оскільки термін перевантажений, спочатку коротке визначення. Пост - це набір наділений частковим порядком . Враховуючи два елементи , ми можемо визначити x \ vee y (приєднатись) як їх найменшу верхню межу в X , і аналогічно визначити x \ wedge y (meet) (join) як найбільшу нижню межу.Xa,bXxyXxy

Решітка - це поема, в якій будь-які два елементи мають унікальну зустріч і унікальне з'єднання.

Решітки (в такому вигляді) виявляються в теоріїCS в (коротко) теорії субмодулярності (з підмножиною решітки) і кластеризації (решітка розділу), а також в теорії домену (яку я не дуже добре розумію) і статичній аналіз.

Але мене цікавлять програми, які використовують метричні структури на ґратах. Простий приклад виходить з кластеризації, де будь-яка антимонотонна субмодульна функція f:XR (антимонотон означає, що якщо xy,f(x)f(y) ) індукує метрику

d(x,y)=2f(xy)f(x)f(y)

Цей показник широко використовується як спосіб порівняння двох різних кластеризованих наборів даних.

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

Відповіді:


12

По-перше, коментар. Рішення вашого питання залежить від того, наскільки геометрично ви маєте на увазі слово "метрика". Досить часто застосовувати ультраметрику в семантиці та статичному аналізі, але ультраметрика, як правило, має комбінаторну, а не геометричну інтерпретацію. (Це варіант спостереження, згідно з яким теорія доменів має вигляд комбінаторного, а не геометричного використання топології.)

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

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

Справа, яка мені найбільше знайома, називається "ступенева індексація". У цьому налаштуванні ми беремо наші значення істинних решіток як закриті вниз підмножини N , елементи яких ми можемо вільно інтерпретувати як "довжини послідовностей оцінювання, на яких утримується властивість". Зустрічі та приєднання - це перехрестя та об'єднання, як зазвичай, і оскільки ґрати завершені, ми також можемо визначити наслідки Хейтінга. Решітка також може бути обладнана ультраметричною, дозволяючи відстань між двома елементами решітки дорівнювати 2 - n , де n - найменший елемент в одній множині, а не інший.ΩN2nn

Тоді Баехова карта стиснення тоерем говорить нам, що контрактивний предикат має унікальну фіксовану точку. Інтуїтивно це говорить про те, що якщо ми можемо визначити присудок, який містить n + 1 кроків, використовуючи версію, яка містить n кроків, то насправді ми маємо однозначне визначення присудка. Якщо ми покажемо, що предикат дорівнює = N , то ми знаємо, що предикат завжди має місце у програмі.p:ΩΩn+1n=N


ах цікаво. Відповідаючи на ваше запитання, мене все просто хвилює те, що метрика саме така: вона задовольняє нерівність трикутника. Так що ультраметрія ідеально чудова. Однак (і це мій недолік у питанні) мені здається, що використання тут метрики є структурним, щоб отримати доступ до Банаха. Ви не переймаєтесь самим показником (і такі речі, як наближення до показника чи обчислення його, не мають значення). Це так ?
Суреш Венкат

4
Так, ми не прагнемо дбати про показник. Це насправді джерело дискомфорту при метричних або пошагових індексованих моделях - чому ми відстежуємо інформацію, яка насправді не цікавить? Показати, що модель була стійкою за класом наближень до метрики (можливо, консервативної щодо контрактивності), фактично збільшила б комфорт із нею.
Neel Krishnaswami

9

Як альтернатива більш часто використовуваним CPO, Арнольд і Ніват досліджували (повні) метричні простори як домени денотаційної семантики [1]. У своїй дисертації Бонсанг [2] досліджував подвійність між такою денотаційною семантикою та аксіоматичною семантикою. Я згадую це тут, оскільки це дає дуже вичерпну загальну картину.

[1]: А Арнольд, М. Ниват: Метричні інтерпретації нескінченних дерев та семантики недетермінованих рекурсивних програм. Теорія. Обчислення. Наук. 11: 181-205 (1980).
[2]: М. М. Бонсанг Топологічна подвійність у семантиці, том 8 ENTCS, Elsevier 1998.


Фантастичний - я не знав, що ця теза була онлайн!
Neel Krishnaswami

3
Я даю Марчелло (Бонсанг) знати, що про нього говорять. (Можливо, він приєднається.)
Дейв Кларк

5

Ось один (з випадково верхньої частини моєї черги):

Сварат Чаудхурі, Суміт Гулвані та Роберто Люблінерман. Аналіз безперервності програм. POPL 2010.

Автори дають денотаційну семантику імперативної мови простими петлями, інтерпретуючи вирази як функції від значень у метричному просторі продукту. Сенс у тому, щоб визначити, які програми представляють безперервні функції, навіть за наявності "if" та циклів. Вони навіть дозволяють запитання про безперервність, обмежені певними входами та виходами. (Це важливо для аналізу алгоритму Діккстри, який є безперервним за своєю довжиною шляху, але не за фактичним.)

Я ще не бачив нічого, що вимагає метричного простору - здається, це могло бути зроблено з використанням загальної топології досі - але я лише на сторінці 3. :)


1
звичайно, тут немає жодної пори чи ґрат, як у попередній відповіді. саме цього мені не вистачає.
Суреш Венкат

3

Вибачте за додавання іншої відповіді, але ця не пов'язана з моєю іншою вище.

Метричний простір, який я звичайно використовую, щоб подразнювати (чи це виховувати?) Одночасність студентів - це нескінченні сліди. Топологія, яку він викликає, є саме тією, яку Альперн та Шнайдер [1] використовували для характеристики властивостей безпеки та життєдіяльності як обмежених, так і щільних відповідно.

d:Σω×ΣωR0(σ,τ)2sup{ iN | σ|i=τ|i }
σ|iσi2=0

З ретроспективою я усвідомлюю, що в цій відповіді також не вистачає найважливішого інгредієнта ґратчастої структури або структури горщика. Однак така структура решітки присутня при русі на один рівень вгору до того, що Кларксон і Шнайдер називають гіперпротекторами [2]. На момент написання мені незрозуміло, як підняти метрику.

[1] Б Альперн і Ф.Б. Шнайдер. Визначення життєдіяльності. IPL, 21 (4): 181–185, 1985.
[2] М. Р. Кларксон і Ф. Б. Шнайдер. Гіперпрофілі. CSF, p51-65, IEEE, 2008.


k=1nk=n(n+1)/2

@HCH спасибі, я відповідно відредагував свою публікацію та видалив кричущий крик щодо поради щодо форматування.
Кай

Приємна формула!
Hsien-Chih Chang 張顯 之
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.