Category: it

Category was added automatically. Read all entries about "it".

Компьютерная философия бытия

Жизнь как компьютерная игра.



https://palaman.livejournal.com/441239.html

Мнение читателя:

> Материя и законы природы - это одно и то же. Я имею в виду не наши ограниченные представления о законах природы, а реальные, непознаваемые ограниченному уму человека. Материя играет по правилам материального мира не потому, что её заставили, а потому что правила составляют её суть. Правила — и есть "материя".
В такой трактовке мы можем устранить материю как избыточное понятие и говорить только о правилах. Кто-то создал и запустил эту систему правил, или она создала себя сама (что именно случилось, и как это произошло, совершенно не важно для нашего разговора), и мир выполняет само-вычисление. Вселенная — это формула в процессе расчёта.


Мой ответ:

В этой модели предполагается, что поток времени, внутри которого производятся расчеты, и поток времени внутри самой вселенной - это одно и то же. Компьютер вычисляет состояние Вселенной в каждый следующий момент синхронно с наступлением этого самого момента.
В этом проявляется существенная ограниченность данной модели.

Когда я как писатель пишу роман, то время, в котором я его пишу, и время, внутри которого живут мои герои - это два разных потока времени. Если Вселенная вычисляется неким компьютером по упомянутым Вами "правилам", то время внутри Вселенной и время, внутри которого совершается вычисление - это два разных времени. Расчет одной секунды нашего мира может занимать миллиард лет работы компьютера или наоборот - миллиард лет жизни Вселенной просчитывается за одну секунду.

Более того. Релятивистская теория (Эйнштейна) подталкивает нас к мысли, что "потока времени" как такового не существует. Время - это всего лишь четвертая координата, а "поток" возникает лишь в нашем восприятии. Так мы переживаем время (линейно), но объективная природа времени вовсе не такова.
Это значит, что и считать нашу Вселенную надо одновременно всю. Её прошлое, настоящее и будущее - это одна задача для счета. Именно так и придумывает писатель свой роман. Всё одновременно. То есть, поток времени писателя и время внутри романа - это совершенно разные вещи. Рано или поздно создатели "компьютерной" философии бытия дойдут до этой простой и очевидной мысли. Но если так, то работа вычисляющего нас компьютера есть нечто мгновенное или, наоборот, вечное. В любом случае, это нечто вне нашего времени, не имеющее к нашему времени никакого отношения.

Это важный нюанс, его надо понимать.

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

Но есть и ещё более важный нюанс: Программист может играть со своей программой, менять её на ходу. Более того, Он может стать одним из героев этой Суперкомпьютерной Игры, войти в свой собственный мир, как это и сделал Иисус Христос, Программист Вселенной, Логос, ставший человеком.

> Это то, во что вы верите?

То, во что я верю, можно выразить разными способами. И с помощью архаичных слов, произнесенных ещё в Античности, и с помощью самых современных и модных слов. Например, для этой цели удобен язык объектно-ориентированного программирования, специально разработанный теми, кто хотел создавать вирутальные миры, и в этом отношении волей-неволей должен быть уподобиться Творцу, создавшему мир.

> В свете изложенного, в чем вы видите свой (ну или не только свой, верующих, или людей вообще...) смысл жизни, причину и цель существования и т.п. К чему это всё идет в целом и в чем наша роль?

Смысл нашего теперешнего существования состоит в том, чтобы установить контакт с Программистом и выяснить у Него лично, для чего же Он нас создал.

> Если бы Программист хотел, чтобы мы об этом знали, то мы бы знали уже́.

Все люди различны и ставят перед собой разные цели. Есть люди, которые это узнали уже́. Есть те, кому это ещё предстоит. А есть и такие, кто никогда не попытается пойти в этом направлении.

> Разве программист не мог сразу ИИ настроить?

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

> Как у вас получается вписать свободную волю в математическое выражение?

Ка Вы сами (верно) сказали чуть выше, под "программой" мы подразумеваем не "математические выражения" и вообще "не наши ограниченные представления о законах природы, а реальные, непознаваемые ограниченному уму человека", в число которых входит и свободная воля - то, что Сам Программист не предопределяет, а только предвидит. Свободная воля в некотором отношении ставит нас на равных с Программистом, создавая для нас принципиальную возможность понимания и общения с Ним. Для животных, к примеру, принципиально невозможного.

