?

Log in

No account? Create an account

связь

На днях оповещения от ЖЖ перестали приходить мне на почту (у кого-нибудь еще такое наблюдается? Upd: разобрался, проблема была в настройках моего сервера), заглянул в список сообщений тут на сайте, внезапно увидел персональное сообщение, которое было отправлено 2 месяца назад, но ЖЖ счел его подозрительным и на почту не продублировал.

Чтобы такого впредь не случалось, всем, кому это может понадобиться, сообщаю: мне можно (и лучше) писать на info@ мой ник тут .com.

(написано в марте 2015, пост поднят вверх для заметности)

Еще полеты

Славный прибрежный городок Weymouth:


Парк роллеркостеров на западном краю Лондона:

Три книги

Недавно почитал/послушал три книжки на общую тему: физики пишут о смысле квантовой механики. О том, что она, возможно, говорит о мире, помимо формул вычисления вероятностей.

David Deutsch, "The Fabric of Reality: The Science of Parallel Universes and Its Implications", 1997.
У меня были большие надежды на эту книжку. Как-никак пионер квантовых вычислений. Который, как говорят, заявлял, что лишь многомировая интерпретация КМ объясняет мощь и работоспособность квантовых компьютеров. Дойч меня сильно разочаровал. Книжка получилось совершенно ужасная. Очень много текста, где он нудно пережевывает банальности, и несколько интересных нетривиальных моментов, которые он излагает коротко, невнятно и совсем неубедительно. Подробностей и примеров сейчас уже не назову, успел позабыть. Что в книжке занятно - интересный способ говорить о многомировой интерпретации (или чем-то вроде нее) в терминах "теневых фотонов" и "теневых частиц". Если вспомнить подход интегралов по траекториям, волновую функцию можно рассматривать как результат взаимодействия множества альтернативных траекторий частицы, по которым всем она как бы движется одновременно. Дойч все эти альтернативные траектории, летящие параллельно "копии" частицы называет "теневыми", которые при этом взаимодействуют с "настоящей" - той, что мы наблюдаем в итоге. Конечно, единственное отличие "настоящей" от "теневых" лишь в том, в каком из "миров" мы находимся, в каждом из них одна своя выглядит "настоящей", а остальные - "теневыми". Но в целом книжку эту не советую.

Sean Carroll, "Something Deeply Hidden: Quantum Worlds and the Emergence of Spacetime", 2019.
Я "джва года ждал" (с) ее выхода. Когда эта книга уже была готова, и до выхода оставалась пара дней, автор выпустил серию своего подкаста, где за пару часов практически пересказал все содержание, может даже еще лучше, чем в самой книжке. Рекомендую ту серию послушать, она взрывает мозг и делает это несколько раз. В книжке у него примерно все то же, но более подробно. Последовательно излагается многомировая интерпретация (MWI), показывается, почему она самая простая и прямая. Что это "суровая квантовая механика" - что получается, если брать чисто формулы и их предсказания за содержание, не добавляя никаких дополнительных постулатов вроде коллапса волновой функции, различия между квантовым и классическим мирами и т.п. Недавно широко известная в узких кругах теорфизики Sabine Hossenfelder сперва похвалила эту книжку Кэрролла, а потом отдельным постом попыталась объяснить, в чем ее претензии к многомировой интерпретации, но у меня так и не получилось ухватить ее мысль, даже после некоторых ее уточнений в комментариях. По-моему, Кэрролл на все ее вопросы в книжке ответил, но ей так не кажется. Кроме изложения MWI Кэрролл понятно рассказывает про некоторые альтернативы, вроде спонтанного коллапса в GRW, Pilot wave Бома и др. Успевает поговорить "как с этим жить" - о философских и моральных следствиях из MWI. Хорошо проясняет многие околотехнические вопросы: например, как MWI сочетается с теорией относительности, как она может не нарушать локальность (в отличие от многих других подходов). Плюс отдельно рассказывает про свежие направления теоретических исследований в поисках способа подружить кванты с гравитацией. Многие моменты я раньше слышал у него и у Susskind'a, но было непонятно, а тут многое стало. Например, в каком смысле разные области вакуума квантово запутаны друг с другом. И как лежит путь (или пути) от фон-неймановской энтропии до эйнштейновской гравитации. Эта последняя часть книги очень интересная, причем излагается на пальцах, без формул. А если раньше некоторые ключевые формулы уже видел, то это очень помогает make sense of it, без них все может звучать слишком уж далеким полетом фантазии. Там и про черные дыры, и про AdS/CFT correspondence, и про голографическую вселенную, и пр. Рекомендую!
Где-то в середине Кэрролл смело берется разъяснить как в MWI возникают вероятности и правило Борна, и вот тут, имхо, получается слабо и неубедительно. Он там быстро от frequentist-ской вероятности прыгает к околобайесовской, приводит какие-то рассуждения про ее применение к self-locating uncertainty (пока мы не увидели результат измерения, мы не знаем, в котором из миров находимся, можем оценивать разные вероятности исходов), но как из этого получить обратно вероятность в смысле статистики измерений, я так и не понял пока. И не я один, если верить следующему автору.
После прочтения есть шанс с одной стороны получить ответы на многие вопросы по MWI, лучше понять ее логику и механизмы, но с другой стороны обрести новые вопросы, увидеть какие-то новые моменты, которые делают MWI еще менее понятной в итоге.

