Які книги повинні читати всі?


229

[ Хронологія ]


Це запитання має той самий дух, який документи повинні читати всі та які відео повинні дивитись усі . Він просить чудових книг у різних областях теоретичної інформатики.

Книги можуть бути орієнтовані на математику, але, можливо, вам це буде чудово для комп'ютерного вченого. Приклади:

  • Ймовірність
  • Нерівності
  • Логіка
  • Теорія графіка
  • Комбінаторика
  • Дизайн та аналіз алгоритму
  • Теорія обчислень / Теорія складності обчислень

Будь-ласка, присвятіть кожну відповідь книгам тієї самої теми (наприклад, книгам з комбінаторики).

Примітка . Назва може бути оманливою. Ось уточнення: нехай X і Y - дві галузі інформатики. Є книги, які кожен

  • у полі X слід читати.
  • у полі Y слід читати.
  • в обох полях слід читати.

Це питання стосується всіх 3 випадків. Іншими словами, він НЕ специфічний для останнього випадку.

Редагувати: За пропозицією Дай Ле , будь-ласка, підкресліть причину, що вам подобається і для книги.


Пов'язані теми:


Оскільки я не можу відповісти на запитання, я це зроблю тут. Дискретна математика - TTC: Дискретна математика Артура Т. Бенджаміна. Це пакет лекцій на різні теми від теорії набору до графіків та ймовірностей.
Pithikos

Це може бути цікаво порівняти цей список чудових книг із переліком вступної книги з Чи є перелік канонічних вступних підручників, що охоплюють основні галузі інформатики? питання про reddit / compsci. Існує деяке перекриття, але, на щастя, відмінності є досить значними.
Томас Клімпель

Відповіді:


91

Комплексна обчислюваність:

Якщо ви шукаєте останні підручники зі складності. Наступні два повинні бути.

Більшість змісту між цими двома книгами порівнянна. Однак існують деякі ключові відмінності: Голдрайх приділяє більше місця дослідженню концептуальної та філософської основи теорії складності, тоді як Арора / Барак охоплює більш широкий вибір тем, включаючи конкретні моделі складності, квантові обчислення та нижні межі схеми, які в основному відсутні від колишньої.

Ще один варіант, старший, але позачасовий підручник за складністю:

Книга Пападімітріу примітна главами, що охоплюють логіку першого порядку, а також класи SNP, MaxSNP та APX (теоретичні основи твердості наближення), яких немає у сучасних текстах.0

Ще одна (порівняно) стара, але досить помітна класика:

Це одна з небагатьох перших підручників, яка явно включає "Доказову ідею" між "Теоремою:" та "Доказом:", і є одним з найкраще написаних підручників з математики з будь-якої теми. З іншого боку, це лише вступ до складності, присвятивши лише одній главі на 50 сторінок "розширеним темам" (включаючи наближення, ймовірнісні алгоритми, IP = PSPACE та криптовалюта). Як перша книга про складність, або як приклад справді відмінного написання, ця книга чудова .

Скотт Ааронсон пише, що ця книга має "задоволення від популярної книги з інтелектуальним потягом підручника". Він розповідає історії та дає безліч цікавих прикладів та довідок (Гра в життя та безліч інших прикладів для машин, які працюють із Тьюрінга). Це не надто заглиблюється в теорію складності, але має велику широту. Особливо слід зазначити його зв’язки зі статистичною фізикою.


2
Як осторонь зацікавлених у тому, як ці книги порівнюються між собою, я також можу запропонувати цей огляд книг про Арору / Барак та Голдріх, який я нещодавно писав у колонці огляду книг SIGACT.
Даніель Апон

1
дивіться також список улюблених книг про обчислювальну складність Lance Fortnow на Amazon: amzn.com/l/22R1UX0Y9YRT2
Алессандро

5
Єдиний коментар до книги Сіпсера полягає в тому, що він іноді використовує нестандартні імена, коли висвітлює теорію обчислень. Наприклад, він використовує "впізнаваний" замість "напіврозбірливий". Але я здогадуюсь, оскільки підручник настільки широко використовується, він може просто стати на сьогодні стандартним.
Dai Le

4
Насправді, це взагалі чудовий коментар @Dai Le. Я можу подумати про подібні відмінності між Голдрайхом та Аророю / Бараком. Наприклад, Goldreich використовує ім'я а Arora / Barak використовує ім'я , хоча вони обидва говорять про одну концепцію. F N PPCFNP
Даніель Апон

