Покажчики для логічних застосунків CS


17

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

Я хотів би отримати деякі вказівки щодо того, куди звертатися до CS-програм, де використовуються важчі за матеріалами логіки. Моїм інтересом були б теорія типів та загальні формальні методи. Чи міг би хто-небудь запропонувати хороші читання минулих вступних книг щодо перевірки моделей та мов програмування?


Я зробив цей CW, оскільки список дуже довгий. Подивіться лише 11 томів Посібника з логіки з інформатики та Підручника з логіки в ШІ.
Каве

Хорошим моментом для початку є наступний документ: - Семюель Р. Бус, Олександр А. Кехріс, Ананд Пілай та Річард А. Шор, « Перспективи математичної логіки в ХХІ столітті », 2001. Зокрема, розділ Сем Бус.
Каве

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

Відповіді:


15

Я коротко переглянув деякі сфери тут, намагаючись зосередити увагу на ідеях, які сподобаються комусь із досвідом передової математичної логіки.

Теорія скінченних моделей

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

Основними інструментами в цій місцевості є місцевість Ханф, місцевість Гайфман та численні варіації ігор Еренфехт-Фрайссе. Теми, що вивчаються, включають інфінітарну логіку, логіку з підрахунком, логіку з фіксованою точкою тощо, завжди з акцентом на кінцеві моделі. Існує робота, присвячена експресивності в скінченно змінних фрагментах логіки першого порядку, і ці логіки мають характеристики через галькові ігри. Іншим напрямком дослідження є визначення властивостей класичної логіки, які переживають обмеження на кінцеві моделі. Нещодавній результат у цьому напрямку від Россмана показує, що певні теореми про збереження гомоморфізму все ще зберігаються над скінченними моделями.

  1. Теорія скінченних моделей , Ebbinghaus і Flum
  2. Елементи теорії кінцевих моделей , Лібкін
  3. Про виграшні стратегії в іграх Еренфехт-Фрайс , Арора і Фагін, 1997.
  4. Теореми збереження гомоморфізму , Россман

Пропозиційний розрахунокмк

Робота з кінця 60-х років показала, що численні властивості програм можуть виражатися в розширеннях логіки пропозицій, що підтримують міркування щодо фіксованих моментів. Modal- обчислення одна логіки розроблена в цей період , який знайшов широке застосування в автоматизованих формальних методах. Багато формальних методів пов'язаний з тимчасової логіки або логіки Хоара стилю і багато що з цього можна розглядати в термінах μ -ісчісленія. Насправді я чув, як сказано, що μ -калькуляція є мовою складання часової логіки.мкмкмк

У своїй роботі, вводячи розрахунок, Козен дав аксіоматизацію і лише довів її звучанням і повнотою для обмеженого фрагмента логіки. Доказ повноти був однією з найбільших відкритих проблем логічної інформатики, поки Валукевич не дав доказ (заснований на нескінченних автоматах). Теорія моделі мк- калькуляції має багато багатих результатів. Подібно до теореми Ван Бентема про модальну логіку, Янін та Валукевич довели, що μ -калькуляція виразно еквівалентна інваріантному фрагменту модіальної логіки другого порядку інваріантної бісуляції. μмкмкмкмк-калькуляція також характеризувалася з точки зору паритетних ігор та автоматизмів над нескінченними деревами. Проблема задоволеності цієї логіки є EXPTIME завершеною, і Емерсон та Ютла показали, що логіка має властивість невеликої моделі. Бредфілд показав, що ієрархія чергування -калькуляції є суворою, тоді як Бервангер показав, що ієрархія змінної також сувора. Важливими класичними інструментами, які використовуються в цій галузі, є теорема Рабіна та теорема детермінантності Мартіна.мк

  1. Результати пропозиційного розрахункумк , Козен, 1983
  2. Рудименти -калькуляціїмк Арнольда і Нівінського, 2001
  3. Повнота аксіоматизації Козена пропорційного калькулятумк , Валукевич 1995
  4. Модальна логіка і -калькулімк , Бредфілд і Стірлінг, 2001
  5. Модальна ієрархія чергування му-числення сувора , Брэдфілд, 1996
  6. Змінна ієрархія му-числення сувора , Бервангер, Е. Гредель та Г. Лензі, 2005