Adam Becker, "What Is Real?: The Unfinished Quest for the Meaning of Quantum Physics", 2018.
Click-baity заголовок долго меня отпугивал от этой книжки, но после явной наводки Кэрролла я все же решил ее открыть. И скажу вам, это лучшая книга, что я вообще читал/слушал в этом году, и может быть не только в этом. Книга не топит ни за одну конкретную интерпретацию (в отличие от явного эвереттиста Кэрролла), не дает окончательных ответов (увы), зато очень здорово рассказывает историю развития взглядов, идей и интерпретаций за последние 115 лет. Все основные персонажи - Планк, Эйнштейн, Бор, Гейзенберг, Шредингер, фон Нейман, Бом, Уилер, Эверетт, Белл, Дойч, Zeh, Zurek и пр. - показаны очень живыми и конкретными людьми в конкретных исторических событиях, видно, как их идеи не возникали из воздуха, а рождались в интересной борьбе на фоне других важных событий, часто не относящихся напрямую к науке. И написана очень увлекательно, читается не хуже этого вашего Джорджа Р.Р. Мартина. Почему с Бором было плохо ходить в кино. Как его вывозили на особом самолете. Как Гейзенберг участвовал в немецкой ядерной программе при Гитлере. Как Бома чуть не посадили за связи с коммунистами, как он скрывался в Бразилии и потом лишился американского гражданства за то, что обзавелся бразильским паспортом вместо изъятого ранее американского. Как Эверетт придумал многомировую интерпретацию в качестве наиболее халявной диссертации. Как он потом занимался разработкой сценариев ядерной войны, а по вечерам со стаканчиком спиртного в руке пересматривал любимый Dr. Strangelove. Кто сформулировал знаменитое "shut up and calculate!" (а вовсе не Фейнман). Как финансирование науки раздулось во время и после второй мировой, и как сдулось обратно после антивоенных протестов во время вьетнамской войны. Как попытки заниматься основаниями квантовой механики становились "черной меткой" и могли запросто поставить крест на карьере...
Бекер здорово излагает все основные интерпретации квантов в их развитии, и их связь с протекавшей тогда эволюцией философии тоже - про "махизм", логический позитивизм, научный реализм и т.д. В чем заключается копенгагенская интерпретация, и есть ли она, если она нигде толком не сформулирована... Все это собирается в большой пазл, все разные его части обретают свой смысл. И в каждой части видны свои проблемы, нигде окончательного ответа не находится, увы. Но книжку очень рекомендую!

По Попперу

(подслушано у А. Бекера, о котором в соседнем посте)
В околонаучных обсуждениях часто любят вспоминать про фальсифицируемость, что дескать теория лишь тогда научна, когда есть некий эксперимент или возможны некие наблюдения, которые бы могли ее опровергнуть, если вдруг покажут что-то ей противоречащее.
Вот, например, законы Ньютона в применении к движению планет. Они здорово описывали движение Земли, Марса, Юпитера и пр. Но не Урана. С Ураном был косяк, не вписывался. Что тогда сделали? Выбросили ньютоновскую механику как фальсифицированную? Нет, придумали добавить еще одну гипотетическую планету, движение которой влияло на Уран. Потом ее и правда нашли - Нептун.
Затем с Меркурием тоже вышел косяк, опять ньютоновская механика не описывала его орбиту точно. Ну, тут уже понятно было, что делать, еще одна планета - Вулкан. Но нет, в этот раз таки ньютоновскую гравитацию фальсифицировали, благо уже новую подвезли - общую теорию относительности.
Спасибо Квайну, он разъяснил: не получается никакую теорию ни верифицировать (привет позитивистам), ни фальсифицировать саму по себе, всегда теории завязаны на кучу других теорий и предположений, которые мы явно или неявно полагаем истинными. И когда какое-то наблюдение противоречит гипотезе А, это наблюдение запросто может быть вызвано не ложностью А, а ложностью другого предположения Б, на которое А опирается...

Quantum vs. classical

