Sunday, August 16, 2009

«Философия науки» - приложение. Мое мнение о «Чёрном Лебеде» Нассима Николаса Талеб. Часть II

Пред. Огл. След.

Приложение основано на заметках
http://alexsmail.blogspot.com/2009/04/i.html
http://alexsmail.blogspot.com/2009/04/ii.html
http://alexsmail.blogspot.com/2009/04/iii.html
http://alexsmail.blogspot.com/2009/05/iv.html

Здесь я начал описывать первый из трёх моментов, на которых я хотел бы остановится. Напомню, что первый момент был асимметрия в нашем понимании окружающего мира. Вот мы выстроили теории, должны ли мы искать её подтверждение или же наоборот попытаться найти её опровержение. Существует явная асимметрия между этими двумя понятиями.

В принципе здесь можно было ставить точку в первой части, однако я хочу дать несколько примеров из математики, которые, как я надеюсь, прояснят мою позицию.

Ниже есть продолжение.

UPDATE:
Примечание: Если вы не видите математические формулы ниже см. сюда. Конец UPDATE-а.

Утверждение. Пустое множество является подмножеством любого множества. Иначе говоря, $\forall A ~ (\emptyset \subseteq A)$.
Доказательство. Возьмём произвольное множество $A~$. Нам нужно доказать, что если мы переберём все варианты элементов с $\emptyset$, то мы их обязательно обнаружим в $A$. Перебор всех вариантов, являясь один из способов доказательства, в данном случае не подходим и вот по чему. Говоря более формально, нам нужно доказать, что для любого $x$, если $x \in \emptyset$, то $x \in A$. Проблема в том, что, согласно определению пустого множества, нет таких $x$, так как $~ \forall x ~ (x \notin \emptyset)$. Если мы не можем перебирать варианты, то что мы можем сделать? Мы можем воспользоваться асимметрией, которую заметил Талеб "перевернув" утверждение. Каким образом? Используя доказательство от противного.
Допустим (от противного), что утверждение, которое нам нужно доказать, что ($\forall x ~ x \in \emptyset\Rightarrow x \in A$) ложно. В таком случае, существует $x$, такой что $x \in \emptyset$, но $x \notin A$. В частности, существует $x$, такой что $x \in \emptyset$. Но это противоречит определению пустого множества (см. выше). Мы пришли к противоречию. Значит наше допущение (от противного) было неверно, а значит было верно утверждение. Что и требовалось доказать.

Вообще говоря, это общая черта доказательств от противного. Именно оно эксплуатирует выявленную Талебом асимметрию. Вместо того, чтобы пытаться верифицировать утверждение, мы пытаемся его фальсифицировать и доказываем, что это сделать невозможно (мы приходим к противоречиям).

Задача $1^2 + 2^2 + 3^2 + \ldots + n^2 = \frac{n(n + \frac12)(n + 1)}{3}$ для всех натуральных значений $n$.
Доказательство. Опять-таки, согласно Талебу, чтобы доказать такое утверждение, нужно обязательно перебрать все возможны значения $n$. Недостаточно убедиться, что утверждение верно, скажем для первой сотни. Также недостаточно сделать случайную выборку из $n$. Одним из способов доказательства, служит использование метода математической индукции. Я не буду здесь приводить ни сам метод не доказательство это равенства (его можно найти здесь, пример 2.2). Важно лишь понимать, что натуральные числа имеют "врождённое свойство", принцип, который помогает сделает "обобщение". При этом сам этот "принцип математической индукции" эквивалентен "принципу существования минимума", т.е. он может быть доказан как теорема. Это является частным случаем, когда проблема индукции успешно решена. Замечу, что этот принцип используется также при построении натурального ряда (он вводится либо в качестве аксиомы, либо выводиться в качестве теоремы).

Утверждение. Все простые числа нечётные.
Замечание. Для простоты будем рассматривать только натуральные числа.
Доказательство. Для начала попробуйте доказать это утверждение сами. Не получается? Тогда я помогу. Натуральное простое число - это такое число, которое не имеет делителей, кроме самого себя и единицы. Нечетное число, это такое число, которое не имеет 2 в качестве делителя.