1
Я вважав Сіпсера набагато кориснішим, ніж Пападімітріу для насправді викладання теорії складності, мммв.
Jeff Burdges

49

NP-повнота:

Ну, мабуть, " Комп'ютери та нездатність" Гарі та Джонсона : Посібник з теорії завершеності NP знайдеться серед найкращих книг цього списку.


6
Все-таки найкраще введення в теорію складності після 30 років.
Еміль

1
після десятиліть ця книга все ще є найповнішим переліком повних проблем НП в одному місці, мабуть, майже енциклопедія, і багато дослідників cs, схоже, поділяють цю точку зору
vzn

1
рекомендую це додати до поширених запитань для загального питання, "чи моя проблема X NP завершена?" з відповіддю: "1-й перевірте цю книгу 1-ю, а потім поверніться до нас"
vzn

47

Проектування та аналіз алгоритмів:

Кормен, Томас Х., Чарльз Е. Лейерсон, Рональд Л. Рівест і Кліффорд Штейн. Вступ до алгоритмів.

Р. Мотвані, П. Рагаван. Рандомізовані алгоритми.

Я знайшов цю книгу, запропоновану Райаном Вільямсом у програмі MathOverflow: Algorithm Design від Kleinberg & Tardos .

Ще одна відмінна книга Введення в алгоритми: Творчий підхід по Уди Манбер . Ця книга не є каталогом алгоритмів; швидше, він намагається надати читачеві інтуїцію, щоб "розпізнати математичну структуру в абстрактних задачах". (цитується з огляду)


7
"Вступ до аналізу алгоритмів" Седжевіка та Флайолета чудово.
Джей

Даніель Спілман використовує книгу Кляйнберга та Тардоса під час курсу "Дизайн та аналіз алгоритмів". Я взяв його і дуже полюбив книгу. Я вважаю це набагато доступніше, ніж CLRS.
Алекс Рейнкінг


41

Тип систем і семантика мови програмування:

Типи та мови програмування Бенджаміна Пірса та подальший обсяг Розширені теми у видах та мовах програмування . Вони дають ґрунтовний, але зрозумілий огляд ролі теорії типів у дизайні мови програмування, а також використовують оперативну семантику для вираження семантики мови програмування.


7
Для більш математичного погляду на теорію типів "Лекції про ізоморфізм Керрі-Говарда" Соренсена та Уржичина - чудовий початок, який дає хороший огляд набраних лямбда-калькуляцій аж до обчислення конструкцій і далі.
Домінік Малліган

4
Я б запропонував основи Джона Мітчелла для мов програмування на цю тему. Як і в попередньому коментарі, вона більш математично дозріла.
Артем Пеленицин

2
Оновлення для TAPL. FYI Бенджамін Пірс - один з авторів нової книги "Програмний фонд", в якій використовується Coq.
kunjan kshetri

40

Нерівності:

Ще одна цінна книга для тих, хто в галузі інформатики, хто коли-небудь хоче зв'язати будь-яку кількість (так, всі!): Майстер-клас Коші-Шварца: Вступ до мистецтва математичних нерівностей Майкла Стіла.

Енциклопедична книга на тему - Словник нерівностей . Хоча це не книга для читання обкладинки до обкладинки, добре мати її у своєму розпорядженні. Дивіться також додаток до книги.

Більше того, у Вікіпедії є чудовий перелік нерівностей .

Щодо конкретних тем, ви можете порадитись:


1
Якщо я можу додати посилання на щось, що я сам зібрав (з багатьох різних джерел, включаючи деякі з перерахованих вище), ось чіт-лист загальних нерівностей: lkozma.net/inequalities_cheat_sheet
László Kozma

1
Харді, Літтлвуд, Поля, «Нерівності», дорогоцінний камінь 1930-х (?)
kodlu

38

Цікаво. Ніхто не згадував томів «Мистецтва комп’ютерного програмування » Дональда Е. Кнута . Дуже детальна обробка тем з дуже хорошими вправами.

У цій книзі я знайшов дорогоцінні камені на зразок "вибірки курорту", щоб згадати лише один приклад.


4
TAOCP як і раніше актуальний і Vol. 4А щойно вийшла.
dbasnett

33

Як вже говорив Сільвен Пейроннет, логіка є важливою частиною теоретичної інформатики. Однак вивчити логіку недостатньо з підручників, призначених для чистих математиків. Іншими словами, важливо також вивчити логіку з точки зору "інформатики".

Теорія скінченних моделей

