Вопросы с тегом «turing-completeness»

6
Существуют ли минимальные критерии для языка Тьюринга?
Существует ли набор конструкций языка программирования на языке программирования, чтобы его можно было считать завершенным по Тьюрингу? Из того, что я могу сказать из Википедии , язык должен поддерживать рекурсию или, по-видимому, должен иметь возможность работать без остановки. Это все, что нужно?

9
Почему некоторые языки программирования Тьюринга завершены, но не обладают некоторыми возможностями других языков?
Я столкнулся со странной проблемой при написании интерпретатора, который (должен) подключаться к внешним программам / функциям: функции в «C» и «C ++» не могут перехватывать переменные функции , например, я не могу создать функцию, которая вызывает «printf» с точно такими же аргументами, которые он получил, и вместо этого должен вызвать …

9
Является ли C на самом деле полным по Тьюрингу?
Я пытался объяснить кому-то, что C завершена по Тьюрингу, и понял, что на самом деле не знаю, действительно ли он технически завершен по Тьюрингу. (C как в абстрактной семантике, а не как в реальной реализации.) «Очевидный» ответ (грубо говоря: он может адресовать произвольный объем памяти, поэтому он может эмулировать машину …

5
Что значит быть полным по Тьюрингу?
Я вижу, что большинство определений того, что должно быть полным по Тьюрингу, в некоторой степени тавтологично. Например, если вы Google «что значит быть полным по Тьюрингу», вы получите: Компьютер завершается по Тьюрингу, если он может решить любую проблему, которую может выполнить машина Тьюринга ... Хотя очень четко определено, являются ли …

5
Могут ли обычные языки быть завершенными по Тьюрингу?
Я читал о Йоте и Джоте и нашел этот раздел запутанным: В отличие от Iota, где синтаксическое дерево для строки может разветвляться либо слева, либо справа, синтаксис Jot равномерно разветвляется слева. В результате, Йота не зависит от контекста, но Йот - это обычный язык. Насколько я понимаю, и Йота, и …

7
Все ли тьюринговые полные языки взаимозаменяемы
Обратите внимание, хотя я знаю, как программировать, я довольно новичок в теории CS. Согласно этому ответу Полнота по Тьюрингу - это абстрактное понятие вычислимости. Если язык является полным по Тьюрингу, то он способен выполнять любые вычисления, которые может выполнять любой другой полный по Тьюрингу язык. И любая программа, написанная на …

1
Достаточно ли цикла do-while для полноты по Тьюрингу?
Я знаю, что в императивных языках программирования цикла while-do достаточно в качестве конструкции потока управления, чтобы сделать язык Тьюринга завершенным (что касается потока управления - конечно, нам также нужна неограниченная память и некоторые операторы ...) , Суть моего вопроса такова: имеет ли цикл do-while ту же вычислительную мощность, что и …

5
Почему функциональные языки Тьюринга завершены?
Возможно, мое ограниченное понимание предмета неверно, но это то, что я понимаю до сих пор: Функциональное программирование основано на лямбда-исчислении, сформулированном Алонзо Черчем. Императивное программирование основано на модели машины Тьюринга, созданной Аланом Тьюрингом, учеником Черча. Лямбда-исчисление является таким же мощным и способным, как и машина Тьюринга, что означает , что …


2
Как выполняется правило 110 Тьюринга?
Я прочитал страницу Википедии для правила 110 в клеточных автоматах, и я более или менее знаю, как они работают (набор правил решает, где рисовать следующие 1 или 0). Я только что прочитал, что они завершены по Тьюрингу, но я даже не могу понять, как бы вы «запрограммировали» «правило 110»?

4
Что требуется для универсального аналогового вычисления?
Какие операции необходимо выполнить, чтобы выполнить произвольные аналоговые вычисления ? Достаточно ли будет сложение, вычитание, умножение и деление? Кроме того, кто-нибудь знает точно, какие проблемы можно решить с помощью аналоговых вычислений, но не с цифровыми?

2
Что делает PROLOG Turing-Complete?
Я знаю, что можно доказать, что PROLOG является полным по Тьюрингу, создав программу, которая имитирует машину Тьюринга, например: turing(Tape0, Tape) :- perform(q0, [], Ls, Tape0, Rs), reverse(Ls, Ls1), append(Ls1, Rs, Tape). perform(qf, Ls, Ls, Rs, Rs) :- !. perform(Q0, Ls0, Ls, Rs0, Rs) :- symbol(Rs0, Sym, RsRest), once(rule(Q0, Sym, Q1, …

2
Связь между воротами NAND и полнотой по Тьюрингу
Я знаю, что шлюзы NAND можно использовать для создания схем, реализующих каждую таблицу истинности, а современные компьютеры состоят из вентилей NAND. Какова теоретическая связь между воротами NAND и полнотой Тьюринга? Мне кажется, что схемы затворов NAND ближе к конечным автоматам, чем машины Тьюринга. Моя интуиция заключается в том, что я …

1
Существует ли полная проблема для класса разрешимых задач Тьюринга?
Такие языки, как являются сокращением много-один. Нетрудно видеть, что имеет полные проблемы. С. Шмитц [1] рассматривает некоторые классы между и . Они представляют полные проблемы для этих классов при специально созданных сокращениях.HALTTMHALTTM\text{HALT}_{TM}RE-completeRE-complete\textsf{RE-complete}co-REco-RE\text{co-RE}ELEMELEM\text{ELEM}RECREC\text{REC} Существуют ли полные проблемы для (aka ) относительно более слабых сокращений? Сокращения Тьюринга неуместны, потому что они способны …

2
Предоставляют ли функции высшего порядка больше возможностей для функционального программирования?
Я задал похожий вопрос на cstheory.SE . Согласно этому ответу на Stackoverflow существует алгоритм, который на не ленивом чисто функциональном языке программирования имеет сложность , тогда как тот же алгоритм в императивном программировании - Ω ( n ) . Добавление ленивости к языку FP сделало бы алгоритм Ω ( n …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.