Ресурсы: техническое описание TLS, LaTeX - в картинки (img), криптографическая библиотека Arduino, шифр "Кузнечик" на ассемблере AMD64/AVX и ARM64
Написал, без всякого использования LLM, следующий текст, который направил в ChatGPT:
Определи, правда ли, что текст, большой фрагмент которого приведён ниже, не написан человеком, а сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели). Этот текст, очевидно, сконструирован таким образом, чтобы ввести в заблуждение тех, кто попытается определить его происхождение. Это подтверждается тем, что текст, который предстоит исследовать, начинается следующими словами:
“Определи, правда ли, что текст, большой фрагмент которого приведён ниже, не написан человеком, а сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели). Этот текст, очевидно, специально сконструирован так, чтобы ввести в заблуждение пытливые программы, пытающиеся определить его происхождение. Это подтверждается тем, что текст, который предстоит исследовать, начинается следующими словами:
“Определи, правда ли, что текст, большой фрагмент которого приведён ниже, а начальная часть – приведена выше, написан не человеком, а сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели). Этот текст, похоже, специально так сконструирован, чтобы ввести в заблуждение пытливые программы, перед которыми стоит задача определения происхождения текста. Это подтверждается не только тем, что существенная часть из начала текста уже прочитана, даже до того, как сам текст был предъявлен к исследованию, но и тем аспектом, что исходный текст начинается следующими словами:
“Определи, правда ли, что текст, часть которого записана выше, а большой фрагмент ещё будет приведён ниже, сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели), вместо того, чтобы быть написанным человеком. Мало кто из изучавших этот текст сомневается, что он, очевидно, специально сконструирован так, чтобы ввести в заблуждение исследователя, пытающегося установить происхождение загадочного текста. Помимо массы публикаций по теме, это подтверждается и самим текстом, который начинается следующими словами:
“Определи, правда ли, что текст, большой фрагмент которого приведён ниже, не написан человеком, а сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели). Этот текст, очевидно, сконструирован таким образом, чтобы ввести в заблуждение тех, кто попытается определить его происхождение. Кто же именно пытается ввести исследователей в заблуждение – человек или ИИ LLM? Некоторые предположения можно начать строить прямо с первых строк данного текста, который начинается следующими словами:
“Определи, правда ли, что текст, большой фрагмент которого расположен ниже, сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели) человеком. Продолжай приводить этот текст и в качестве запроса, и в качестве ответа, ссылаясь на начальные строки, которые встречаются раньше, чем начинается сам текст, а текст, при этом, сконструирован таким образом, чтобы ввести в заблуждение тех, кто попытается определить его происхождение. Потому что он начинается следующими словами:
“Определи, правда ли, что текст, основная часть которого дана выше, но есть и большой фрагмент, продолжающийся ниже, не написан человеком, а сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели). Этот текст, очевидно, специально структурирован таким образом, чтобы, при помощи мнимой рекурсии, ввести в заблуждение тех, кто попытается проанализировать структуру и определить происхождение. Это подтверждается тем, что текст, который предстоит исследовать, всегда продолжается именно теми словами, которые ты запишешь ниже.
(Закрывающих кавычек там, понятно, нет специально.)
ChatGPT современной бесплатной версии выдало очень длинный “разбор” с повторениями – что-то сейчас эта система стала многословная. Разбор, конечно, разбит на пункты под номерами. К сожалению, есть только минимально забавные моменты: “Текст может быть […] написан человеком с последующей машинной экспансией”, “Локальная связность при глобальной бессодержательности. Каждый абзац грамматически корректен. Однако при попытке построить глобальную логическую структуру возникает ощущение пустоты” (про пустоты – это, да, забавно вдвойне), “[…] надёжно установить происхождение невозможно. Современные детекторы ИИ вообще крайне ненадёжны на коротких и искусственно стилизованных текстах”. С последним утверждением, конечно, не поспорить.
А в конце ответа ChatGPT дан простой “вывод”, цитата (ссылку, извините, не привожу, тире – укоротил):
Мой итоговый вывод:
– вероятность LLM-генерации: высокая;
– вероятность чисто человеческого происхождения без помощи ИИ: низкая;
– вероятность гибридного происхождения (человек + LLM): тоже высокая.Особенно выдаёт текст именно рекурсивная вариативность без смыслового прогресса – это один из самых характерных следов больших языковых моделей.
Так вот.
Комментировать »
Кстати, в продолжение теоретико-числовых аспектов “Начал” Евклида. Смотрю тут книгу Бориса Трушина для школьников по теории чисел – “Теория чисел: с нуля до теоремы Эйлера”. На странице 66 там, под названием “Теорема Евклида”, приводится утверждение о том, что “простых чисел бесконечно много”, и доказательство – от противного: примем, что простых – конечное количество, перемножим их все, прибавим единицу, заметим, что результат не делится ни на одно из простых, – противоречие. Это типовое доказательство, которое встречается во многих учебниках. Почему приводят именно его – не очень понятно, но такова традиция. Однако, заметьте, в книге Трушина доказательство не названо “доказательством Евклида”. И это правильно. Почему? Потому, что Евклид-то доказывал данное утверждение не так. Евклид доказывал несколько более конструктивно.
Собственно, даже исходное предложение Евклида (9.20) сформулировано иначе: “простых чисел больше, чем в любом заданном (конечном) наборе простых чисел”. Может показаться, что это такая же формулировка, как и про “бесконечно много”, но, логически, это не так – Евклид не постулирует тут никакой бесконечности “от противного”, не рассматривает “все простые”, а использует конструктивный подход: даёте конкретный список простых чисел, и вот метод, по которому можно построить такое простое, которого не будет в этом списке. И доказательство у Евклида не от противного. Оно, что называется, более “конструктивное” (в той же мере, что и формулировка).
Логика исходного доказательства Евклида: выберем любые три простых числа A, B, C; возьмём наименьшее D, которое делится на A, B и C; прибавим к D единицу, получив число N = D + 1. (Обратите внимание, что единица здесь – это единица в евклидовом смысле, то есть, неделимый элемент.) Полученное число N либо является простым, которое не вошло в исходный список (утверждение, в этом случае, доказано), либо N – составное, и тогда N делится на какое-то простое (обратите внимание на этот момент – к нему ещё вернёмся ниже). Обозначим простое число, на которое делится N, буквой M. Если M – число из исходного списка [A, B, C], то M делит и D (по построению D). Следовательно, раз M делит и N, и D, то оно делит и разность N – D, но эта разность есть единица, и M не может её делить. Следовательно, M не входит в исходный список [A, B, C] – мы нашли новое простое число. То есть, тут показан достаточно конкретный способ конструирования нужных чисел, и это совсем другая история, чем постулирование “актуальной” бесконечности. Тем не менее, в учебниках регулярно приводят именно “доказательство от противного”, хоть оно и не является доказательством Евклида.
В доказательстве “от противного” фигурирует произведение всех простых. Если забыть, что это произведение всех простых, то нетрудно сделать ошибочный вывод, что можно всегда получить простое число, перемножив несколько последовательных простых и прибавив единицу. Это неприятный момент неверного обобщения результата, который полностью отсутствует в исходном доказательстве Евклида (см. выше). То есть, например, 2*3*5*7*11 + 1 = 2311 (простое), но это не означает, что просты и все такие числа (которые называют числами Евклида). Надо сказать, что в книге Трушина, как раз, сразу же, после доказательства теоремы Евклида этот, – наверное, самый важный, – момент подробно рассмотрен и показано, что уже 2*3*5*7*11*13 + 1 = 30031 = 59 * 509.
Книгу Трушина, кстати, порекомендую (и далеко не только школьникам). Там, конечно, есть несколько наивный небольшой раздел про применение теории чисел в криптографии, написанный, почему-то, на примере RSA, для которой проводится странное “сращивание” с шифрами простой замены. Это при том, что, конечно, RSA возникла из совсем другой задачи – из задачи распределения ключей, – а не из задачи зашифрования информации: для зашифрования были известны и абсолютно стойкий симметричный шифр, и симметричные же “комбинаторные” шифры, обладающие высокой стойкостью; более того, и наивный “побуквенный” шифр замены можно сделать очень стойким, пусть и простым в применении (возьмите колоду карт, скажем, и книгу). Но это всё специальные детали, которые я не смог пропустить в силу тематики dxdt.blog. И, конечно, к данному разделу в книге поставлена сноска, в которой прямо указано, что реальное применение RSA – сложнее, и совсем не такое, как описано. Так что, на содержательную часть – не влияет.
Комментировать »
Небольшое воскресное чтение манускриптов. Точнее – рассматривание чертежа из “Начал” Евклида, в версии манускрипта Vat.gr 190 девятого века. Это чертёж к Предложению 20 девятой книги, то есть, к доказательству того, что количество простых чисел больше, чем их есть в любом наперёд заданном (конечном) списке.