Ми хочемо вивчити прийоми, що стосуються кінцевих структур. Добре відомо, що багато традиційних інструментів з теорії моделей, наприклад, компактність і теорема Левенгайма-Сколема, не застосовуються до кінцевих моделей. Це призводить нас до вивчення теорії кінцевих моделей . Я рекомендую наступні чудові книги:

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

Складність доказу

Ще одна важлива сфера логіки в інформатиці - « Доказова складність» , вивчення триходового взаємозв'язку між класами складності, слабкими логічними системами та системою пропозицій доказування. Розглядаються наступні два пов'язані аспекти: (i) складність доказів формул пропозицій та (ii) вивчення слабких теорій арифметики, званих обмеженою арифметикою .

Аспект (i) має відношення до наступного питання: "Чи існує система пропозицій доказування, в якій кожна тавтологія має доказ полінома розміру за розміром тавтології?"

Аспект (ii) вивчає логічні системи, які використовують обмежене міркування на основі понять з обчислювальної складності. Іншими словами, ми присвоюємо кожному класу складності логічної теорії , де доказово загальні функції в є саме ті функції класу складності . Однією з останніх розробок є нова дослідницька програма під назвою "обмежена зворотна математика", запропонована Стівеном Куком та Пхуонг Нгуєном, де метою є класифікація теорем (цікавих інформатикою) на основі (мінімальної) обчислювальної складності понять, необхідних для їх доведення. .V C V C CCVCVCC

Аспекти (i) та (ii) тісно пов'язані з поняттям пропозиційного перекладу, запропонованим у статті Кука 1975 року , в якій було введено теорію рівнянь для функцій полімеру та показано, як можна перевести теореми в сімейства тавтологій, які мають поліноміальну довжину в розширеній системі доказів Фреге.P VPVPV

Для відмінних опитувань щодо складності доказів я рекомендую наступні дві книги:

Книга Кука і Нгуєна, по суті, є самодостатньою, і все необхідне логічне підґрунтя наведено в розділах 2 і 3. Глава 9 особливо цікава, оскільки автори запровадили надзвичайно простий метод визначення власної теорії для будь-яких класів складності в межах . У цьому методі нам потрібно лише додати одну додаткову аксіому до базової теорії , де аксіома просто констатує існування рішення повної задачі класу складності. Досить дивовижно!V 0PV0

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


32

Рандомізовані алгоритми:

Імовірність та обчислення: рандомізовані алгоритми та ймовірнісний аналіз Майкла Міценмахера та Елі Упффала.

Чудова книга для пояснення основ рандомізованих алгоритмів. Приклади та докази пояснюються дуже чітко, і їх легко дотримуватися. Також вправи дуже цікаво робити.

(відповів Маркос Вільягра)

Аналіз рандомізованих алгоритмів:

Кожен, хто працює в алгоритмах, повинен мати Концентрацію вимірювань для аналізу рандомізованих алгоритмів , яка також доступна для завантаження у форматі PDF тут .


3
Ця книга була запропонована в іншій темі (я думаю, що Суреш). Я вважав це відмінним. Дякуємо Аарону, що згадував його тут.
МС Дусті

29

Криптографія:

Двотомна книга « Основи криптографії » Одеда Голдрейха ( Том 1: Основні інструменти та Том 2: Основні програми ) - відмінна книга на цю тему. (Ранні чернетки доступні на домашній сторінці автора .) Також доступна скорочена версія цієї книги.

Ще одна відмінна книга - Вступ до сучасної криптографії: принципи та протоколи від Katz & Lindell.

Для тих, хто цікавиться математичним фоном криптографії, Вступ до математичної криптографії Гофштейна та ін. це природний вибір.

Інші чудові книги:


Конкретні теми:


2
З моменту їх введення в 1993 р. Випадкові оракули широко використовуються в літературі; спеціально в схемах підпису. Я не знаю книги, яка належним чином висвітлює цю область. Пропозиції вітаються.
МС Дусті

1
Книга про випадкових оракулів була б величезною підмогою. Я не працюю в криптовалюті, але я читав Katz / Lindell спереду назад. З цієї конкретної причини перехід від підручника до криптовалюти був грубим. Також, @Sadeq, з цікавості: Чи є у будь-якої книги, яку ви прочитали, добре висвітлюється перемотування?
Даніель Апон

1
@Daniel: Теза Мартіна Ганьє "Вивчення моделі випадкового оракула" (UC Davis, 2008) є відносно хорошою посиланням на випадкові оракули (хоча ще далеко не повні). Щодо питання "перемотування": я не знаю книги про це, але, думаю, я повністю зрозумів це. Чи можете ви, будь ласка, детальніше розібратися, яка частина здається вам проблематичною? Можна навіть задати його окремою темою.
MS Dousti

