Конечные группы и подгруппы в абстрактной алгебре

Когда мы уже знаем, что такое группа (group), следующий шаг — понять её внутреннюю структуру. Для этого вводятся понятия: порядок группы (order of a group); порядок элемента (order of an element); подгруппа (subgroup); тесты на подгруппу (subgroup tests); порождённая подгруппа (generated subgroup); центр группы (center of a group); централизатор (centralizer). Это всё нужно, чтобы понимать, как группа устроена изнутри. Порядок группы Порядок группы (order of a group) — это количество элементов в …


Что такое группа в абстрактной алгебре и какие у неё есть свойства

Абстрактная алгебра (abstract algebra) изучает не конкретные числа или фигуры, а структуры вида: множество + операция + свойства операции Главный вопрос: какие свойства имеет операция? Если разные системы имеют одинаковые свойства, их можно изучать одинаковыми методами. Например: целые числа под сложением; симметрии квадрата; матрицы; перестановки; точки на elliptic curve. Все они могут быть группами. Бинарная операция Пусть: G — множество. Бинарная операция (binary operation) на G — это …


Введение в группы в абстрактной алгебре

Введение в группы (groups) часто начинают с симметрий квадрата, потому что это очень наглядный пример. Берём обычный квадрат. Рассматриваем все его симметрии (symmetries). По нашим условным правилам квадрат можно: поворачивать на 0, 90, 180, 270 градусов (rotations); отражать по вертикали, горизонтали и диагоналям (reflections); комбинировать такие движения друг с другом. Нас интересует не сам путь движения, а итоговый эффект (net effect), то есть как квадрат выглядит после преобразования. …


Функции и отображения в абстрактной алгебре

В абстрактной алгебре функция — это не просто школьная история типа y = x². Это основной язык, через который математика говорит: “один объект переходит в другой объект по некоторому правилу”. (Да-да, вино переходит в уксус, а Мюнхгаузен — в Феофила.) То есть функция описывает не только вычисление, но и связь между множествами, структурами, группами, кольцами, полями и так далее. Если множества (sets) — это “объекты”, то функции (functions / mappings) — это “стрелки” между объектами. Что такое …


Отношения эквивалентности и разбиения множества в абстрактной алгебре

В абстрактной алгебре одна из первых реально важных идей такова: иногда разные с виду объекты удобно считать “одинаковыми” — не вообще, а в рамках выбранного правила. Для этого вводится отношение эквивалентности (equivalence relation). Это не просто формальная академическая муть. Эта идея потом постоянно всплывает в криптографии и zero-knowledge в записях типа: Z/nZ F_p G/H На первый взгляд блок про эквивалентность кажется простым и почти философским, но это важный кирпич. Без него потом сложнее …


Xray VLESS + XHTTP + TLS Relay, WARP: Настройка надёжного проксирования через два сервера

Итак, сегодня мы поговорим о том, как пошагово настроить проксирование вашего трафика через два сервера. Мы установим Xray, используем Caddy как reverse proxy, задействуем связку VLESS + XHTTP + TLS, а также используем WARP как выходной канал. Это может быть полезно, если вы беспокоитесь о приватности и хотите спрятать свой реальный IP. Скажу сразу, что любой человек имеет право на разумный уровень приватности, доступ к независимой информации и на тайну личной переписки без каких-либо …


Zero knowledge: как это работает? Простое объяснение

Мы уже говорили о ZK и rollups в одном из уроков по Solidity, который можно посмотреть вот тут: Но как вообще объяснить идею ZK для тех, кто только входит в эту область? Есть два хороших примера, которые мы сегодня рассмотрим. В первую очередь важно понять основную суть ZK. Мы (prover) доказываем некому проверяющему наблюдателю (verifier), истинность некоторого утверждения. Часто за этим стоит секретная информация (witness), но само утверждение не обязано сводиться только к “я знаю секрет”. При …


Мои стихотворения