Лінійна часова логіка

Лінійна часова логіка була прийнята від філософської логіки до інформатики для міркувань про поведінку комп'ютерних програм. Це вважалося хорошою логікою, оскільки воно могло виражати такі властивості, як інваріантність (відсутність помилок) та припинення. Теорія доказів часової логіки була розроблена Манною та Пнуелі (та іншими, пізніше) у своїх статтях та книгах. Перевірка моделі та проблема задоволеності LTL можуть бути вирішені як автоматизація над нескінченними словами.

Пнуелі також довів фундаментальні результати щодо LTL у своєму первісному документі, вводячи логіку міркування про програми. Варді та Вулпер дали набагато простішу компіляцію формул LTL в автомати Buchi. Підключення до часової логіки призвело до інтенсивного вивчення алгоритмів для ефективного отримання автоматів з LTL, а також для визначення та доповнення автомати Buchi. Теорема Кампа показує, що LTL з тих пір і доωмкмк

  1. Тимчасова логіка програм , Пнуелі, 1977
  2. Від Церкви та до ПСЛ , Варді, 2008
  3. Автоматико-теоретичний підхід до лінійної часової логіки , Варді та Вулпер, 1986
  4. Temporal Logic реактивних і паралельних систем: Специфікація , Манна і Pnueli
  5. До ієрархії "До" та інших застосувань гри "Еренфюхт-Фрейсе" для часової логіки , Етессамі та Вільке, 2000

Обчислювально-деревова логіка

мк

Проблема перевірки моделі CTL над скінченними структурами полягає в поліноміальному часі. Проблема перевірки моделі для CTL * завершена EXPTIME. Аксіоматизація CTL * була складною відкритою проблемою, яку остаточно вирішили Рейнольдс 2001. Аналог теореми Ван Бентема про модальну логіку та теорему Кампа для LTL наведено для CTL * теоремою Хафера та Томаса, що показує, що CTL * відповідає фрагмент монадичної логіки другого порядку над бінарними деревами. Пізніша характеристика Гіршфельда та Рабіновича полягає в тому, що CTL * експресивно еквівалентний фрагменту MSO з бісумуляцією та інваріантом з кількісною оцінкою шляху.

  1. "Іноді" і "ніколи" не переглядалися: про розгалуження проти лінійної часової логіки , Емерсон і Гальперн, 1986
  2. Про виразну силу CTL , Моллер, Рабінович, 1999
  3. Логіка дерев обчислень CTL * та квантори шляху в монадійній теорії бінарного дерева , Хафер та Томас, 1987
  4. Аксіоматизація логіки дерева повних обчислень , Рейнольдс, 2001

Мови нескінченних слів

ω

ωωω-слови. Більше того, використовуючи елементарну топологію, вони показали, що кожне властивість лінійного часу може бути виражене як перетин властивості безпеки та життєдіяльності. Цей результат має значні практичні наслідки, оскільки означає, що замість того, щоб будувати складні перевірки майна, достатньо створити перевірку безпеки та життєдіяльності. Подальше зменшення показує, що достатньо побудувати перевірку інваріантності та перевірку припинення. Характеристика безпечної життєдіяльності поширилася на дерева Маноліосом і Трефлером, а з недавніх пір на безлічі слідів, в рамках гіперпротекторів, Кларксоном та Шнайдером.

  1. Нескінченні слова: Автомати, напівгрупи, Логіка та ігри , Перрін та Пін, 2004
  2. ω
  3. ω
  4. Про синтаксичні конгруенти для ω - мов , Maler and Staiger, 1993