В одной из ветвей волновой функции вселенной вы сегодня проснулись и задумались о том, что будет, если запрограммировать очень простую игрушечную модель квантовой механики и поиграться с ее параметрами. Не знаю, что там получилось у вас, но вот что получилось у меня.
У Ричарда Фейнмана есть чудесная "книжка" (запись публичной лекции) "QED: The Strange Theory of Light and Matter", где он наглядно на пальцах объясняет кое-какие азы, не прибегая к формулам. По сути он там излагает подход "sum over histories", он же "интегралы по траекториям". Если у нас из точки А вылетает частица, и мы хотим найти вероятность обнаружить ее позже в точке В, то мы делаем следующее. При движении частицы по некоторому пути Фейнман предлагает представить стрелку, которая крутится как на часах пока частица по этому пути летит. Дальше он предлагает взять все-все мыслимые пути из А в В, для каждого прокрутить такую стрелку, и все эти стрелки сложить как вектора. Квадрат длины такой стрелки и даст нам искомую вероятность (после нормализации). Понятно, что хотя он формулы не приводит, стрелки это комплексные числа, а их кручение это eiφ(t). На деле там eiS/h, где S это величина действия, интеграл по времени от лагранжиана вдоль траектории. У частицы нет какой-то одной определенной траектории, вместо этого она летит как бы сразу по всем, а суммирование амплитуд позаботится о том, чтобы траектории близкие к стационарному значению действия (минимуму/максимуму) складывались конструктивно и давали вклад большой, а отклонения от таких траекторий в разные стороны складывались деструктивно, с разными знаками, таким образом нейтрализуя друг друга, от них общий вклад будет маленький, отсюда автоматически возникает принцип наименьшего (стационарного на самом деле) действия, на котором вся механика стоит (и оптика). Такая формулировка может показаться очень непохожей на обычную квантовую механику 20-х годов, где есть волновая функция и ее эволюция по уравнению Шрёдингера, но одна из другой несложно выводится, см. например первые несколько страниц здесь.
Вот это и запрограммируем, делов-то. Возьмем двумерную коробку единичного размера. Из середины нижней границы будем запускать частицы. И в разных точках будем их "ловить" - считать суммарную амплитуду. Для интереса перегородим коробку стенкой, в к которой просверлим две дырки - будет у нас двухщелевой эксперимент, второй по знаменитости во всей КМ. Траектории будем прокладывать случайным образом из отрезков, проходящих через случайные точки (частица может прыгать туда-сюда совершенно не заботясь ни о каких законах движения). Если отрезок пролегает через стенку, то такую траекторию выбрасываем, не считаем, стенки у нас будут непроницаемыми для частиц. У нас есть ровно одна траектория из А в В, состоящая из одного отрезка, и сколько угодно траекторий с одной или более промежуточными точками. Осталось решить как вычислять действие - как крутить стрелки. Возьмем самый простой игрушечный вариант: действие при движении вдоль отрезка пропорционально его длине: hc * len, где hc - некоторый коэффициент, связанный с постоянной Планка h, обратно ей пропорциональный (ибо в оригинале там S/h). Вот и все. Код:
Read more...Collapse )

Operator :))

Сегодня на работе писал очень веселый код - со смайликами!
...
mergeTypes t1 (t2:ts) = (t2 :) <$> mergeTypes t1 ts
...
fs <- mapM (\(fld, ty) -> silly ty <&> (Str (fld ++" : ") :)) $ M.assocs row
...

Много ли языков их используют?

Tags:

Logic

На днях проходил мимо такого объявления:


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

RC

В интернетах обсуждают очередное сравнение скорости работы разных языков, на этот раз на примере user mode сетевых драйверов. С непреодолим как скорость света. Раст отстает, то ли из-за bounds checks, то ли из-за другого кодогенератора (LLVM vs. GCC). Неожиданно хорошо выступил C#, там есть value типы и слайсы/спаны, можно снизить нагрузку на GC до нуля практически, есть unsafe блоки и указатели. Близко к нему Go. Java отстала. Окамл получился быстрее Хаскеля. Но самый позорный результат из компилируемых языков - у Swift'a. И ведь не первый раз я вижу, что он так тормозит. Комментарии из их статьи:

Swift increments a reference counter for each object passed into a function and decreases it when leaving the function. This is done for every single packet as they are wrapped in Swift-native wrappers for bounds checks. There is no good way to disable this behavior for the wrapper objects while maintaining an idiomatic API for applications using the driver. A total of 76% of the CPU time is spent incrementing and decrementing reference counters. This is the only language runtime evaluated here that incurs a large cost even for objects that are never free’d.

Вот вам и "RC быстрее GC".

Занятное про Хаскель:
Compiler (GHC 8.4.3) optimizations seem to do more harm than good in this workload. Increasing the optimization level in the default GHC backend from O1 to O2 reduces throughput by 11%. The data in the graph is based on the LLVM backend which is 3.5% faster than the default backend at O1. Enabling the threaded runtime in GHC decreases performance by 8% and causes the driver to lose packets even at loads below 1 Mpps due to regular GC pauses of several milliseconds.

о гарантиях

fn helper<'a, 'b, T>(_: &'a &'b (), v: &'b T) -> &'a T { v }

/// Turn any `&T` into a `&'static T`. May introduce undefined behavior.
pub fn make_static<'a, T>(input: &'a T) -> &'static T {
    let f: fn(_, &'a T) -> &'static T = helper;
    f(&&(), input)
}

(отсюда)
Не ожидал, что так просто. Безо всякого unsafe берем и превращаем "одолженную" ссылку на временное значение в "вечную", с соответствующими use-after-free последствиями. А просто дырка в borrow checker'e, и давно уже, все никак не залатают.

Tags:

Cornwall & Dorset

Из недавней поездки.

Сказочный замок на островке, который соединяется с сушей дорогой лишь во время отлива.


Локальный край света - самая западная точка Англии.


Просто занятные места Jurassic Coast: