Добре, я думаю, що саме час у нас є ще одне питання про гольф .
Цього разу ми збираємось довести загальновідому логічну правду
Для цього ми скористаємось третьою схемою Аксіоми Юкасевича , неймовірно елегантною сукупністю з трьох аксіом, що є повною над логікою пропозицій .
Ось як це працює:
Аксіоми
Система Лукасевича має три аксіоми. Вони є:
Аксіоми - це універсальні істини незалежно від того, що ми обираємо для , та . У будь-який момент доказу ми можемо ввести одну з цих аксіом. Коли ми вводимо аксіому, ви замінюєте кожен випадок , і "складним виразом". Складним виразом є будь-який вираз, зроблений з Atoms (представлений літерами - ), а оператори мають на увазі ( ), а не ( ).
Наприклад, якби я хотів ввести першу аксіому (LS1), я міг би ввести
або
У першому випадку було а було , тоді як у другому випадку обидва були більше залученими виразами. був і був .
Які заміни ви вирішите використовувати, буде залежати від того, що вам потрібно в доказі на даний момент.
Modus Ponens
Тепер, коли ми можемо представити твердження, нам потрібно зв'язати їх разом, щоб зробити нові заяви. Так, як це робиться в схемі Аксіоми Лукасевіч (LS), відбувається з Modus Ponens. Modus Ponens дозволяє нам взяти два твердження форми
і створити нове твердження
Так само, як і в наших аксіомах і може виступати за будь-яке довільне твердження.
Ці два твердження можуть бути в будь-якому місці підтвердження, вони не повинні бути поруч один з одним або будь-яким спеціальним замовленням.
Завдання
Вашим завданням буде довести закон протипоказань . Це твердження
Тепер ви можете помітити, що це досить звично, це миттєвий зворотній бік нашої третьої аксіоми
Однак це не тривіальний подвиг.
Оцінка балів
Оцінка за цей виклик досить проста, кожен раз, коли інстанціювання аксіома вважається точкою, і кожне використання modus ponens вважається точкою. Це по суті кількість рядків у вашому доказі. Мета повинна полягати в тому, щоб мінімізувати ваш рахунок (зробити його якомога нижчим).
Приклад підтвердження
Гаразд, давайте використовувати це для побудови невеликого доказу. Доведемо .
Іноді найкраще працювати назад, оскільки ми знаємо, де хочемо бути, ми можемо зрозуміти, як ми можемо туди потрапити. У цьому випадку, оскільки ми хочемо закінчити з і це не одна з наших аксіом, ми знаємо, що останнім кроком повинні бути modus ponens. Таким чином буде виглядати кінець нашого доказу
φ
φ → (A → A)
A → A M.P.
Де - це вираз, для якого ми ще не знаємо значення. Тепер ми зупинимося на . Це може бути введено або modus ponens, або LS3. LS3 вимагає, щоб ми довели що здається таким же важким, як , тому ми підемо з modus ponens. Отже, тепер наше схоже виглядає
φ
ψ
ψ → (φ → (A → A))
φ → (A → A) M.P.
A → A M.P.
Тепер дуже схожий на нашу другу аксіому LS2, тому ми заповнимо її як LS2
A → χ
A → (χ → A)
(A → (χ → A)) → ((A → χ) → (A → A)) L.S.2
(A → χ) → (A → A) M.P.
A → A M.P.
Тепер наше друге твердження може бути досить чітко побудовано з LS1, тому ми заповнимо це як таке
A → χ
A → (χ → A) L.S.1
(A → (χ → A)) → ((A → χ) → (A → A)) L.S.2
(A → χ) → (A → A) M.P.
A → A M.P.
Тепер нам просто потрібно знайти таке, що можемо довести . Це дуже легко зробити з LS1, тому ми спробуємо це
A → (ω → A) L.S.1
A → ((ω → A) → A) L.S.1
(A → ((ω → A) → A)) → ((A → (ω → A)) → (A → A)) L.S.2
(A → (ω → A)) → (A → A) M.P.
A → A M.P.
Тепер, оскільки всі наші кроки наші виправдані, ми можемо заповнити , оскільки будь-яка заява, яку ми хочемо, і доказ буде дійсною. Ми могли б вибрати , але я буду вибирати так , щоб було ясно , що він не повинен бути .
A → (B → A) L.S.1
A → ((B → A) → A) L.S.1
(A → ((B → A) → A)) → ((A → (B → A)) → (A → A)) L.S.2
(A → (B → A)) → (A → A) M.P.
A → A M.P.
І це є доказом.
Ресурси
Програма верифікації
Ось програма Prolog, за допомогою якої ви можете перевірити, чи є ваш доказ дійсним. Кожен крок повинен бути розміщений у власному рядку. ->
повинно використовуватися для припущень і -
повинно використовуватися для ні, атоми можуть бути представлені будь-яким рядком алфавітних символів.
Метамат
Metamath використовує систему Łukasiewicz для своїх доказів в обчисленні пропозицій, тож ви можете трохи поскакати там. Вони також мають доказ теореми, яку вимагає ця проблема, яку можна знайти тут . Існує пояснення тут про те , як читати коректуру.
Неймовірна доказова машина
@ Антоній дав мені знати про інструмент під назвою Машина неймовірного доказування, яка дозволяє будувати докази в багатьох системах, використовуючи хорошу графічну систему підтвердження. Якщо прокрутити вниз, ви побачите, що вони підтримують систему Łukasiewicz. Тож якщо ви більш зорово орієнтована людина, ви можете працювати над своїм доказом. Вашим балом буде кількість використаних блоків мінус 1.
((P → Q) → R) → ((R → P) → (S → P))