Posts tagged with "Cs"

Total posts: 11

View all tags

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

Циклическая группа (cyclic group) — это группа, которую можно полностью получить (сгенерировать) из одного элемента. Иными словами, если имеется элемент a и если брать его степени: ..., a^-2, a^-1, e, a, a^2, a^3, ... то можно получить всю группу. Формально: G = <a> = {a^n | n ∈ Z} Такой элемент a называется generator (генератор). По-простому, один элемент “накручивает” всю группу. Важная ремарка про notation Если группа записывается в multiplicative notation, то пишут: a^n Это значит: a · a · a …


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

Когда мы уже знаем, что такое группа (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 На первый взгляд блок про эквивалентность кажется простым и почти философским, но это важный кирпич. Без него потом сложнее …


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

В этой статье мы поговорим о законе Амдала (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: Эта …