January 27th, 2020

Математики и программирование

Незадолго до появления реального программирования ряд математиков уже начал мечтать о нём. И фантазировать, как оно могло бы быть устроено.

Оттуда, например, «машина Тьюринга» — отличный язык программирования, на котором ни один человек в мире с момента его существования не был в состоянии написать даже очень простую программу. Самый топчик — реализовать что-то типа сложения двух чисел, да и то уверенности в том, что оно правильно работает, так до конца и не появлялось.

Хотя, говорят, эта машина отлично подходит для теоретизирования о программировании, алгоритмах, вычислимости и так далее. Для меня это звучит примерно как: «да, этим автомобилем никто в мире полноценно управлять не может, даже стронуться с места способны лишь считанные единицы, но зато он отлично подходит для размышления о теории управления автомобилями, гоночных соревнований и роботов-водителей».

Откуда берётся вот это «зато отлично подходит» в приложении к штуке, с которой на практике даже простейшие вещи сделать не получается, я могу только догадываться, но подозреваю, что всё дело в том, что «мы попробовали о ней рассуждать, и нас никто не запалил, поскольку никто не смог понять, что тут вообще происходит».

Так и повелось: мы делаем заявления про ту область, которую никто не знает, нас никто не палит, следовательно, наши рассуждения верны.

Collapse )

Чем плоха машина Тьюринга

Граждане тут интересуются, а чего вообще в машине Тьюринга плохого? Ведь это-де — самый простой набор правил, при помощи которых можно реализовать любой алгоритм. Не на таком ли надо изучать «общие закономерности»?

Отвечаю.

Во-первых, «самых простых наборов» сильно больше одного. И вовсе не обязательно, что первый изобретённый будет самым удачным. Ведь «простой» в данном случае означает «минимально необходимое количество правил», а вовсе не «наиболее простые для практического использования правила».

Ассемблер, например, в своей редуцированной форме (то есть без спец-команд, заточенных под наиболее часто употребляющиеся действия, которые реализованы на уровне процессора) тоже очень простой и тоже близкий к «необходимому минимуму». Но на нём вполне возможно написать хоть что-то реально полезное. И таки да, пишут.

Однако, во-вторых, «самый простой по количеству правил» вдобавок вовсе не означает «самый простой для использования и анализа». О нет, тут закономерность совсем даже не такая.

Collapse )

Как проверить научную информацию

Как-то раз мне за неделю человек десять написали личные сообщения примерно с одними и теми же вопросами: «вот я прочитал такую-то статью, где типа про науку, а как мне узнать, правда это или нет?», «как вообще отличить научную правду от антинаучной лжи?», «кого надо спрашивать про это?».

Тогда я что-то не смог собраться с мыслями и всем ответил почти односложно — в духе «ну, тут есть масса нюансов, так всё сразу-то и не расскажешь». В общем, по сути, ушёл от ответа.

Но тут вдруг поимел в комментах краткую беседу с неясным челом, риторически потребовавшим «подтверждающие публикации в реферируемых журналах», и мне вдруг стало кристально ясно, как ответить на этот вопрос — в этот раз уже без ухода.

Так вот, наиболее вероятный ответ для вашей ситуации: вам не надо её проверять. Реально, вообще не надо. Вам объективно абсолютно побоку, правда там написана или нет.

Положим, вы прочитали, что учёный из Франции Василь Пупки́н только то выяснил, что ацтекский жрец Яйцыпоцны на самом деле умер не в 1365-м, а в 1356-м. Правда ли это? Как узнать?

Collapse )