Для удобства ведён обозначение. $a \dag b~$ обозначает, что "а не делиться на b", т.е. $\neg (\exists x ~ a*x=c)$

На этот раз сначала приведём доказательства, а "доказательство Талеба" оставим на закуску. Итак, возьмём любое простое число, назовём его $p~$, т.е. число, у которого нет делителей, кроме самого себя и единицы. Нужно доказать, что $2 \dag p~$, т.е. для этого числа двойка также не является делителем. Итак, имеем, что $\forall a \quad (1 \lt a \lt p) \quad a \dag p \Rightarrow \forall a \quad (1 \lt a\lt p) \quad a \dag p$, из этого следует, что $\forall a \quad (2\le a \lt p) \quad a \dag p)~$. В частности, вместо $a~$ можно взять $2~$ и тогда получим, что $2 ~ \dag p~$. Что и требовалось доказать.

Теперь попробуем использовать "доказательство Талеба". Возьмём наугад несколько чисел для проверки. Например, 7, 23, 109. Все эти числа являются простыми, в чём легко убедиться, но они также и нечётные. Однако натуральных чисел через чур (бесконечно) много. Всех их перебрать не представляется возможным. Прошлый пример, возможно, развил у вас "интуицию", что утверждение верно, просто нужно подумать как правильно "оформить" доказательство. Итак, попробуем, в соответствии с рекомендацией Талеба "перевернуть" утверждение. Как мы видели выше, это эквивалентно использованию доказательству от противного. Несмотря на то, что выше мы доказали эту утверждение, давайте попробуем его "передоказать" другим способом.

Доказательство другим способом.
Допустим (от противного), что утверждение, неверно. Т.е., что существует чётное простое число... Вы всё ещё продолжаете читать? Перечитайте последнюю фразу. Чётное простое число. Вы такого случайно не знаете. Как насчёт двойки? Это число простое ($2=2*1~$) и чётное. Вместо того чтобы прийти к противоречию, мы нашли контр-пример. Другими словами, нам удалось фальсифицировать утверждение.

Но как так может быть. Одним способом, нам удалось доказать, а другим опровергнуть одно и то же утверждение. Правильно, так не бывает. Это значит, что мы допустили ошибку либо в первом либо во втором доказательстве. Я её допустил намеренно, чтобы вас проверить.

Как же знать, где ошибка? Отвлечёмся от доказательства. Мы имеем утверждение, что все простые числа нечётные. Мы имеем контр-пример, или «чёрного лебедя». 2 безусловно является простым числом и безусловно чётным. Неважно, какое бы доказательством бы не было, этот пример, демонстрирует, что оно неверно. Мы "случайно", в процессе другого способа "передоказать" утверждение, обнаружили, что оно неверно. Имея контр-пример, т.е. сертификат о фальсификации данного утверждения, мы можем быть уверены, что оно неверно.

Очевидно, что доказывать от противного неверное утверждение это нонсенс. Мы никогда не придём к противоречию.

Попробуем перечитать первое доказательство и найти в нём ошибку. Попробуйте перечитать его сначала сами, подставляя $p=2~$. Нашли ошибку?

Давайте повторим процесс доказательстве чуть медленнее. Итак, возьмём любое простое число $p$. Нужно доказать, что $2 \dag p~$ Итак, имеем, что $\forall a ~ (1 \lt a \lt p) \quad a \dag p~$. Это, так сказать, дано. Если $a \gt 1~$ и $а~$ натуральное число, то из этого следует, что $a>=2~$. Здесь подвоха нет. Из этого следует, что $\forall a ~ (2 \le a \lt p) \quad a \dag p~$. Далее, мы легкомысленно подставили $a=2$. В таком случаем, получим $(2\le 2\lt p) \quad 2 \dag p~$. $2\le 2~$ очевидно верно. Но выполняться ли $2\lt p~$? Если $p \gt 2~$, то, очевидно, выполняется. И можем продолжить доказательство. Собственно, это значит, что $2 \dag p~$. Что и требовалось доказать. Но что если $p=2~$? В этом случае выражение будет иметь такой вид $(2\le 2\lt 2) \quad 2 \dag 2~$. Очевидно, что это выражение ложно, т.к. $2 \lt 2~$ ложно, а значит и $(2\le 2\lt 2)~$ ложно; $2 \dag 2~$ тоже ложно. Напомню, это вывод из того, что нам "дано" после того как мы попытались подставить значения в кванторы. В итоге, мы получили ложное утверждение, а значит подстановка наша (последняя $p=2~$) была неправомерна. Значит этот особый случай, который нужно проверить отдельно от основного доказательства. До этого места мы доказали утверждения для всех случаев, кроме случае $p=2~$. В случае $p=2~$, как мы видели выше утверждение не работает и доказательство тоже. Однако, мы можем "исправить" утверждение, которое будет верно.