Автомати на нескінченних словах

Там, де є мови, комп'ютерні фахівці матимуть автомати. Введіть теорію автоматів над нескінченними словами та нескінченними деревами. Надзвичайно сумно, що хоча автомати над нескінченними словами з’явились протягом двох років роботи автоматів на кінцевих словах, ця основна тема рідко висвітлюється в стандартних навчальних програмах з інформатики. Автоматичні дані над нескінченними словами та деревами забезпечують дуже надійний підхід для підтвердження прийнятності для дуже багатої сімейства логіків.

ω

  1. Рішучість теорій і автоматів другого порядку на нескінченних деревах , Рабін, 1969
  2. Автомати на нескінченних об'єктах , Томас, 1988
  3. Автомати: від логіки до алгоритмів , Варді, 2007

Нескінченні ігри

Логічні та нескінченні ігри - це активна область дослідження. Ігрово-теоретичні уявлення з'являються в інформатиці повсюдно в подвійності між недетермінізмом і паралелізмом (чергуванням), програмою та її оточенням, універсальним і екзистенційним кількісним визначенням, модностями коробки та алмазами тощо. Ігри виявилися чудовий спосіб вивчення властивостей різних типів некласичної логіки, перелічених вище.

Як і у випадку з критеріями прийняття автоматів, у нас різні умови виграшу в іграх, і багато хто може виявитись рівнозначним. Оскільки ви запитували про класичні результати, теорема Borel Determinacy та ігри Gale-Stewart часто стримано лежать на тлі декількох ігрових моделей, які ми вивчаємо. Одним із нагальних питань нашого часу було питання про складність вирішення парних ігор. Юрдзінський дав алгоритм вдосконалення стратегії та показав, що вирішення переможця було в перетині класів складності UP та coUP. Точна складність алгоритму Юрдзінського була відкритою до тих пір, поки Фрідман не наділив його нижчою межею експоненції в 2009 році.

  1. Визначення переможця у паритетних іграх - у співавторстві UP ∩ , Юрдзінський, 1998
  2. Ігри для--числення , Нівінський та Валукевич, 1996
  3. Експоненціальна нижня межа алгоритму вдосконалення стратегії паритетності, як ми це знаємо , Фрідман, 2009

10

Едмунд М. Кларк, Орна Грумберг, Дорон А. Пелед: Перевірка моделі . MIT Press 1999 - це приємна книга (для мене) про перевірку моделі.

Глін Вінскель: Формальна семантика мов програмування: вступ . MIT Press 1994 - один із стандартних підручників з мов програмування.

Мордехай Бен-Арі: Математична логіка для інформатики . Springer 2001, можливо, те, що ви шукаєте.


7

Теорія баз даних - це розповсюджене поле, що забезпечує безліч застосувань логіки. Описова складність і теорія кінцевих моделей є тісно пов'язаними полями. Наскільки я можу сказати, всі ці області мають тенденцію використовувати алгебраїчні стилі логіки (слідуючи слідами Бірхофа та Тарського), а не теоретично теоретичні. Однак деякі роботи Пітера Бунемана , Леоніда Лібкіна , Венфея Фен , Сьюзен Девідсон , Лімсун Вонг , Ацусі Огорі та інших дослідників, які працювали в UPenn у 1980–90-х роках, прагнули об'єднати теорію мов програмування та бази даних. Здається, це вимагає зручності обох стилів логіки. Те ж саме стосується і останніх робіт Джеймса Чейніта Філіп Вадлер .

Щодо конкретних довідок, стандартний підручник доступний в Інтернеті для зручного ознайомлення:

  • Серж Абітебул, Річард Халл, Віктор Віану. Основи баз даних , 1995. http://webdam.inria.fr/Alice/

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

  • Ян Ван ден Бусше, Застосування ідей Альфреда Тарскі в теорії баз даних , CSL 2001. doi: 10.1007 / 3-540-44802-0_2

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

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



