З'єднання між воротами NAND та повнотою Тюрінга


14

Я знаю, що ворота NAND можуть використовуватися для створення схем, що реалізують кожну таблицю істинності, а сучасні комп'ютери складаються з воріт NAND. Який теоретичний зв’язок між воротами NAND та повнотою Тюрінга? Мені здається, що схеми воріт NAND ближче до кінцевих автоматів, ніж машини Тьюрінга. Моя інтуїція полягає в тому, що я можу створювати триггери, а тому регістри та пам'ять, з воріт NAND, і без обмеженої пам'яті є найважливішою властивістю повних систем Тьюрінга. Я шукаю більш теоретичне чи математичне пояснення чи вказівки на те, що читати.


1
"сучасні комп'ютери побудовані з воріт NAND" Я впевнений, що це неправда. Типові бібліотеки комірок для цифрових конструкцій містять десятки, коли не сто воріт, і вони різняться як за функцією (шукайте ворота AOI), так і за вентиляторами та вентиляторами.
AProgrammer

Ви маєте рацію, я мав на увазі в теоретичному сенсі, що вся цифрова логіка може бути побудована з NANDS, які вважаються функціонально завершеними
bsm

Відповіді:


9

Справді мало зв’язку. Для ретельного розуміння дозвольте мені пояснити зв’язок між програмами та схемами .

Програма (або алгоритм , або машина ) являє собою механізм для обчислення функції. Для визначеності припустимо, що вхід - це двійкова рядок , а вихід - булевий вихід b . Розмір введення потенційно необмежений. Один із прикладів - програма, яка визначає, чи є вхід двійковим кодуванням простого числа.хб

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

Ми можемо перетворити програму у ланцюг P n, що імітує P на входах довжиною n . Відповідна послідовність схем P 0 ,ППнПн не є довільною - всі вони можуть бутипобудованіпрограмою, яка дала n виходів P n . Таку послідовність схем ми називаєморівномірнимконтуром (плутано, ми часто думаємо про послідовність як "єдину" ланцюг P n для невизначеного n ).П0,П1,П2,нПнПнн

Не кожна послідовність схем є рівномірною. Дійсно, послідовність схем може обчислити кожну функцію від рядків до булевих, обчислювальних або нерозбірних! Тим не менш, в теорії складності нас цікавлять такі неоднорідні моделі, в яких схеми обмежені. Наприклад, питання P = NP визначає, що задачі, повні NP, не можуть бути вирішені поліноміальними алгоритмами часу. Це означає, що задачі, пов'язані з NP, не можуть бути вирішені однорідними схемами поліноміальних розмірів. Крім того, передбачається, що задачі, пов'язані з NP, не можуть бути вирішені схемами розмірів поліномів без вимоги рівномірності .

Обчислювальні моделі Тьюрінга - це моделі, які реалізують усі обчислювані функції (і не більше). Навпаки, повні системи воріт (такі як AND, OR, NOT або NAND) дозволяють обчислювати довільні кінцеві функції, використовуючи схеми, виготовлені з цих воріт. Такі повноцінні системи можуть обчислювати повністю довільні функції, використовуючи (необмежені) послідовності схем.


Чи можете ви пояснити, «послідовність схем може обчислити кожну функцію від рядків до булевих, обчислювальних чи нечислимих»? Чи пов'язана їх здатність обчислювати незмінні (з точки зору повноти Тьюрінга) функції обмеження розміру вводу?
bsm

2
@bsm Абсолютно немає обмежень щодо того, яку послідовність схем можна обчислити. Для входів довжининн

Чи можете ви пояснити це, @YuvalFilmus? Як не дивно, що така незмінна функція, як складність Колмогорова, раптом виявиться "обчислювальною" за допомогою мікросхем.
Корт Аммон

2
fн

3

Ви насправді правильні. Комбінаційна логічна схема еквівалентна кінцевому автомату. Ворота NAND не роблять їх більш потужними; їх використовують, тому що просто дешевше побудувати цифрову логічну схему лише з одним видом воріт, ніж побудувати її з усіма різними воротами. Фактично, ворота NAND можуть бути побудовані лише з воріт AND і з ворота NOT. Шльопанці роблять схему Тьюрінга завершеною. Ось зручний ключ:

Комбінаційні схеми ~ Кінцеві автомати автоматичні [Регулярні мови ~ Регулярні вирази ~ Пропозиційне обчислення

мк

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

https://cs.brown.edu/people/jes/book/pdfs/ModelsOfComputation.pdf

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