Тривалі помилки в інформатиці


26

Це моє перше запитання про стекстерию, тому не будьте занадто грубими, якщо я якось порушую етикет)

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

Моє запитання - чи можете ви навести кілька видатних прикладів таких помилок в інформатиці? Я не знаю, щось на кшталт "Доктор X довів у 1972 році, що робити Y не можна менше, ніж за O (log n), але в 1995 році виявилося, що він насправді помилявся".


13
Не видатний приклад: алгоритм співставлення двопартійних даних за допомогою Karp, Vazirani & Vazirani (1990) помилився в одній лемі, яку було виявлено приблизно через 15 років.
Jagadish

2
@shabunc на ці запитання запитують список відповідей, і тому тег спільноти-вікі підходить для цього.
Суреш Венкат

4
також це питання пов'язане: cstheory.stackexchange.com/questions/3616/…
Suresh Venkat

2
Якщо запитання про помилки є нечесним, саме ваше запитання є нечесним, а уникнення слова "помилки" в заголовку не є рішенням.
Цуйосі Іто

3
Відповідна публікація в блозі Математика схожа на фондовий ринок .
Pratik Deoghare

Відповіді:


28

Ганебним прикладом обчислювальної геометрії є невірне доведення теореми про зону для розташування гіперпланів, опублікованих Едельсбруннером, О'Рурком та Сейделем [FOCS 1983, SICOMP 1986]. Доказ також міститься в підручнику з обчислювальної геометрії Едельбруннера 1987 року.

Теорема про зону: У будь-якому розташуванні гіперпланів у загальна складність всіх клітин, що перетинає будь-яку гіперплощину, становить .R d O ( n d - 1 )nRdO(nd1)

Теорема про зону є ключовим кроком у доказі того, що стандартний рекурсивний поступовий алгоритм для побудови розташування гіперплощин за працює за час .R d O ( n d )nRdO(nd)

У 1990 році Раймунд Сейдель виявив, що опублікований доказ був невірним, після того, як студент оскаржив його на тонкому технічному пункті в класі обчислювальної геометрії. Тим часом була розроблена величезна література про пошук гіперплана / напівпростору / симплекс / напівалгебраїчного діапазону, яка покладалася на час побудови для домовленостей, які, в свою чергу, спиралися на теорему зони. (Жоден із цих авторів не помітив помилку. Реймунд навчив опублікований "доказ" детально кілька років, перш ніж його оскаржували.)O(nd)

На щастя, Едельсбруннер, Сейдель і Шарір майже одразу знайшли правильне (і набагато простіше!) Доказ теореми про зони [Нові результати та нові тренди в CS 1991, SICOMP 1993].


@ Jɛ ff E, це чудовий приклад, дякую!
shabunc

4
Ви випадково знаєте, хто такий розумний студент?
Суреш Венкат

4
Ні, я ні. Раймунд розповів мені історію> 15 років тому, коли я був у Берклі; якщо він сказав мені ім'я студента, я давно забув. (І, мабуть, так має і Раймунд.) Документ SICOMP 1993 також не згадує студента.
Jeffε

10

Протокол криптографії відкритого ключа Needham-Shroeder, 5-рядковий протокол, виявився небезпечним через 17 років після його опублікування. Це улюблений приклад людей з верифікації для того, щоб робити офіційний аналіз криптопротоколів.


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

1
погодьтеся з MCH, криптопротоколи - тонка інша історія.
shabunc

6
У цьому протоколі є дві різні концепції: схема шифрування та протокол зв’язку. Автору було відомо, що можуть бути атаки на схему шифрування, але вони обговорили безпеку протоколу зв’язку і зробили висновок, що це безпечно: "Ми припускаємо, що зловмисник може вставити комп'ютер у всі шляхи зв'язку, і, таким чином, може змінити або скопіювати частин повідомлень, відтворення повідомлень або випромінювання неправдивих матеріалів. Хоча це може здатися надзвичайним видом, це єдиний безпечний при розробці протоколів аутентифікації "І напад має тип" людина в середині ".
Loïck


8

Існували домисли, які виявилися хибними (наприклад, вбудовування метрики негативного типу, спростованих Хотом і Вишном), але нічого поганого в тому, щоб подати помилкову гадку, адже це лише здогадка.

ϵϵkk

PNP


+1 для Фейнмана. Чи можете ви надати більш детальну інформацію про Фейнмана та П проти НП?
бекко

2
Запитайте Скотта Ааронсона, він добре знає цей матеріал.
MCH

2
Дивіться цю розмову TED . Але думка, що щось очевидне, нічого не підтверджує і не приносить користі.
Pratik Deoghare

6
@MCH: Вірив у ці речі Фейнман чи ні, я не думаю, що він є відповідним прикладом. По-перше, обидві ці твердження вважаються правдивими, по-друге, він ніколи не стверджував, що це підтверджував.
Joe Fitzsimons

2

7

"Я був шокований, дізнавшись, що двійкова програма пошуку, яку Бентлі виявила правильною і згодом перевірена в Розділі 5 Програмування Жемчугів, містить помилку. Як тільки я скажу вам, що це таке, ви зрозумієте, чому він уникнув виявлення протягом двох десятиліть. Щоб ви не думали Я вибираю Bentley, дозвольте мені розповісти, як я виявив помилку: Версія двійкового пошуку, яку я написав для JDK, містила ту саму помилку. Про це повідомлялося Sun недавно, коли він зламав чиюсь програму, після того, як зачекав дев’ять років чи так ".

-

Джошуа Блох "Додаткове, зайве - читайте все про це: майже всі бінарні пошукові запити та об'єднання порушені" 2006


7
Це насправді не помилка в алгоритмі, а помилка в реалізації. Алгоритм правильний; проблема полягає в тому, що тип "int" насправді не може мати справу з довільними цілими числами.
Аарон Рот
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.