@Sadeq, я схильний не починати самостійного питання з цього приводу, тому що це буде трохи більше, ніж "Допомога, що перемотування?" :) Проблемна частина полягає в тому, що перемотування не було в підручнику, використовуваному в курсі криптовалют, який я взяв (тобто Katz / Lindell), тому я ніколи не бачив вступу до концепції. Я знаю, що вона регулярно з'являється в крипто-літературі, але оскільки хтось не активно бере участь у криптодослідженнях, я сумніваюся, що я буду читати достатню кількість статей, щоб отримати чітке розуміння перемотування, лише стикаючись з цим. Можливо, я міг би задати питання про витоки перемотування ...
Даніель Апон

3
@Daniel: Введення моєї книги про одночасне нульове знання пояснює перемотування та труднощі, викликані нею в контексті складання протоколу. Інші джерела: (1) Одід Голдрайх, Гюго Кравчик: Про склад систем підтвердження нульових знань. SIAM J. Comput. 25 (1): 169-192 (1996) та (2) Сінтія Дворк, Моні Наор, Аміт Сахай: Супутні нульові знання. J. ACM 51 (6): 851-898 (2004).
Алон Росен

25

Функціональне програмування

  • Чисто функціональні структури даних по Кріс Окасаки . Більшість книг про структури даних передбачають необхідну мову, наприклад, C або C ++. Однак структури даних для цих мов не завжди добре перекладаються на функціональні мови. Ця книга є однією з найкращих експозицій щодо впровадження структур даних та алгоритмів на функціональній мові.
  • Функціональне програмування: практика і теорія по Bruce J. MacLennan . Незважаючи на свою назву, ця книга більше орієнтована на теорію, ніж орієнтована на практику. Ті, хто читає цю книгу, матимуть набагато кращий погляд на цю тему, ніж ті, хто її вивчає за допомогою спеціального програмування.
  • Перлини функціонального алгоритму проектування по Річард Берд . Зовсім нова експозиція з цього питання, яка використовує підхід до вирішення проблеми та показує красу поля, демонструючи привабливі ідеї в розробці функціональних алгоритмів.
  • Сертифікований Програмування залежних типів по Adam Chlipala . Це один з найкращих ресурсів у навчанні Coq, зокрема, присвячений тому, як автоматизувати сертифікацію програми та доводити теореми, використовуючи системи, засновані на логіці / правилах. Приклади є обширними та простими у виконанні.

21

Алгоритми наближення

Книга Алгоритми наближення Вазірані - найкраща книга на цю тему. Ще одна книга - Алгоритми апроксимації для НП-важких проблем Хохбаума.

Ось порівняння двох рецензентів:

Я використовую книгу Доріт Хохбаум про алгоритми наближення для проблем NP-Hard як орієнтир для моєї роботи. Книга Хохбаума, без сумніву, приголомшлива. Однак формат опитування поставив під загрозу плавний потік на користь об’єднання найкращих людей у ​​цій галузі. Книга Вазірані виправляє це тим, що є такою гладкою та елегантною від початку до кінця. Відмінні набори проблем, прекрасні підказки для більшості проблем, а в кінці книги є розділ, присвячений відкритим проблемам, що є дійсно класною особливістю.

і

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

Нещодавня книга - Розробка алгоритмів наближення Вільямсона та Шмоїса.


21

Комбінаторика

Вступні книги. Будь-яка з наведених книг може послужити відмінним вступом до теми:

Більш досконалі тексти.


21

Комбінаторика

Хочу навести аналітичну комбінаторику Філіппа Флайолета та Роберта Седжевіка. Це забезпечує сильну математичну основу для перерахунку та аналізу алгоритмів. Я також хочу віддати належне Філіппу Флайоле, який помер два дні тому і був чудовим математиком та інформатиком.


20

Перевірка програми


1
Деякі книги (Манна та Апт та ін.) Доволі датовані (Манна з 1977 р. Та Апт та ін. З 1991 р.), Сфера логічної перевірки програм побачила великий прогрес за останнє десятиліття. На жаль, актуального тексту немає в наявності.
Мартін Бергер

@MartinBerger Будь-які підказки щодо того, де можна було б дізнатися про цей великий прогрес, якщо його немає в жодних останніх підручниках?
Мітч

