spamsink: (Default)
2025-08-23 11:23 am
Entry tags:

Горе от LLM ума

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

В моём случае более длинный файл - от силы десяток тысяч строк, более короткий - редко когда более тысячи строк, поэтому наивный O(n*m) алгоритм мне бы годился, просто писать было лень. Но я в промпте это не сказал, и получил от Cerebras программу на Питоне, которая пользовалась этим алгоритмом только в качестве крайнего случая, если не был доступен NumPy.

А если NumPy был доступен, то программа каждой уникальной строке, встретившейся в обоих файлах, ставила в соответствие случайное комплексное число длины 1, кроме *, для которой брался 0. Потом она строила соответствующие массивы чисел, удлиняя при необходимости до степени 2, причем для второго массива числа брались сопряжённые, и делала всему этому делу FFT со всеми возможными смещениями от 0 до разницы длин файлов.
В конкретных деталях алгоритма я не разбирался, но мотивировалось это тем, что для совпадающих строк произведение чисел будет равно в точности вещественному 1, а для несовпадающих - произвольным комплексным числам со случайным Re, в среднем равным нулю. Так как нас интересуют только нетривиальные совпадения, то совпадения со звёздочкой, сиречь умножения на 0, общий результат не изменяют.
Потом в массиве полученных результатов находился максимум, и его индекс объявлялся искомым смещением.

Этим всем делом Cerebras был очень горд, потому что вычислительная сложность получалась меньше, типа O((n+m)*log(nm)) или что-то в таком духе.

Ну и, короче, в тех случаях, когда реальное совпадение было стопроцентным, этот алгоритм с хорошей вероятностью выдавал правильное смещение, хотя и с рейтингом заметно меньше 1 (обычно около 0.8-0.9), а для совпадения с погрешностями результат был произвольным и непохожим на реальность. Пришлось подавить это безобразие, закомментировав "import math", и всё заработало ровно так, как я хотел.
spamsink: (Default)
2025-08-20 02:37 pm

A cryptic clue

▯▯RLY   ▯▯▯▯RTY

Clue: News at 11.

(в ответе словосочетание из двух английских слов, 5 букв и 7 букв)
spamsink: (Default)
2025-08-05 02:30 pm
Entry tags:

Занимательное программирование

Если кто ещё не видел, после долгого перерыва опубликованы результаты очередного конкурса IOCCC:

https://www.ioccc.org/2024/

Среди призёров - программа длиной 1750 байт, реализующая inference model с поддержкой OpenMP для LLaMa 2 7Gb.

Кто знает короткий джейлбрейк для неё?
spamsink: (Default)
2025-07-24 11:53 pm
Entry tags:

Занимательная олигография

Внезапно нашлась программа, по номеру года печатающая "журнал учёта рабочего времени" на рулонном АЦПУ. Некоторый интерес представляет список возможных причин отсутствия на рабочем месте и способ стандартизации размещения дат на страницах, но повод для поста вот какой: я совершенно не понимаю, как предполагалось разрезать и складывать полученные листы в книжечку, чтобы ей было удобно пользоваться. А вы?

Expandдо мая месяца, остальное аналогично )
spamsink: (Default)
2025-07-08 09:30 pm
Entry tags:

Полихронное

Едучи сегодня с работы домой около семи часов вечера, я был удивлён запруженностью близлежащих улиц. Стоя в пробке, усмотрел на телефоне, что, батюшки, нынче же на придворном стадионе концерт Weeknd, и начинается именно в 19:00. Действительно, какие-то звуки из него раздались уже примерно в 19:05.

Отужинав, примерно в восемь я пошел гулять, как обычно, мимо стадиона. Проходя рядом около 20:15, наблюдал дюжины людей, скорым шагом направляющиеся через дорогу от парковки к стадиону. Проходя обратно около 20:50, видел парочку бегущих к стадиону девушек.

Пришлось остановиться, и с помощью википедии припомнить забытый политкорректный термин polychronicity.
spamsink: (Default)
2025-07-07 04:34 pm
Entry tags:

Загадка для юниксных программистов

Сделайте разумное предположение (educated guess), зачем бы нужно было рестартовать обычный пользовательский юниксный процесс, ничего не меняя в его аргументах или окружении.

// Необходимые инклюды
int main(int argc, char *argv[], char *envp[]) {
    // Объявление локальных переменных
    // Некоторые действия, не использующие и не меняющие argv и envp
    // fork не делается
    if (/* условие */)
        execve("/proc/self/exe", argv, envp);
    // Маловероятная неудача execve - досада, но не беда, можно продолжать

    // Далее - собственно функциональная часть программы
}
spamsink: (Default)
2025-07-06 01:52 pm
Entry tags:

Видала мышку на ковре

Всю прошлую неделю я был в отпуске: летал в Финикс, Аризона, чтобы посмотреть, каково там живётся в самый жаркий период года. Оказалось, что при влажности 13-15% некоторое разумное время вполне можно провести вне помещения в середине дня в ясный день даже при температуре 317 K, имея на себе правильную одежду, головной убор и aqua quantum satis.

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

Там мне впервые в жизни удалось поиграть на поиграться с терменвоксом.

Но пост не про это. В городе Anthem, AZ имеется современный Стоунхендж - военный мемориал из 5 стел (по числу видов вооруженных сил США), в которых сделаны эллиптические проемы так, чтобы солнечный свет падал на герб США ровно в 11:11 11 ноября.