Смотрите также:

Иерархия "существований" или Попытка выразить всё-всё-всё в одной заметке.

Снова Античная философия. Уровни онтологии.

Априорный критерий Истины (тропос: дискурс и гламур)

Роскомпозор, коза и капуста

В связи с баловством Роскомнадзора я последнее время снова вспомнил о своем старинном увлечении криптографией. И хочу поделиться с читателем тем, что знаю. Ничего особенного в моих знаниях нет, всё это специалистам хорошо известно. Так что в данном случае я выступаю в роли популяризатора. (Немного непривычная для меня роль.)

Итак.

Вот задача, с которой всё началось.

Мы должны обменяться сообщениями у всех на глазах (например, в эфире или в Интернете) так, чтобы ты меня понял, а кроме тебя никто меня не понял.
Если мы заранее договорились о ключе, то проблемы поначалу не будет. Однако всегда пользоваться одним и тем же ключом опасно. И потому теперь стоит задача похитрее: как передать друг другу новый ключ у всех на глазах, чтобы никто ничего не узнал, кроме тебя.

Эту задачу никто не мог решить тысячелетиями. Во время войны британцы читали немецкие шифровки, потому что как-то узнали ключ к шифру. (Считается, что раскрыли с помощью протокомпьютера, но скорее всего просто нашпионили, как и подобает пиратам.) Если бы немцы умели делать то, что сейчас расскажу, то Вторая мировая война могла бы пойти по-другому. (Хотя кончилась бы так же; шансов на победу против Британии+США+России у Гитлера не было.)

Представьте себе: тысячу лет никто никому не приходило в голову, как это сделать. А в XX веке, в 60-е годы, математики придумали! Я считаю, это одно из главных достижений человечества в XX веке, наряду с атомной бомбой и полетом в космос.
Если бы этого не было, то не было бы и Интернета, потому что в Сети все происходит у всех на глазах, и без шифров тут можно было бы говорить только о погоде. Ничего серьезного сделать было бы невозможно. А значит, не вкладывались бы большие деньги. А значит, всё это не развивалось бы так быстро и бодро.

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

Решение задачи, как и все гениальное, просто.
Помните задачу про волка, козу и капусту? Как их перевести на другой берег, если в лодке только есть место лишь для чего-то одного? при этом волк съест козу, а коза - капусту, если оставить их без присмотра.
Решение знают все!
Сначала везем козу, потом везем капусту, потом забираем козу назад (чтобы она не съела капусту), потом везем волка, потом наконец везем козу. Семь раз придется переплыть реку, зато никто не пострадает.

Так вот, решение Проблемы шифра очень похоже на решение этой задачки!

Опишу его на таком примере.
Вот я высылаю тебе письмо в ящичке, который закрыт на ключ. Ключ - это шифр.
Ключа у тебя нет, открыть мое письмо ты не можешь.
Тогда ты закрываешь ящичек на второй ключ, который остается у тебя, и высылаешь его обратно мне. Твой ключ остается у тебя, и открыть ящик теперь я не могу. Собственно, мы оба теперь не могли бы его открыть.
Получив назад свой ящичек, закрытый на два ключа, я отпираю свой ключ и снова высылаю его тебе. Ящик теперь закрыт твоим ключом, и отпереть его никто не может кроме тебя.
Получив мое послание второй раз, ты отпираешь замок и читаешь мое послание.

Профит!

Произошло нечто таинственное и не укладывающееся в голове. Мой ключ остался у меня, он тебе по-прежнему неизвестен. Твой ключ по-прежнему неизвестен мне. Все происходило у всех на глазах. Но никто кроме нас с тобой не знает, что же там было, в том ящичке.
А был там временный шифр, которым мы будем пользоваться во время текущего сеанса связи. А в следующий раз снова сыграем в волка, козу и капусту. И так каждый раз у нас будет новый ключ - так что содержимое нашей переписки так и останется неизвестным компетентным органам.

Примерно так и работает современный интернет.

Понравилось? Или я зря занялся не своим делом (популяризацией)?

