Де дізнатися більше про те, що таке теоретичні інформатики?


15

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

Що таке хороша вступна книга до теоретичної інформатики?

Враховуючи, що таке є. Якщо ні, то звідки повинен почати математик, який має основні знання з інформатики (тобто вони знають основи однієї чи двох мов програмування), якщо вони хочуть зрозуміти, що таке теоретична інформатика? Що ви порадите?

Спасибі!


1
Чудове запитання. Я справді в збитку. Теоретичний КС просто такий широкий і різноманітний, я сумніваюся, хтось намагався обстежити все це в одному місці. Є вступні книги, такі як "Теорія обчислення" Сіпсера або "Алгоритми" Дасгупта, Пападімітріу та Вазірані. Але це як передумови для студентів, і вони не дадуть уявлення про те, про що йдеться "в дійсності" ...
usul

6
Питання є занадто широким. Тоді можна було б однаково запитати: "Де більше дізнатися про те, що таке математика?". Тому слід дивитись на поля TCS, близькі до математики, як теорія складності, криптографія, наближення. Скажімо, складність схеми - це лише частина екстремальної комбінаторики. Книга Сіпсера насправді чудова: це погляд математиків на TCS (невелика частина цього, не потрібно говорити); Сам Сіпсер насправді математик.
Стасіс

2
Майбутній текст Аві Вігдерсона - чудовий ресурс: math.ias.edu/avi/book
András Salamon

Відповіді:


29

По-перше, "теоретична інформатика" означає різні речі для різних людей. Я думаю, що для більшості користувачів на цьому сайті історична карикатура (яка відображає деякі сучасні соціологічні тенденції) полягає в тому, що існують "Теорія А" і "Теорія В" (при цьому між ними не мається на увазі порядок зв’язку): Теорія А складається з теорії алгоритми, теорія складності, криптографія тощо. Теорія B складається з таких речей, як теорія мов програмування, теорія автоматів і т. Д. Залежно від ваших смаків в математиці ви можете віддавати перевагу одному над іншим (або подобатись обом однаково). Я більше знайомий з "Теорією А", тому дозвольте мені навести там кілька посилань:

  • Почніть з книги Сіпсера. Це дасть вам хороше ознайомлення з автоматами, машинами Тьюрінга, обчислюваністю, складністю Колмогорова, P vs NP та кількома іншими класами складності. Це дуже добре написано (на мою думку, це одна з найкращих написаних технічних книг коли-небудь )

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

  • Зважаючи на те, що ви аспірант з математики, основна галузь TCS, якої немає в цих книгах, є теорія алгебраїчної складності, яка часто тісно пов'язана з алгеброю (як комутативною, так і некомутативною), теорією представлення, теорією груп та алгебраїчною геометрією . Тут є канонічний текст, який є Бургіссер-Клаузен-Шоколлахі. Це дещо енциклопедично, тому може бути не найкращим вступом, але я не впевнений, що в цій області є справді вступна книга. Ви також можете ознайомитись з опитуваннями Чена-Каяля-Вігдерсона та Шиплка-Єгудайффа.

Після цього я б запропонував переглянути більш досконалі книги на певні теми, залежно від вашого математичного смаку:

  • Арора-Барак - це більш сучасна теорія складності (продовжується там, де закінчується книга Сіпсера, так би мовити), що дає вам смак прийомів, що займаються (здебільшого поєднання комбінаторики та алгебри)

  • Книга Юкни про булеву функціональну складність робить подібну, але більш глибоку, зокрема, для складності булевих ланцюгів (дуже комбінаторний за смаком)

  • Теорія геометричної складності Дивіться тут або вступ Ландсберга щодо геометрів .

  • У книзі О'Доннелла Аналіз булевих функцій є більш аналітичний Фур'є.

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

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

І тоді є багато інших математичних тем, які з’являються лише в дослідницькій літературі, як, наприклад, зв'язки з пінами, теорія графів, С * -алгебрами (дозвольте лише вказати на гіпотезу Кадісона-Зінгера ), інваріантну теорію, теорію представлення, квадратури, і на, і на. Дивіться також ці пов'язані питання


2
Хорошою початковою книгою для криптографії є ​​Вступ до сучасної криптографії Катц- Лінделла : cs.umd.edu/~jkatz/imc.html - Альтернативний (старший) варіант - Основи криптографії від Goldreich
Даніель Апон

4

Природа обчислень Крістофера Мура та Стефана Мертенса.


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