4

Ключове використання логіки в CS - це логіка програми, яка також називається логікою Hoare.

2(π17)

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

Визначити відповідні фрагменти ZFC нелегко для простих мов програмування, але стає швидше складнішим, оскільки мови програмування набувають більше функцій. Останні кілька років спостерігається значний прогрес у цьому починанні.

Документ «Аксіоматичні основи комп’ютерного програмування » Т. Хоара часто сприймають як серйозне заснування вивчення програмної логіки, її легко читати, і, мабуть, хороший спосіб почати заходити в поле. Ця ж логіка вивчається більш докладно в книзі Вінскеля "Формальна семантика мов програмування", згаданої @vb le.

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

Нещодавній і дуже сучасний текст, який впроваджує логіку програми типово-теоретичним відтінком, є « Основи програмного забезпечення» Pierce et al. Це приведе вас поблизу (а) передового досвіду досліджень з верифікації програм і, як підручник, напевно, дасть уявлення про те, як навчатимуться інформатиці та математиці в майбутньому.

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


3

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

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

Ось цитата Джона Бееса про логіку та інформатику. Я не дотримуюся абсолютно такого ж погляду, тому що я не дуже знайомий з передовою математичною логікою.

Коли я був студентом, мене дуже цікавили логіка та основи математики --- я завжди шукав найяскравіших концепцій, до яких я міг би отримати, і теорему Геделя, теорему Лоенгейма-Сколема тощо. Наскільки я був стурбований, з квантовою механікою та загальною відносністю. [...] Я пам’ятаю, як відчував у той час, що логіка стала менш революційною, ніж в першій частині століття. Мені здалося, що логіка стала галуззю математики, як і будь-яка інша, вивчаючи незрозумілі властивості моделей аксіом Зермело-Френкеля, а не ставити під сумнів основні припущення, що містяться в цих аксіомах і наважуючись шукати нові, різні підходи. [...]

У будь-якому випадку, зараз мені цілком зрозуміло, що я просто не читав потрібних речей. Я думаю, що Рота сказав, що дійсно цікава робота з логіки зараз йде під назвою "інформатика", [...] - тиждень 40, Знайдіть цей тиждень, Джон Беез

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

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

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

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

Стаття опитування

Про незвичайну ефективність логіки в інформатиці

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

  1. Теорія скінченних моделей
  2. Доказ складності
  3. Алгоритмічна дедукція (процедури прийняття рішень для логічних теорій)
  4. Логіка програм
  5. Динамічна логіка
  6. Лінійна часова логіка та її варіанти
  7. Логіка обчислювального дерева та його варіанти
  8. Епістемічна логіка
  9. Теорія баз даних
  10. Теорія типів
  11. Автоматичні дані над нескінченними словами
  12. Категорична логіка
  13. Теорія паралельності та алгебра процесу
  14. Теорія домену
  15. Лінійна логіка
  16. Описова складність
  17. Перевірка моделі
  18. Обчислення з фіксованою точкою та логіка перехідного закриття

1

область сильного перекриття між логікою та інформатикою є автоматизованим доведенням теорем , наприклад [4]. також, наприклад, [1] є використання доказу теореми Бойєра-Мура для перевірки / перевірки теореми Годельса. Іншим останнім головним / вражаючим результатом є нещодавнє завершення перевірки програмного забезпечення чотирьох теорем кольорів (та інших, таких як Odd Order та Feit-Thompson [3]) під час досліджень Microsoft Gonthier. [2]

[1] Метаматематика, машини та докази Геделя (Кембриджські тракти в теоретичній інформатиці Шенкара

[2] Проведений комп'ютером доказ теореми чотирьох кольорів Жоржа Гонтьє

[3] Цікаві алгоритми формалізації теореми Фейта-Томпсона? tcs.se

[4] Де і як комп’ютери допомогли довести теорему? tcs.se

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