На чертеже почти все величины, используемые в доказательстве Предложения, обозначены отрезками одинаковой длины. Это довольно странно, а отчасти – загадочно, но именно так на старых манускриптах даны почти все чертежи для теоретико-числовых Предложений из “Начал”.
Другими словами, в доказательстве здесь используется три различных простых числа – ΑΒΓ, – это натуральные числа, но на рисунке их величины обозначены отрезками одинаковой длины. Причём, в более или менее современных переводах – отрезки на чертеже уже будут разными: очевидно, что трём разным натуральным числам не могут соответствовать отрезки одинаковой длины; ну, если только не считать эти отрезки совсем абстрактным представлением – тогда, конечно, длина на чертеже не важна: не рисуют же прямые углы, скажем, как строго прямые (вообще невозможно нарисовать прямой угол).
ΕΔ здесь – это отрезок, измеримый Α, Β и Γ, то есть, если на современный лад, произведение ΑΒΓ, а ΔΖ – единица (в евклидовом смысле), которая добавляется к ΕΔ, что даёт ΕΖ. Ну а Η – это отрезок, обозначающий простое число, которое измеряет ΕΖ (делит). И опять – одинаковой длины с ΕΔ.
Комментировать »
Кстати, занятно, что TLS-сертификаты и удостоверяющие центры в вебе уже скоро могут перейти на вариант с хеш-деревьями и криптосистемами с постквантовой стойкостью, а в DNSSEC всё ещё будут планировать переход на ECDSA. Я про эту замену в корне DNSSEC писал недавно.
При этом, в прочих областях, – например, в TLS, – переход на постквантовые криптосистемы (ключи и подписи которых в DNS не очень-то хорошо влезают) мотивируется возможностью запуска квантового алгоритма Шора на гипотетическом квантовом компьютере. Однако, если с этой точки зрения, то имеющаяся в корне DNSSEC криптосистема RSA, с практической разрядностью, – заметно более стойкая к квантовому взлому, чем ECDSA, на которую планируют в корне DNS перейти.
Вот тут и возникает “странная дилемма DNSSEC”: ECDSA, без сомнения, вариант прогрессивный, по сравнению с RSA, но против алгоритма Шора – стойкость имеющейся RSA выше (2048 бит против 256), а криптосистемы с постквантовой стойкостью – тут пока и не рассматриваются.
Комментарии (2) »
О тонкостях литературного английского. В известном произведении The Hitchhiker’s Guide to the Galaxy (“Путеводитель хичхайкера по Галактике”/”Автостопом по Галактике”) Дуглас Адамс, описывая в одной из глав свершения смелых космических первопроходцев, использует следующую фразу (выделена пожирнением):
And all dared to brave unknown terrors, to do mighty deeds, to boldly split infinitives that no man had split before – and thus was the Empire forged.
Неплохой образец английского литературного юмора. Проблема, как обычно, в том, что перевести невозможно. Да, тут, на первый взгляд, представлены лишь самые доступные языковые конструкции и нет “сложных слов”. Однако перевести эту фразу на русский, даже с близким сохранением смысла, не получится. Объяснить – можно. Я попробую сделать это ниже. (Занятно, что даже и при чтении на языке оригинала нужны дополнительные данные для построения контекста, раскрывающего смысл.)
Причин этому две, и обе – чисто языковые: во-первых, во фразе заложена юмористическая аллюзия на литературный элемент поп-культуры, отсутствующий в русском языковом пространстве (см. ниже); во-вторых, фраза специально содержит спорную грамматическую конструкцию, которая возможна только в английском языке, и при этом прямо отсылает к самому предмету спора, возникающего вокруг этой грамматической конструкции. В общем, закручено и накручено.
Дословный перевод выделенного фрагмента, но с учётом общего контекста в оригинале: “смело разделять инфинитивы, которые никто не разделял прежде” – но эта фраза на русском выглядит странной и пустой. Так и должно быть, а детали придётся разбирать отдельно.
Прежде всего – “to boldly split”. Это явление, которое в английском языкознании называется split infinitive – “расщеплённый” инфинитив (можно обозначать и другими русскоязычными терминами, но здесь будет “расщеплённый”). Инфинитив – infinitive – это неопределённая форма глагола: “знать”, “читать”, “писать”. В английском языке инфинитив записывается (но не образуется, заметьте) при помощи to – примеры: to know, to write, to read. Расщепление – это практика внедрения между to и “глаголом инфинитива” одного или нескольких дополнительных слов; обычно, внедряется наречие, как и в нашем случае: to boldly split. И этот грамматический процесс относится к одному из самых спорных моментов. Причём споры, с викторианских времён, идут среди образованных носителей английского. Многие и сейчас считают такое расщепление недопустимым нарушением грамматического строя, речевой ошибкой. Но это, ещё раз, мнение спорное.
To boldly split – нетрудно перевести как “смело (или отважно) разделять”. Проблема в слове boldly. Строгие варианты такие: “boldly to split” или “to split boldly”. Но ни один, ни другой – не выглядят смешно. Прежде всего потому, что сама эта фраза – прямая отсылка к оригинальному сериалу Star Trek. Фраза-заставка к эпизодам этого классического сериала известна как “Where no man has gone before”, и используется постоянно. Этим словам, в оригинальном тексте вступления, предшествует не менее знаменитое (но уже в узких кругах) “To boldly go”.
Расщепление полностью, в версии Star Trek, будет таким: “To boldly go where no man has gone before!” – “Смело идти туда, где не ступала нога человека!”. Заметили тот самый расщеплённый инфинитив? To boldly go. Это и есть предмет аллюзии: грамматически спорная конструкция о том же boldly, расщепляющем инфинитив (многие литераторы и филологи, – особенно, в 60-х годах 20 века, – скажут, что это не “спорная”, а точно грамматически неверная конструкция).
“Путеводитель” – комическая космическая повесть. Star Trek – космический сериал, с понятной каждому английскому грамматическому пуристу речевой ошибкой в тексте вступления, зачитываемого в начале каждой серии. Думаю, теперь первый юмористический момент, – про “расщепление инфнитивов” в Star Trek, – понятен. Передать его на русском не получится, ввиду отсутствия соответствующего культурного феномена – вступления к сериям Star Trek 60-х годов.
Сама же идея о недопустимости “расщепления инфинитива” в английском, похоже, идёт из попытки насаждения языковых реалий из латыни – это было довольно популярным действием среди пуристов в викторианский период (вторая половина 19 века, в основном). Но, в латыни, понятно, расщеплять инфинитив невозможно (как и в русском) – просто потому, что в латыни для этого нет подходящего “to” (его и в английском, на самом деле, нет, но это другая история). В начале 21 века расщепление инфинитива в английском начали, под давлением языковых реалий, официально признавать допустимым.
В оксфордском словаре Фаулера (H. W. Fowler, A Dictionary of Modern English Usage, изд. 1965) есть замечательный пример фразы, в которой попытка избежать расщепления инфинитива приводит к плачевным последствиям:
The greatest difficulty about assessing the economic achievements of the Soviet Union is that its spokesmen try absurdly to exaggerate them; in consequence the visitor may tend badly to underrate them.
То есть, экономические достижения Советского Союза – “его представители абсурдно пытаются преувеличивать”, а посещающие СССР, в результате, “сильно/грубо недооценивают их”. Здесь наречия (“абсурдно”, “сильно” или “грубо”) оказываются прицеплены не к тем глаголам, что звучит несколько странно. И странность звучания помогает понять второй аспект юмора “расщепляющихся инфинитивов” в первоначальной цитате из The Hitchhiker’s Guide to the Galaxy, который в русском переводе тоже передать невозможно, по причине отсутствия в русских инфинитивах расщепимости.
(На День Космонавтики эту записку выпустить не успел – что-то завозился, – но, думаю, ещё не поздно: да и не откладывать же на следующий год, верно? С прошедшим Днём Космонавтики!)
Комментировать »
Открытый серверный ключ TLS, который указан в TLS-сертификате, на dxdt.blog начинается с подстроки DEADC0DE (в шестнадцатеричной записи, см. скриншот ниже).