UpDated:
Если понравилось, читайте продолжение
Сеанс чёрной магии с полным разоблачением
а также (внимание, много цифр!)
Шифрование методом квантовой телепортации:)

Блокчейн: глобальная бухгалтерия

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

Но! стать обладателем биткойнов можно, естественно, и не занимаясь майнингом. Можно просто купить биткойны у другого человека. На этом и основана возможность использования биткойнов в качестве денег. Биткойны можно менять на обычные деньги или на какие-то материальные ценности, а можно и играть на их курсе, продавая их в момент повышения их курса и покупая в момент понижения.

Но как именно оформляется сделка?

Вся фишка в том, что при такой сделке не нужен посредник. Это совершенно нетривиальная штука, и с первого взгляда непонятно, как вообще это возможно - заключать сделки без посредника. А вот, можно. Умные люди придумали. И мне кажется, из этой задумки и родилась идея "ничьих" денег, не контролируемых никаким государством и никакой организацией.

Как это делается, я сейчас объясню. Но сначала я хочу подчеркнуть нетривиальность идеи.
Смотрите! владение биткойнами абсолютно анонимно. Ты нигде не оставляешь своих паспортных данных. Ты просто входишь в Сеть, и анонимно распоряжаешься своим счетом. Если при этом ты ещё и пользуешься TOR-ом или другим средством, препятствующим вычислить тебя по активности в Сети, то анонимность твоя гарантирована. В сущности, ты - это твой секретный пароль. Если ты доверишь свой пароль другому человеку, то он будет так же свободно распоряжаться деньгами на твоем счету, как и ты сам. Причем никакое государство его за это наказать не сможет и не захочет. Ведь пользование биткойнами - это частное дело пользующихся, они здесь действуют на свой страх и риск и не имеют никаких гарантий кроме математических! Но вот, оказывается, что математика порой может обеспечить более надежные гарантии, чем государства и спецслужбы.

Делается это просто: чтобы продать кому-то биткойны, ты должен составить и пустить в Интернет специальный файл, в котором указано, что столько-то принадлежащих тебе койнов переходят в собственность такого-то. При этом и ты, и он выступаете в Сети под условным "именем" вроде 1D24hQA9n8sTihpFQcAXHUYgnUQU4t2JBA Кликнув на это "имя", Вы можете узнать всё о состоянии счета данного пользователя и обо всех когда-либо совершенных им сделках - но Вы не можете узнать, кто же именно, какая человеческая личность скрывается под этими данными. Такой вот парадокс: с одной стороны, полная анонимность, а с другой полная открытость всей бухгалтерии. А как же иначе? Только полная открытость бухгалтерии твоего визави и может гарантировать, что у него есть деньги и что он действительно имеет возможность заплатить то, что он заплатил.

Где же хранятся эти данные? Везде! Они есть на компьютере у всякого майнера.
В прошлой заметке я рассказал, как майнеры добывают новые койны, а в этой я объясняю, в чем состоит их (майнеров) полезная общественная функция. Вот в чем: они ведут бухгалтерию! У каждого майнера хранится информация обо всех зарегистрированных когда-либо сделках. И заветная мечта майнера заключается в том, чтобы продолжить эту книгу, вписать в неё новый лист. Как я уже разъяснял в прошлый раз, составить этот лист так, чтобы он был оформлен по всем правилам - нерешаемая задача, решить которую можно лишь путем перебора вариантов. А вариантов-то безумно много, на год работы для современного компьютера. Но компьютеров в майнинге задействовано много, и кому-то обязательно повезет. Повезло тебе - получаешь новые биткойны, а человечество получает новый лист в глобальной бухгалтерской книге. Не повезло тебе - в ближайшие десять (в среднем) минут повезет кому-то другому. А твой комп быстренько впишет в свою память этот новый лист - и тут же примется лихорадочно перебирать варианты для следующего, надеясь на удачу. Это и есть майнинг, если глядеть на него со стороны бухгалтерии.
Вот, например, как выглядит лист такой всемирной бухгалтерии, а именно Блок номер #445367. Такие листы называются "блоками", а последовательная цепочка этих блоков, собственно говоря, и называется "блокчейн".
Если кликнуть по ссылке, сначала (наверху) идёт какая-то статистика - это просто для удобства обозревателей, в состав самого Блока #445367 она не входит. Первая запись, составляющая собственно бухгалтерию - это запись о том, что господин 1JVHw9iyesn9CSTDgbmKgSyyZoH9CFUFaP получает свои денежки за проделанную по составлению этого блока работу.