Исправленное утверждение. Все простые числа, кроме двух, нечётные.

Это утверждение мы доказали выше.

Отсюда мы можем сделать два вывода. Первый, надо тщательно проверять шаги в доказательстве, делать их как можно меньше, чтобы не вкралась случайно ошибка, как произошло тут с двойкой. Второй вывод, непосредственно связан с идеями Талеба.

Вернёмся на секунду к изначальному утверждению. Оно гласило, что "Все простые числа нечётные." Обозначим множеством $V~$ (от verification, верификация) все те значения, при которых утверждено верно. Обозначим множеством $F~$ (от falsification, фальсифицируемость) множество значений, при которых утверждение ложно. Что мы можем сказать о них? Ну, во первых, очевидно, что $V \subseteq \mathbb{N}~$ и $F \subseteq \mathbb{N}~$, так как мы условились, что нашей предметной областью являются натуральные числа. Так же очевидно, что $V \cap F = \mathbb{N}~$, так как это утверждение либо истинно либо ложно. Более того $V \cap F = \emptyset~$, так как утверждение не может быть и истинным и ложным одновременно. Из последних двух равенств следует, что $\bar V = \mathbb{N} \setminus \{V\} = F ~$ и $\bar F = \mathbb{N} \setminus \{F\}= V ~$.

Выше мы доказали, что $F = \{2\}~$ и $V = \mathbb{N} \setminus \{2\}~$. Давайте задумаемся на секундочку.

В нашем примере, количество элементов, которые подтверждают, верифицируют наше утверждение бесконечно, нам и всей жизни не хватить, чтобы проверить их всех. Конечно, мы можем, "случайно" наткнуться на контр-пример, но это будет очень большая удача. Количество же элементов, которые фальсифицирует наше утверждение чрезвычайно мало, содержит всего один элемент.

Однако, способ перебора является не единственно возможным. Можно попытаться доказать это утверждение и иным способом. В случае, если $F = \emptyset~$ эффективным приёмом может оказаться доказательство от противного, можно также попытаться его использовать когда $F~$ чётко выраженную структуру, в самом простом случае конечно, чтобы можно было "исправить" утверждение.

Пред. Огл. След.

3 comments:

  1. ээээ. имхо, не надо под Талеба ложить математику. доказательство от противного работают там, где мы _полностью_ знаем правила игры.

    то есть если мы уверены, что бит может быть только 0 или 1, то если бит не 0, то он 1.

    с раком, экономикой и прочими делами, где _мы не знаем правил игры_ доказательство от противного не применимы.

    ReplyDelete
  2. Как это не надо? Математика - царица всех наук, как ни как. :-)
    Хотя я частично согласен, что обычно мы не полностью знаем правила игры и поэтому "трюки" которые я описал здесь "в лоб" обычно не применимы.

    Я сделал это с двумя целями. Во-первых, показать идею верификации и фальсификации чуть более формализировано, а во-вторых, показать альтернативный полному перебору способу доказательства.

    В экономике мы не знаем полностью правила игры, поэтому в этой области подход Талеба может быть и верен. Но если взять, скажем, классическую физику, например, соударение бильярдных шариков, то там у нас есть такое понимание и нам не надо "расчитывать интегралы по всех кривым движения", чтобы узнать что произойдёт при соударении шаров, достаточно использовать законы сохранения энергии и импульса.

    ReplyDelete
  3. Кстати насчёт битов. Следит сегодня за публикациями в моём блоге, ваш ждёт сюрприз. ;-)

    ReplyDelete