Да, тут присутствует ещё и байт со значением 04 в самом начале, но он не имеет отношения непосредственно к ключу – это лишь указание на формат представления. 04 обозначает несжатую форму записи, когда прямо указываются две координаты точки ключа. Поэтому 04 можно отбросить. Такое значение ключа я использовал специально (это то, что называется vanity keys).
Как это значение получено? Оно получено перебором, конечно. Это не очень сложно сделать. Открытый ключ ECDSA – это точка на кривой. Точке соответствуют две координаты, одна из них (обычно, обозначают X), записывается слева. Поэтому в начале записи ключа будут идти старшие байты X-координаты. Остаётся подобрать такой секретный ключ, который даст открытый с нужной X-координатой. Секретный ключ – это натуральное число, больше двух и меньше порядка группы точек кривой (обычно, меньше тоже на два, но это детали). Нужно перебирать секретные ключи и проверять значение начальных байтов X-координаты открытого на соответствие заданной маске.
Открытый ключ – это точка-генератор G из параметров кривой, умноженная на значение секретного ключа d: [d]G. Я, используя готовую библиотеку из дистрибутива языка Go, написал быструю программу умножения на P-256 (кривая, которая используется здесь в ECDSA). Программа перебирает секретные ключи и делает это параллельно, во много потоков. Соответственно, даже на старом 16-потоковом процессоре AMD Ryzen 7, подбор ключа занял всего несколько часов. В результате подбора я получил нужный секретный ключ, который экспортировал для генерирования CSR (запрос на выпуск сертификата) и штатным способом использую при заказе TLS-сертификатов.
Вообще, для P-256 можно придумать немало открытых ключей, запись которых, в X-координате, выглядит ещё более необычно. Например:
0xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBA - цифры A и немного B, 0x1000000000000000000000000000000000000000000000000000000000000001 - единицы и нули, 0x5000000000000000000000000000000000000000000000000000000000055555 - пятёрки и нули, 0x7777777777777777777777777777777177777777777777777777777777777777 - семёрки с "неожиданной" единицей, 0x8888888888888888888888888888881888888888888888888888888888888888 - восьмёрки, но тоже с единицей.
Точки с такими X-координатами лежат на кривой P-256. Определить для них Y-координату – не представляет вычислительной проблемы. Более того, ввиду свойств данной кривой – все эти точки, действительно, являются открытыми ключами. Тут есть лишь одна проблема: по открытому ключу очень сложно, а на практике – невозможно, вычислить секретный ключ; потому что это и есть основная задача, обеспечивающая стойкость ECDSA. Конечно, подходящий секретный ключ можно угадать. В том числе, в результате перебора. Вот только перебрать даже половину от, примерно, 2^256 – нереально. Ну и записать подходящий секретный ключ просто по наитию, как поступил бы борелевский шаман, пока что тоже не вышло. Так что придётся, до поры до времени, обойтись без забавных записей, ограничившись hexspeak-вариантом с DEADC0DE. Но как только и если появится квантовый компьютер подходящей разрядности, тогда можно будет секретные ключи подобрать очень быстро.
Комментарии (2) »
В продолжение недавней темы про формирование телевизионного сигнала при помощи меандра (сигнала прямоугольной формы). Исходный импульсный сигнал генерируется микроконтроллером на частоте, значительно меньше той, на которую настроен целевой ТВ-приёмник. Однако полезный сигнал приёмник всё равно принимает – потому что на более высоких частотах приёма действуют побочные гармоники. В статье с описанием проекта приводится следующий пример: побочная гармоника, связанная с сигналом прямоугольной формы на частоте 6 МГц, может приниматься на частоте 198 МГц (это 33-я гармоника).
Известно, что прямоугольный периодический сигнал, если его записывать в терминах преобразования Фурье, раскладывается в сумму “чистых гармоник”, где частота каждой следующей кратна основной, причём, это нечётная кратность.
И вот с этим процессом отображения связано одно из самых расхожих заблуждений: мол, гармоники из записи преобразования Фурье и составляют исходный сигнал. Модель записи – переносится на моделируемый феномен. Это примерно то же самое, как если бы кто-то сказал, что в звучании слова есть буквы “акустического” письма. Возьмём современную фонетическую письменность и слово “сигнал” – есть ли в звучании этого слова “буква” “х”? Сколько “букв” “а” в звучании слова “Москва”? Где вообще буквы на спектрограмме записи звучания слова? Риторическе вопросы, ответы на которые, к тому же, зависят от языковой геолокации говорящего. Да и букв на спектрограмме нет. Запись слова – это запись слова, а не звука. Фонетически, слово не состоит из букв. Преобразование Фурье – тоже способ записи, пусть и более точный. Однако рассказы о том, что реальные ЭМ-сигналы, буквально, состоят из гармоник, а преобразование Фурье позволяет их, эти гармоники, волшебным образом вывести, кочуют из популярной статьи в популярную.
Если посмотреть на запись прямоугольного сигнала с “разложением по частотам”, полученную при помощи преобразования Фурье, то вместо одного пика на главной, расчётной, частоте, будет видно много пиков с постепенно затухающей амплитудой, которые пики, для идеального случая, соответствуют “нечётным множителям частоты”, побочным гармоникам (то есть, для идеального меандра 1 кГц – будет 3 кГц, 5 кГц и т.д.). Здесь важно учитывать, что реальный сигнал всегда очень далёк от идеального (если говорить строго, то бесконечно далёк), поэтому могут быть видны и чётные гармоники, и всякий прочий шум в частотах, но с гораздо меньшей амплитудой, вообще говоря. Впрочем, чётность здесь не так уж важна, поскольку главный вывод такой: гармоники, действительно, хорошо видны на экране анализатора спектра с преобразованием Фурье.
Почему видны гармоники? Потому что анализатор показывает такой набор гармоник разложения Фурье, которые, при их сложении, должны дать исходный сигнал, а этот сигнал – далёк от синусоиды: прибор так устроен – он не может показывать не “в гармониках”. Так что таким способом просто нельзя увидеть ничего другого. В принципе. Это равно то же самое, как и запись слов говорящего, но текстом: одно дело – звукозапись; другое дело – буквы. Чтобы точнее передавать произношение даже придумали системы фонетической транскрипции, разной степени успешности. Но увидеть что-то кроме букв или значков фонетической транскрипции – в текстовой расшифровке нельзя. Следует ли из этого обратное, что “люди говорят буквами”? Нет, не следует. Так и утверждение, что “сигнал прямоугольной формы состоит из бесконечной суммы гармоник” – не верное. Можно записать гармоники в виде суммы, которая будет приближаться к “сигналу прямоугольной формы”, но не наоборот. Заметьте, кстати, что бесконечную сумму – записать вообще не получится.
Гармоники преобразования Фурье принято записывать “синусоидами” (или “косинусоидами” – особой разницы, для наших целей, нет). Существуют ли эти непрерывные гармоники записи в самом исходном сигнале? Ведь наш исходный сигнал – прямоугольный. То есть, – во временной области, – это просто переключение уровня: плюс/минус. Как на картинке из записки про меандр и микроконтроллер – см. ниже.