End of wanderings Through the distant paths of darkness, Under skies that yet unknown… We were drifting, we were marching To our long forgotten home. Many months and many seasons, Countless days and endless nights… We were hoping, we were pleading We were yearning for the light. Every tale has its conclusion, Every journey has its end, Every word that yet unspoken, Every prayer, guiding hand. We will cherish these emotions, Filled with hope, and joy, and grief. We will hold onto the memories And …


Самоучитель Go

Go — это современный популярный язык программирования для написания быстродействующих программ. Но возникает вопрос: с чего начать изучение? Я предлагаю вашему вниманию серию уроков на YouTube по Go, в которой мы обсудим основы языка и будем применять его на практике. Никакой воды, только актуальная информация. А знаете, что самое приятное? Всё это абсолютно бесплатно. Не надо отправлять SMS на короткий номер, вводить номер кредитной карты или подписываться кровью. Вы можете изучать материал в …


Как локальное приложение сделать доступным из Интернета

Итак, представим ситуацию: у вас локально запущен web-сервер с неким приложением. Вам нужно срочно сделать так, чтобы к этому приложению можно было получить доступ из Интернета. У вас нет времени на настройку хостинга (ну, или нет желания/возможности за него платить). Что делать? На самом деле, решить эту проблему можно очень легко, потратив буквально одну минуту. Нас выручит такое решение, как ngrok. Установка ngrok В первую очередь, идём на официальный сайт ngrok и следуем инструкциям по …


Что такое закон Амдала?

В этой статье мы поговорим о законе Амдала (Amdahl’s law) и он том, в чём его суть. Эта запись также доступна в нашем канале Telegram для разработчиков. Сущность закона Амдала Этот интересный закон был придуман Джином Амдалом несколько десятилетий назад, его время от времени упоминают в контексте информационных систем, так что знать его суть не помешает. Вообще, смысл данного закона весьма простой: если мы “улучшаем” (ускоряем) часть некой системы, то общий эффект на быстродействие всей системы …


Big-endian и little-endian: порядок следования байтов и причём тут Гулливер

В этой статье мы поговорим о понятиях big-endian и little-endian в computer science. Эта запись также доступна в канале Telegram “DEV: Рубиновые тона”, а обсудить же эту тему можно в нашем чате Telegram. Дом, который построил Свифт Частенько в руководствах и документации можно встретить термины big-endian и little-endian — да хотя бы в статье про кодировки UTF8 и ASCII. Но что эти понятия вообще значат? На самом деле, всё довольно просто: это буквально война тупоконечников и остроконечников (я …


Что такое Unicode, UTF-8 и ASCII?

В этой статье мы поговорим о том, как кодируется текст в современных компьютерах, а также о таких понятиях, как Unicode, UTF-8 и ASCII (и не только). Это запись по следам видеоурока, который можно найти на YouTube: Эта запись также доступна в канале Telegram “DEV: Рубиновые тона”, а обсудить же эту тему можно в нашем чате Telegram. Статья написана с использованием руководства Джоэля Спольского. Зачем нужны кодировки? Люди говорят, думают и пишут на естественных языках, многие из которых …


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

В этой статье мы поговорим о дробных числах (float) и их представлении в компьютере, в частности, о том, как их описывает стандарт IEEE 754, принятый в 1985 году. Если вас интересует представление целых чисел, об этом можно почитать в предыдущей статье. Это запись по следам видеоурока, который можно найти на YouTube: Эта запись также доступна в канале Telegram “DEV: Рубиновые тона”, а обсудить же эту тему можно в нашем чате Telegram. Дробные десятичные числа и их представления Чтобы было проще, …


Как в компьютере представлены целые числа?

Как целые числа представлены в современных компьютерах? Это немаловажный вопрос, ответ на который состоит из нескольких частей. Дело в том, что у нас есть обычные неотрицательные целые числа (uint), которые представляют собой последовательность от 0 и далее до бесконечности, и просто целые числа (int), которые могут быть и отрицательными, и положительными. Есть ещё числа дробные, но про них речь пойдёт в следующей статье. Это запись по следам видеоурока, который можно найти на YouTube: Эта …