Итак, чтобы перечислить свои биткойны другому человеку, Вы должны просто разослать по Сети документ с указанием суммы и "имени" адресата. Суть же дела в том, что этот документ никто не может составить кроме вас. Потому что для этого необходимо знать секретный "пароль".

Это очень интересная штука - электронный документ, который невозможно подделать. Его можно сколько угодно копировать, но только копировать. Его невозможно сфабриковать, потому что под ним стоит уникальное сочетание символов, называемое "электронной подписью".
Электронная подпись - это ужасно остроумная штука. Это некоторое сочетание символов, которое невозможно вычислить, если не знаешь тайного пароля. Невозможно подделать - но в то же время совсем нетрудно проверить, правильно ли составлена данная подпись. Вот такой вот математический фокус. Если не знаешь пароля, то вычислить эту подпись можно только одним способом: так же точно, как добываются койны. То есть, путем тупого перебора вариантов. Только вот вариантов этих на сей раз оказывается слишком много. Чтобы накопать новые койны, компьютер должен работать целый год. А чтобы подобрать подпись, не хватит никакого времени: речь там идет о сумасшедших сроках с многими десятками нулей.
Вот такая вот интересная фишка. Но на самом деле все ещё круче. Правильность подписи под документом зависит не только от того, кто его подписал, но и от содержания самого документа. Если изменить в документе хотя бы один знак, старая подпись сразу же делается неподходящей.

Электронная подпись - это функция от содержания документа (включая видимую всем Вашу анонимную "подпись") и от секретного пароля. Но для проверки правильности подписи не нужно знать секретный пароль, достаточно знать лишь известную всем "подпись". (Почему? потому, что она вычисляется на основе этого пароля.)

(Чуть подробнее о математическом аспекте дела читайте в посте уважаемого gryzchick Комментарий по поводу электронной подписи!)

Таким образом, сам по себе тот факт, что в природе существует этот документ, означает, что его составил человек, знавший Ваш тайный пароль. Иначе он просто не мог бы его составить. Как это выглядит: пример правильно подписанной сделки.
Вот такая вот интересная идея: документ, который невозможно подделать. При этом проверить его подлинность может любой!

Теперь я могу уточнить ту информацию, которую изложил раньше, в заметке Электронное золото: как добывают биткойны. Там я говорил, что майнер составляет некий документ. Теперь я объяснил содержательную часть этого документа. Это очередная страница глобальной бухгалтерской книги.

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

Продолжение:

О силе слов


PS Прошу читателей не скрывать о меня, если моё повествование сделалось занудным.

Электронный президент

Оригинал взят у schegloff в А понимают ли это ведущие интеллектуалы планеты?
В то время как американский белый средний класс выбирает себе Трампа, американские же ученые и инженеры создают "закрывающие" технологии. Маск анонсирует автомобили, заправляющиеся прямиком от солнца, и черепичные крыши, с избытком снабжающие дома электричеством (и тем самым закрывает всю отрасль передачи бытовой электроэнергии); Гугл производит роботов-водителей (закрывая тем самым не только таксистов, но и водителей большегрузных грузовиков, а вместе с ними и всю американскую придорожную инфраструктуру); IBM и другие разработчики искусственного интеллекта предлагают уже более квалифицированных, чем живые люди, юристов и врачей (закрывая самые выгодные на сегодня профессии).

Единственное, чего пока не производят инженеры - это искусственных социальных работников, топ-менеджеров, чиновников и президентов США. Но явно не потому, что очень уж сложно сделать; скорее, потому, что работники этой отрасли могут очень сильно возразить против ее "закрытия". В отличие от перечисленных ранее работяг.

В общем, пока мы тут радуемся территориальным приобретениям (предполагая, что если не пускать роботов на Дамбас, там останется работа для людей), калифорнийские американцы уже приготовили человечеству сюрприз: рабочие руки (даже китайские) больше не нужны. Современные технологии еще при жизни теперешних взрослых людей могут обеспечить человечество всем необходимым, практически не требуя от него какой-либо занятости. Либо 2-3% работающих, либо работать будут все, но по 15 минут в сутки. Все остальное время люди будут совершенно свободны.