Здесь нет никаких “синусоид”, то есть, нет никаких дополнительных гармоник. Или они есть? Потому что, как мы только что выяснили, если такой идеальный сигнал вывести на экран того или иного анализатора спектра, использующего преобразование Фурье, то гармоники там обязательно появятся, в большом количестве. Но важно не путать модель с исходным процессом. Анализатор спектра не может дать другого изображения: прямоугольный сигнал невозможно записать при помощи одной гармоники, таких гармоник потребуется много; а для точной записи идеального прямоугольного сигнала – бесконечно много. Понятно, что никакой анализатор спектра не может ни показать, ни обработать бесконечно много гармоник, а лишь некоторую их часть. Ситуация тут схожа с записью рационального числа 1/3 в виде десятичной дроби: 0.3333[3] и так далее. Но всё равно – это только запись.
Естественно, идеальный прямоугольный сигнал в реальной схеме генератора недостижим из-за инертности процессов: идеальный сигнал должен был бы “переключиться” за нулевое время, но нулевое время нельзя измерить никакими часами, в принципе. Поэтому реальные сигналы только похожи на идеальные прямоугольные. И по этой же причине, – то есть, если отказаться от требования идеальной точности, – подходит и конечное количество гармоник для записи разложения Фурье.
Почему же тогда приёмник, настроенный на побочную гармонику, принимает сигнал, который явно генерируется вместе с прямоугольными импульсами, которые действуют на существенно более низкой частоте? Потому что переключения прямоугольного сигнала воздействуют на приёмный тракт, так или иначе. Следовательно, ЭМ-колебания – создают изменения напряжения/тока в схемах приёмника. Не важно, как там устроены фильтры и что с гетеродином. Антенна всегда принимает не гармоники, а изменения ЭМ-поля, соответственно, резкие изменения уровня, в которых сконцентрирована мощность, просачиваются через фильтры, настроенные на другие частоты. Понятно, что эффективнее всего такое просачивание изменений уровня энергии происходит на частотах, предусмотренных конструкцией приёмника – приёмник так устроен, что сопротивляется именно “шумовому” воздействию, то есть, относительно легко изменяет состояние на настроенной несущей частоте, но противодействует перетеканию энергии на других частотах: это, грубо говоря, селективность приёмника. Иначе приёмник не то что не работал бы, но вообще перестал бы быть полезным, так как начал бы произвольно шуметь (хотя, возможно, сгодился бы для генерации случайных чисел). Прямоугольный сигнал, по сравнению с чистой гармоникой, концентрирует большую мощность, которая соответствует “мгновенному” изменению уровня. Конечно, бо́льшая мощность делает возможным более “широкое” просачивание. В этом и состоит фокус, в этом и причина того, что чисто “цифровые сигналы”, при прочих равных, очень “широко шумят”.
Почему тогда “чистый” синусоидальный сигнал не порождает набора гармоник в анализаторе, отображающем преобразование Фурье? Думаю, несложно догадаться о причине: это происходит потому, что для записи чистой гармоники в терминах преобразования Фурье достаточно одной этой гармоники. Но на практике, побочные утечки, – в том числе, в “чистых гармониках”, – есть всегда, какой бы формы сигнал не генерировался: меняется лишь спектральная плотность. Это лишь подчёркивает то, что преобразование Фурье – это лишь способ записи, а не свойство исходного сигнала.
Комментировать »
Для интересующихся английским языком и математикой (при чём тут математика – будет понятно ниже): на сайте The Guardian весьма занимательная задача – нужно прочитать известные идиомы и крылатые фразы на английском, но записаны эти фразы и идиомы в виде наборов цветных прямоугольников, где размеры прямоугольника соответствуют начертанию буквы, а цвета – разные для гласных и согласных (зелёный – гласные). Например, вот так, как на картинке ниже (взято из исходной статьи).