@Mitch Боюся, що ще не було записано в підручниках. Можливо, подивіться частину літератури про інтерактивні інструменти, такі як Ізабель / HOL та Coq. Також подивіться на останні автоматичні інструменти перевірки, такі як "підсумок" Facebook, і теорію, що стоїть за цим.
Мартін Бергер

Huth & Ryan дуже сприятливий для початківців. Для того, хто не дуже знайомий з усією суворою математикою в CS, це вдалий початок. Це перша книга, яку я прочитав про формальну сторону CS і з тих пір мене зачепив! Це також перший підручник, який я фактично закінчив усі читання.
RexYuan

19

Інформаційна теорія

Інформаційна теорія, умовиводи та алгоритми вивчення Девіда Маккея

Інші відомі підручники з теорії інформації можна знайти у Вікіпедії .


Заголовок - «Які книги повинні читати всі?», Тому рекомендація повинна бути вибірковою. Кожен може знайти великий список книг з "теорії інформації" з Amazon / бібліотеки, але якщо у вас є лише 2-3 варіанти, якими вони будуть? Вам слід лише рекомендувати книги чи статті, які ви читали досить уважно і звужуючи до абсолютних фаворитів!
Dai Le

1
@Dai Le: Ви маєте рацію. Я думаю, що список слід звузити. (Я особисто відповідальний за роздуття списку!) Однак це вікі публіка спільноти . Я додав довгий список, який підказує, які кандидати. Будь ласка, обріжте список, щоб включити лише найвідповідніші книги.
MS Dousti

1
@Sadeq: Я боюся, що рідко трапляється, що одна людина скоротить список інших людей. Поки посада все ще перебуває в поточній формі, вона абсолютно нікчемна щодо мети посади.
Dai Le

@Dai: Ти маєш рацію. Але, оскільки я не фахівець з "теорії інформації", я не можу самостійно порізати список. Я можу: 1) видалити список, який я повністю додав (залишивши початковий список), або 2) додати повідомлення до тексту, щоб привернути увагу експерта. Що ти пропонуєш?
MS Dousti

@Sadeq: Я також не працюю над теорією інформації, інакше я б допоміг скласти список. Я знаю, що книгу "Томас М. Обкладинка, Радість А. Томас. Елементи теорії інформації" рекомендується багатьма, включаючи Ленса Фортноу. Але я не впевнений, чи варто його читати чи ні. Я думаю, що ми повинні поважати оригінальний плакат, оскільки книга може бути його найулюбленішою. Тому видалення всього списку - хороший варіант. Я справді вибачаюсь за те, що я занадто відвертий. Ви також можете попросити людей пояснити, чому вони пропонують свої книги?
Dai Le

19

Розподілені алгоритми

Розподілені алгоритми Ненсі Лінч Це класичний текст, написаний піонером розподілених обчислень;

Вступ до розподілених алгоритмів Джерардом Телем Дуже хороший вступ, також підходить для курсів бакалаврату; зосереджена на моделі передачі повідомлень

Розподілене обчислення: основи, симуляції та вдосконалені теми Хагіт Аттії та Дженніфер Велч. Це містить вдосконалені матеріали, придатні для курсів докторантури; обговорюються як моделі передачі повідомлень, так і спільна пам'ять

Проектування та аналіз розподілених алгоритмів Нікола Санторо. Порівняно недавня книга може використовуватися як на рівні бакалаврату, так і на докторантурі; матеріали представлені з акцентом на розробку протоколів


19

Квантові обчислення

Ще дві чудові вступні книги на цю тему:



17

Складність зв'язку:


Складність спілкування Еял Кушилевіц та Ноам Нісан.

Це класична і дуже добре написана книга. Хоча це вже трохи стара, все ще найкраща вступна книга на місцях. Також вправи надзвичайно веселі, і даються саме після пояснення понять, щоб ви могли зафіксувати те, що ви тільки що дізналися.

Частину рандомізованої складності спілкування слід доповнити частинами першої книги.


Складність спілкування та паралельні обчислення Юрая Громковича.

Дуже повно, хоча іноді трохи важко читати. Інтуїтивно зрозумілі пояснення дуже чіткі, і дуже приємні вправи. У другій частині представлені зв'язки з паралельними обчисленнями.


