У нещодавній темі в списку розсилки Агди з'явилося питання про закони, в якому Пітер Хенкок зробив замислене зауваження .
Я розумію, що закони бувають негативних типів, тобто. сполучники, правила введення яких необоротні. Щоб вимкнути для функцій, Хенк пропонує замість звичайного правила застосування використовувати елімінатор на замовлення, funsplit . Я хотів би зрозуміти зауваження Хенка з точки зору полярності.
Наприклад, є дві типи презентації . Існує традиційний елімінатор розколу Мартін-Леф у позитивному стилі:
І є негативна версія:
Ця остання презентація дозволяє легко отримати для пар, тобто. для будь-якої пари (де == означає визначену рівність). З точки зору доказовості ця різниця не має значення: інтуїтивно, ви можете реалізовувати проекції з роздвоєним або навпаки.
Тепер, -типи зазвичай (і, безперечно, я вважаю) сприймаються негативно:
Що дає нам для функцій: λ x . f x = = f .
Однак у цій пошті Генк згадує елімінатор повного розколу (Програмування в теорії типу ML, [http://www.cse.chalmers.se/research/group/logic/book/], стор.56). Це описується в логічній рамці:
Цікаво, що Nordstrom та ін. мотивуйте це визначення, сказавши, що "[ця] альтернативна неканонічна форма заснована на принципі структурної індукції". Це твердження відчуває сильний запах позитивності: функції були б "визначені" їх конструктором, .
Однак я не можу повністю зафіксувати задовільне уявлення цього правила в природній дедукції (або, ще краще, послідовне обчислення). (Ab) використання логічної основи для введення здається тут вирішальним.
Отже, чи є funsplit позитивною подачею -типів? Чи є у нас щось подібне в (незалежному) послідовному обчисленні? Як би це виглядало?
Наскільки загальним / цікавим є теоретики доказу на місцях?