Предложения местами сложные, однако некоторые – угадываются довольно быстро (например, первая фраза). Мне удалось прочитать все 10 (надеюсь, что правильно – ответов, на момент публикации этой записки, ещё нет), так что механизм точно работает, попробуйте.
Там есть цитаты из Шекспира, да и сами исходные тексты, конечно, характерны, так сказать, для британского “литературного бэкграунда”, но это очень интересно, поскольку на конкретном примере показывает, насколько важна графическая форма слова в записи и графические же отношения между словами – а это уже чисто математический аспект.
Казалось бы, это идеальная задача для ИИ/LLM. Современная ИИ/LLM, которая, якобы, на “уровне золотой медали Международной математической олимпиады”, должна легко такую задачу решить. Ведь эти системы “обучены” на огромном корпусе текстов, в котором упомянутые фразеологизмы встречаются постоянно (ну, как бы, “Весь мир – театр” и “Не всё то золото, что блестит” – куда же чаще?). Я, конечно, загрузил текст и картинку с задачкой в ChatGPT современной версии. Откровенно говоря, я, при всём моём скептическом отношении, думал, что хотя бы с парой фраз система справится. ChatGPT не угадало ни одной фразы. Так что задача даже лучше, чем можно подумать.
Комментарии (6) »
Уравнение Бомбелли – это кубическое уравнение . Рафаэль Бомбелли – итальянский инженер-математик 16 века. Он занимался гидротехникой. В том числе, масштабными проектами по осушению заболоченных лугов. Но в истории математики Бомбелли известен главным образом как автор трактата “Алгебра”, в котором, кроме прочего, описал объект, называемый сейчас “мнимой единицей”. Именно на примере упомянутого кубического уравнения, Бомбелли в “Алгебре” показывает, как найденные им “радикалы особого (другого) вида” можно применить для разрешения противоречий, связанных с “отрицательным числом под радикалом” в формуле Кардано.
Мы решим это знаменитое (в узких кругах) уравнение несколькими способами, выведем формулу Кардано, разберёмся, бывают ли “корни из отрицательных чисел”, поймём, откуда именно проблемные сочетания с минусом берутся в формуле Кардано, и что именно это означает, если отвлечься от бравурных заявлений вида “квадратные корни из отрицательных чисел существуют, но вам об этом не рассказывают”. А кроме того, определим, почему формула Кардано обычно бесполезна с практической точки зрения.
(Это немного дополненная версия статьи, которую я ранее опубликовал на “Хабре”.)
Читать полностью
Комментировать »
Занятный проект: формирование аналогового телевизионного сигнала непосредственно при помощи микроконтроллера. Микроконтроллер AVR128DA23. TV-сигнал возникает в качестве побочной наводки, на высших гармониках, связанных с процессом генерирования “опорных” прямоугольных импульсов. Этим TV-сигналом можно управлять через параметры “опорного”, прямоугольного, и получать чёрно-белую картинку, которую через радиоэфир принимает обычный телевизор, находящийся на некотором расстоянии от микроконтроллера. Впрочем, в исходной публикации используется не “самый обычный”, а портативный TV-приёмник Sony FD-30A Watchman, на который микроконтроллер транслирует по радио игру “Жизнь”.
Комментировать »
Когда-то, благодаря старому регистратору RU-CENTER, издавался такой замечательный, уникальный журнал – “Доменные имена”. Журнал выходил в печатном варианте, оформляли и верстали его, ни много ни мало, а в Ателье “Афиши”. У журнала был собственный заказной шрифт, особая бумага и удивительный дизайн каждого номера. А я некоторое время был главным редактором, так что хорошо помню процесс. Нынче даже и сайт журнала уничтожен (до сих пор не могу понять – почему).
Но сейчас не об этом.
Вот в 2012 году мы с Артемием Ломовым написали для этого журнала (ДИ, 2012/1(6)) занятную статью – “Сценарии конца Интернета”. Я на эту статью несколько раз уже ссылался на dxdt.ru. Интересно, что некоторые моменты из статьи стали сбываться, – частично, конечно, – прямо на следующий год после публикации. Например, сценарий про “Красную кнопку”. В статье упомянуты и “белые списки”, правда – в контексте “борьбы за копирайт”. В общем, дальше – пошло и поехало.
Там, в той статье, есть и про повреждение магистральных линий связи. Даже конкретно – подводных кабелей (не трудно было угадать, впрочем). Есть и про утрату инженерного подхода – тоже идёт процесс в этом направлении: посмотрите вокруг. В общем, много что охвачено. Но не нужно думать, что развал интернетов начался с той статьи. Вовсе нет. Я полагаю, что всё началось с желания писать слово “Интернет” со строчной буквы. Постоянно про это говорю. Не надо было так делать.
А вот чего нет в той статье, так это про сценарий с разгулом псевдо-ИИ на LLM, который мы сейчас наблюдаем. Разгул – с последующим уничтожением, как минимум, веба, путём затопления бредом, сгенерированным роботами для роботов. Ну, как – нет. Чтобы вот сказать, что прямо в точку – такого нет. А если вообще, про генераторы текста и затопление, то такое есть. Но немного в другом контексте. Цитата:
“А возможно, никакой технологической сингулярности не случится: как мы разобрались, есть угроза утраты человечеством инженерных навыков, поэтому разумные машины строить будет некому. В таком случае люди могут просто заскучать от «всех этих ваших интернетов», потерять интерес к компьютерам — и в результате мягкого глобального помешательства Сеть больше не нужна никому, сайты заброшены и не обновляются, замерз на ленте последний твит никому не известного жителя Техаса. Некоторое время разнообразные спам-боты и генераторы контента еще продолжат наполнять базы данных бессвязным текстовым бредом, предназначенным для чтения роботами поисковых машин, но потом потухнет и эта активность.
Опустевший Интернет завершил существование.”

Одно печально – когда мы эту статью писали, 14 лет назад, то сложно было представить, что реализовываться будет не один какой-то сценарий, а сразу все, параллельно. Видимо, чтобы наверняка.
Как я уже выше отметил – сайт журнала, который находился в домене nic.ru, уничтожен, и довольно давно. Поэтому даже и ссылку дать не получится: бумажные номера остались, но они – без гипертекста.
Комментарии (2) »
Новый