Проверьте, останавливается ли функция для всех входов - PullRequest
0 голосов
/ 14 декабря 2011

Я хочу написать программу, которая проверяет, является ли функция, скажем, f останавливается для всех значений ее ввода. Короче -

haltChecker = function (arg) => bool

например. в JavaScript

bool haltChecker ( f(a) ){
    return {f halts for all values of a};
}

Решение в JS не требуется, подойдет любой язык.

Спасибо.

Ответы [ 3 ]

2 голосов
/ 14 декабря 2011

Вы можете удивить своего профессора этим .

2 голосов
/ 14 декабря 2011

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

Чтобы привести простой пример, рассмотрим гипотезу Коллатца (на самом деле, это плохой пример, поскольку не доказано, что она неразрешима - но она демонстрирует, что проблема заключается втяжело :))

0 голосов
/ 14 декабря 2011

Это также известная проблема Остановки , которая не может быть решена в этой общей форме. Лучшее, что вы можете сделать, - это написать программу, которая может возвращать значение true, если функция останавливается для всех входных данных, но она также может работать бесконечно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...