16
  • Книги Matousek & Chazelle про невідповідність є чудовими.

    Майже всі книги Матусека , насправді, до певної міри варто прочитати.

  • Книги Дугласа Веста з теорії графіків ( [1] та [2] ) хороші.

  • Alon & Spencer також відмінний.
  • Pach & Agarwal хороший для дискретної геометрії, як і Sharir & Agarwal, якщо ви перебуваєте в послідовностях DS.
  • Брас, Мозер і Пач книги про відкриті проблеми дискретної геометрії також дуже хороші.
  • Книга Вандербея на LP дуже гарна.
  • Книги Шрівера ( [1] та [2] ) дивовижні.

Ще один варіант, відмінний для булевого аналізу Фур'є (як випливає з назви), що охоплює основи, більш розширені теми та (безліч) додатків, - Аналіз булевих функцій , Райан О'Доннелл (2014). Він також доступний в Інтернеті вільно і тут .
Климент К.

16

Обчислювальна алгебра

Як сказав Шива у цій відповіді , літератури в цій галузі розкидані всюди, без загальних термінологій. Корисні посилання можна знайти за допомогою пошуку «символічних обчислень», «теорії алгебраїчної складності», «комп’ютерної алгебри» або «обчислювальної алгебри». Як запропоновано у відповідях на це питання ,

Обчислювальний аналіз

Цікаве поле також, яке стосується обчислень у реальних функціях. Також відомий як "обчислювальний аналіз" або "обчислювальний аналіз".


16

Комбінаторика

generatingfunctionology , Герберт С. Вільф, є прекрасним введенням в теорію виробляють функцій, написаної гладким чином і упакованої з вправами. Якщо він пише всі свої книги так, я не можу дочекатися початку іншої.

Інтерактивна комбінаторика Річарда Стенлі - чудова довідка (просунута).

Комбінаторика: теми, прийоми, алгоритми Пітера Камерона та запрошення до дискретної математики Матусека та Несетріла - це чудові вступи до комбінаторики.

Прикладна комбінаторика Робертса і Тесмана - це енциклопедичний довідник з прикладної комбінаторики.


14

Логіка:

Це дословно моя відповідь на це запитання .

Знання основної математичної логіки є, на мою думку, плюсом. Ви можете подивитися на дві книги Корі та Ласкара.

Математична логіка: курс з вправами, частина I

Математична логіка: курс з вправами, частина II


Як щодо математичного вступу до логіки Герберта Ендертона?
RexYuan

14

3
Як це порівнюється з "Як вирішити" Г. Полі? Я думаю, що я прочитав пораду про те, що Поля є оригінальним і набагато кращим, але я не впевнений і не можу переробити це на
інтерв'ю

2
Поля Поля «Як її вирішити» (HTSI) стосується іншої тематики, ніж книга Веллемана. Поля - це свого роду роздуми про те, як знайти рішення важких проблем, тоді як Велман - це підручник, як формалізувати рішення, використовуючи конвенції та мову математики. У HTSI є інформація про докази, але вона представлена ​​у вигляді "глосарію" без структури, тоді як Велман пропонує вам систематичну навчальну програму з вправами. Обидва варто прочитати, але одне не замінює іншого.
Nate CK

13

Теорія чисел

Я знайшов кілька книг, які часто цитуються у багатьох працях. Вони відмінно ставляться до цього питання, але деякі з них досить старі. Ось список того, що я пам'ятаю:


Що ви думаєте про книгу Розена чи передруки Дувра?
Марк C

@ Марк: Вони теж хороші. Чому б не відредагувати публікацію, а також додати ці книги?
MS Dousti


11

Теорія доказів

Основна теорія доказів Троельстра та книги Швіхтенберга - це фактичний текст на цю тему.

Докази та типи Гірарда, Тейлора та ЛаФона - це скорочена книга з цього питання, і її версія доступна для завантаження на веб- сайті http://www.paultaylor.eu/stable/Proofs%2BTypes.html


11

Теорія графіка

Для вступу до теорії графів: Вступ до теорії графів Заходом

Більше про теорію графів : Теорія графіків Бонді та Мерті

Вичерпна книга, яка містить нові розробки, а також старі класичні результати в теорії графів:

Теорія графів: Рейнхард Дістель .

Для графіків поверхонь з комбінаторним підходом:

Графіки на поверхнях

А для диграфів:

Диграфи: теорія, алгоритми та програми


1
Існує також Теорія графіків Клода Бержа, одного з основоположників теорії графів. І графіки, і алгоритми Мішеля Міну та Мішеля Гондрана.
Ламін

9

VLSI Design

Я не в апаратній формі. Однак, оскільки FAQ містить VLSI як одне з підполів TCS, я запитав експерта про відомі книги в дизайні VLSI. Ось вони:


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