Естественно, мне тут же захотелось узнать, как обстоит дело с гулянием положения солнца в этот момент от года к году, и нет ли другой даты, когда солнце оказывается в той же самой точке. В самом ЧатГПТ нужный пакет установлен не был, о чём он мне грустно сообщил: "It looks like the necessary astronomy library (skyfield) isn't available in this environment to compute precise solar positions", но выдал инструкции по установке необходимых пакетов (их пришлось тривиально модифицировать по месту, а именно "apt install python3-xyz" вместо "pip install xyz", как мне сам pip и сказал сделать), а также скрипт, который не потребовал никаких принципиальных изменений, разве что диапазон дней пришлось увеличить, и тут же заработал.
Expandpython script )

Если бы мне была поставлена задача с нуля написать программу на любом языке, которая это вычисляет, бог знает сколько дней или недель я бы возился.
spamsink: (Default)
2025-06-25 06:54 pm
Entry tags:

Занимательная спортивная статистика




СЯУ новое слово: SCORIGAMI. Например, https://nflscorigami.com/ и https://www.scorigaminba.com/

Самый частый результат игры в американский футбол - 20:17, потом 27:24.

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

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

Ни тем, ни другим спортом я не интересуюсь; просто красиво.

src: https://www.youtube.com/watch?v=lgWjue_TbuQ
spamsink: (Default)
2025-06-17 11:49 pm
Entry tags:

Тьюринг был северный осетин




СЯУ, что имя Alan (Allan, Allen, и пр.) - не просто омоним демонима жителя Северной Осетии-Алании, и даже не просто когнат, а целый дериват.

The modern English Alan, and French Alain, are derived from the name of the Alans.[6] Described by Roman authors as tall, blond, and warlike, the Alans were a nomadic Iranian people who lived on the Eurasian Steppe and the Caucasus Mountains.
spamsink: (Default)
2025-06-12 09:16 pm
Entry tags:

Фоносемантическая расстыковка

...или семантическое насыщение на новый лад.


После того, как я несколько раз произнёс про себя "глоссохронология" и "глоттолалия", я на некоторое время забыл, как правильно.


spamsink: (Default)
2025-06-10 10:57 am

Просто так, амбулаторное





А вы отдавали себе отчёт, что состояние зомби - это, в сущности, состояние амбулаторной смерти?



spamsink: (Default)
2025-06-03 09:24 am
Entry tags:

Рабочая ламентация



Вы не поверите, какому безумному количеству народа мне уже пришлось послать в рабочем чате ссылку на https://nohello.net/

Что смешно, последние 3-4 рабочих дня мне приходилось делать это ежедневно.

spamsink: (Default)
2025-05-20 11:37 pm
Entry tags:

Bon motto

Спросил я у ChatGPT (по-английски), дескать, девизы некоторых стран хорошо известны, тех же США или Бразилии, а с Россией как дела обстоят?

Не стал он галлюцинировать, изложил как на духу: был, вот, у РИ девиз - "Съ нами Богъ!", был и у СССР - "Пролетарии всех стран, соединяйтесь!", а у РФ - нету.

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

Ой, говорит, any answer will inevitably carry a degree of interpretation or satire.

Но предложил несколько, конечно. Один из предложенных вариантов был "Правда в силе", обыгрывая цитату из "Брата 2", другой - "The state is eternal; the people endure" (типа "Res publica longa, populus brevis", надо полагать), еще один - "Feared is better than loved" (оборванная цитата из Макиавелли).
spamsink: (Default)
2025-05-19 09:28 pm
Entry tags:

Видала мышку на ковре

Брат нашел в лабазах каменных папку-скоросшиватель примерно 40+летней давности и отсканировал из него несколько страниц.

ExpandRead more... )
Собственно текст представляет лишь слабый исторический интерес, а вот кому не лень будет написать (с помощью ИИ, например) программу, которая: поправляет потенциальный завал горизонта; делит изображение на знакоместа; классифицирует символы; усредняет их, делая на ходу поправку на возможный сдвиг глифа в знакоместе; и, наконец, выдает идеализированные глифы?
spamsink: (Default)
2025-05-08 05:58 pm
Entry tags:

Что за странный акцент?

Что это за манера произносить латинское magnum как "маньюм"?

spamsink: (Default)
2025-05-05 03:34 pm
Entry tags:

Полундра!

А что, все уже внимательно следят, как Космос-482 (неудачный дублёр "Венеры-8" 1972 года) через 5 дней упадёт на Землю?

https://sattrackcam.blogspot.com/2025/04/kosmos-842-descent-craft-reentry.html

Полутонная титановая хреновина, рассчитанная на венерианские температуру и давление, вполне может невозбранно преодолеть плотные слои атмосферы. Полундра всем живущим между 52N и 52S.
spamsink: (Default)
2025-05-04 03:31 pm
Entry tags:

Просто так, кофейное

Вот так выглядит копи лувак в дикой природе:
.

Теперь вы понимаете, почему никак не могут найти копи царя Соломона? Он просто кончился.
spamsink: (Default)
2025-05-01 02:58 pm
Entry tags:

Кстати о цвете ОЛО

Последние пару недель интернет кишит сообщениями о "новом цвете" Оло, ощущение которого достигается путем избирательной активации зеленых колбочек с помощью лазера, и недостижимо другими средствами.
По ссылке (и тут) пишут, что якобы только 5 человек видели этот цвет.

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