Так вот, проблема заключается в том, чем они займутся в это свободное время. Лично мне кажется, что займутся они дележом власти, но я готов взять поправку на собственную ангажированность.

Это были слова Щеглова. А я вот что думаю:

Я сразу задумался о войне программистов. Получается, главный пролетарий на земле теперь - программист.
Воевать теперь будут роботы, причем людям там будет делать нечего, только сдаваться. Роботы будут воевать с роботами, и побеждают те, у которых программа круче. А программа - от программиста. Еще важно, чтобы робот был хорошо сделан, но хороший проект будет составляться компьютером, и опять главный человек - программист.
Сегодня нет роботов-президентов, а завтра будут. Ну, не роботы-президенты, а круче: электронные системы управления людьми. Роботы-полицейские, которые какого хошь человека найдут и и заарестуют, автоматически вынесут приговор и приведут в исполнение. Власть предержащим незачем и руки марать.
Короче, вся система управления миром - это программисты. Кто контролирует программистов, тот владеет миром. И та властная группировка, которая имеет более крутых программистов, побеждает другие группировки. Потом раскол внутри, междоусобица и возобновление войны.
Значит, главное содержание будущей человеческой истории - это борьба между собою специалистов по искусственному интеллекту - и стоящих у них за спиной властных группировок, которые держат руку на пульсе, чтобы программисты их самих не уконтрапупили.

Интересный комментарий:

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

Так что, если все будет идти в том же направлении, основной работой большинства людей в будущем станет разглядывание картинок и писание к ним комментариев. И это будет не какой-то синекурой, а важнейшей деятельностью, без которой роботизированная цивилизация не сможет существовать. Естественно за это будут платить (примеры есть уже сейчас - подписи в помянутой базе с картинками делали специально нанятые люди), а исторические сведения про то, что когда-то пользователи Фейсбука сидели в нем бесплатно, будут восприниматься примерно так же, как мы воспринимаем рассказы про бесплатную работу рабов в рабовладельческих обществах.

Вот настоящая живая наука

http://ithappens.ru/story/7693

Цитирую:

Давно это было. Наехал на меня начальник: мол, вы что-то делаете-делаете, а ни хрена не видно. Ну, я в сердцах слил статистику из репозитория, построил графики и всякие аппроксимации методом наименьших квадратов и малость охренел сам. Вот настоящая научная работа на академическом уровне. Если бы я был академиком, я бы сделал все, чтобы продолжить эти исследования.

Написание проекта можно рассматривать как переходный процесс из состояния 0 (ничего нет) в состояние 1 (проект готов). Из курса ТАУ я ещё помнил дифуры второго порядка для затухающих колебаний, но увидеть такой график, разглядывая динамику количества строк в проекте, не ожидал. Шутки ради по той же схеме проанализировал коммиты всех подчинённых — картина та же, хоть и менее явная. Потом поднял статистику фиксации багов и нашёл аналог длины свободного пробега молекулы в газе.

В общем, так.

1. Достаточно большой софтверный проект как макросистема описывается с достаточной точностью дифуром второго порядка (затухающие колебания в вязкой среде), то есть двумя числами. Каждый программист может быть описан теми же двумя числами. Примерный смысл на бытовом уровне: как быстро человек пишет код и как быстро он правит баги.

2. Коэффициент затухания («вязкость», сопротивление изменениям) у всего софтверного проекта больше, чем у любой его подсистемы или у отдельного программиста. Период колебаний у программера практически всегда равен двум суткам: залил — все потестили — залил фикс. Как минимум 20% строк первоначального коммита будут поправлены — тоже интересная константа.

3. Совместно работающие программисты подчиняются правилу сложения источников белого шума: суммарная эффективность равна корню из их числа.

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

Вот так. Рассчитав всего два числа, я могу сказать, когда мы закончим отлаживать проект, оценить эффективность любого программера и прикинуть количество багов в проекте, исходя из частоты подачи рекламаций. Но, что самое печальное, это константы. Я не могу повлиять на них точно так же, как не могу изменить ускорение свободного падения.