Как стать автором
Обновить
3
0
Marat Amerov @amerov

Веб-разработчик

Отправить сообщение

Ускоренный курс по нотациям в теории языков программирования

Время на прочтение10 мин
Количество просмотров31K
Программисты часто сталкиваются с проблемами чтения математических нотаций, когда пытаются разобраться с теоретическими основами какого-либо языка программирования. Также с ними толкнулся и я в своих теоретических изысканиях. К счастью, мне очень помогла замечательная статья Джереми Сиека (Jeremy Siek), чьим переводом я хочу с вами поделиться. Надеюсь она поможет многим программистам-«не математикам».
Читать дальше →
Всего голосов 25: ↑25 и ↓0+25
Комментарии4

Откуда есть пошло комплексное число

Время на прочтение3 мин
Количество просмотров150K
В современной математике комплексное число является одним из фундаментальнейших понятий, находящее применение и в «чистой науке», и в прикладных областях. Понятно, что так было далеко не всегда. В далекие времена, когда даже обычные отрицательные числа казались странным и сомнительным нововведением, необходимость расширения на них операции извлечения квадратного корня была вовсе неочевидной. Тем не менее, в середине XVI века математик Рафаэль Бомбелли вводит комплексные (в данном случае точнее сказать, мнимые) числа в оборот. Собственно, предлагаю посмотреть, в чем была суть затруднений, доведших в итоге солидного итальянца до подобных крайностей.
Читать дальше →
Всего голосов 144: ↑139 и ↓5+134
Комментарии59

От алгебры школьной — к университетской

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров11K

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

Для большинства наук и приложений, в машинном обучении, computer science прежде всего нужна, конечно, линейная алгебра. Для её успешного освоения нужно уверенно владеть элементарной алгеброй. На школьном уровне она (не)проста и скучна. Но при переходе в университет алгебра резко становится абстрактной и потому для многих сложной и непонятной: больно много аксиоматических определений — примеры еле поспевают. Как исторически произошёл этот скачок? Что нужно/полезно всем, изучающим математику, из высшей алгебры? Как лучше освоить азы линейной алгебры с прицелом на приложения, machine learning, не упустив что-то важное, но и не перетрудившись зря? Эти вопросы мы обсудим в статье.

Читать далее
Всего голосов 13: ↑11 и ↓2+10
Комментарии9

Разворачиваем систему уравнений в граф

Время на прочтение6 мин
Количество просмотров7.2K

Как-то во время учебы на инженера-теплоэнергетика я наткнулся на одну книгу [Попырин Л.С. Математическое моделирование и оптимизация теплоэнергетических установок. М. Энергия 1978г.], в которой был описан алгоритм построения расчётных схем энергетических установок, разработанный в Сибирском энергетическом институте (ныне - ИСЭМ СО РАН). Этот алгоритм заложен в основу СМПП (система машинного построения программ) - кодогенератора, который используется в исследованиях в ИСЭМ и по сей день. Собственно алгоритм предназначен для решения систем нелинейных уравнений, и, условно говоря, обобщает метод подстановки, знакомый многим из школьной алгебры.

Зачем это нужно?

В процессе проектирования или эксплуатации отдельных энергоблоков и электростанций в целом часто требуется решить задачу оптимизации - например, подобрать начальные параметры пара (температуру и давление перед турбиной), давление за турбиной, площадь поверхности нагрева котла, при которых достигается максимальный КПД цикла станции, экономический эффект за заданный период, или любой другой параметр.

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии6

Клеточные автоматы. Игра «Жизнь». Часть 1

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров9.2K

В этой статье мы поговорим о 'Жизни' - игре без участия человека, которую можно описать и провести с помощью карандаша и клетчатого листа бумаги. Всё начинается с нескольких простых правил, но куда это приведёт? Ответ поразит вас!

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

В статье мы покажем, как создать красивую симуляцию 'Жизни' на Python. Приготовьтесь к интересному исследованию!

Читать далее
Всего голосов 17: ↑15 и ↓2+16
Комментарии11

Математика и физика для простой и результативной учёбы (Серия: Сельскому учителю в помощь). Часть I

Уровень сложностиПростой
Время на прочтение36 мин
Количество просмотров13K

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

Читать далее
Всего голосов 19: ↑19 и ↓0+19
Комментарии43

Тайны инженерных расчётов

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров9.4K

Помните историю про "танцующий" мост? Эти тёплые времена, когда новости были просто интересными, а не вызывали посттравматическое расстройство...

В этой статье посмотрим, как выполняются инженерные расчёты и почему мост пустился в пляс. Добро пожаловать в наш инженерный клуб!

Кто мост шатал?
Всего голосов 19: ↑17 и ↓2+20
Комментарии19

Искусство прогнозирования: погружение в Марковские цепи

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров11K


Автор статьи: Артем Михайлов

Марковские цепи — это математическая модель, которая с успехом применяется в различных областях, таких как машинное обучение, генерация текстов или музыки, криптография и многих других. Модель была разработана Андреем Марковым в начале 20 века и с тех пор нашла широкое применение в различных областях.
Читать дальше →
Всего голосов 18: ↑17 и ↓1+21
Комментарии0

Зачем Программисту Микроконтроллеров Линейная Алгебра (или Как Найти Угол Между Векторами?)

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров12K

В программировании микроконтроллеров часто возникает задача найти угол между векторами.

Это всяческие встраиваемые системы, где есть подвижные, вращающиеся детали: PTZ камеры, поворотные платформы для радаров, турели, ветрогенераторы, солнечные панели, SDR обработка и прочее.

В данном тексте я приведу простое и понятное решение задачи вычисления угла между векторами на языке программирования Си.

Читать далее
Всего голосов 21: ↑18 и ↓3+21
Комментарии105

Теорема Байеса для чайников

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров58K

Теорема (формула) Байеса позволяет выяснить вероятность события при условии, что произошло связанное с ним другое событие.

Теорема позволяет рассчитать вероятность события, если причину и следствие поменять местами. Например, мы знаем распространенность симптома среди больных и здоровых. Значит, мы можем вычислить вероятность заболевания от наличия симптома.

Читать далее
Всего голосов 20: ↑19 и ↓1+22
Комментарии35

Одно из самых фундаментальных утверждений математики — теорема Гейне-Бореля-Лебега

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров13K

Сегодня я хочу рассказать Вам про известное утверждение из математического анализа, которое носит имя сразу трех знаменитых математиков 19 и 20 веков: Эмиля Бореля, Анри Лебега и Эдуарда Гейне.

Читать далее
Всего голосов 22: ↑18 и ↓4+22
Комментарии12

Зачем Программисту Микроконтроллеров Диофантовы Уравнения

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров12K

Школьные уроки математика не прошли даром.

Вот, настал день, когда впервые пришлось решить на работе Диофантовое уравнение.

Читать далее
Всего голосов 21: ↑20 и ↓1+23
Комментарии60

Эти ваши синусы

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров12K

Учебник летит в стену, тетрадь в сердцах рвётся на части, а отчаявшийся школьник кричит родителям: "Да кто придумал эти ваши синусы?".

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

Погрузиться по тьму веков
Всего голосов 28: ↑27 и ↓1+28
Комментарии0

Почему существует только 5 правильных многогранников? Ответ даёт неравенство из 8-го класса

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров29K

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

В новой статье мы узнаем, каким образом Платон, Евклид и Кеплер приоткрыли завесу над этой великой загадкой природы и поймем, почему все попытки построить шестое платоново тело обречены на провал.

Читать далее
Всего голосов 32: ↑28 и ↓4+33
Комментарии13

Числа с плавающей точкой для гуманитариев. Что это такое и как они работают

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров35K

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

В этой статье я простым языком попытаюсь изложить данную тему и помочь решить ряд вопросов: как на самом деле процессор хранит числа с плавающей точкой? Как точка хранится в памяти? Почему при сложении 0.1 + 0.2 получается ответ ~0.30000000000000004? Если по какому-то из этих вопросов вы чувствуете, что не можете дать точный ответ, то эта статья для вас.

Читать далее
Всего голосов 36: ↑35 и ↓1+39
Комментарии37

Единица по Бурбаки. Красота запредельной абстрактности

Уровень сложностиСложный
Время на прочтение10 мин
Количество просмотров16K

В своем стремлении к формальной точности математики, кажется, иногда переходят границу разумного. Tакая мысль, думаю, возникает у многих, когда они впервые видят определение единицы у Бурбаки.

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

Аккуратный расчет (здесь вы найдете ссылку на статью) показывает, что, если развернуть эти сокращения, то длина этого знакосочетания представляет 2 409 875 496 393 137 300 000 000 000 000 000 000 000 000 000 000 000 000 знаков и 871 880 233 733 949 100 000 000 000 000 000 000 000 000 000 000 000 000 связей. Это безумное число. Если бы мы попробовали записать его обычным шрифтом, то это заняло бы сто миллиардов квинтиллионов квинтиллионов книг.

Первое впечатление (и, согласитесь, обоснованное) - дичайший формализм, доведенный до абсурда.

Но при внимательном рассмотрении и некотором времени потраченном на изучение предмета приходит понимание того, насколько это красивое и точное определение. Более того, это довольно естественное и простое определение, и за 15 минут я попробую вас в этом убедить, даже если ваше знание математики ограничивается школой.

Читать далее
Всего голосов 35: ↑34 и ↓1+42
Комментарии63

Как выработать интуитивное понимание логарифмов

Уровень сложностиСложный
Время на прочтение14 мин
Количество просмотров30K

Я восхищаюсь способностью некоторых людей вычислять логарифмические функции в голове. Мне логарифмы всегда казались «чёрным ящиком», который невозможно познать. Они являются фундаментальным строительным блоком математики, однако каждый раз, когда я вижу логарифмическое выражение, то сразу хватаюсь за калькулятор, а не решаю его вручную. Последние полгода я уделял время совершенствованию понимания логарифмов и учился вычислять результаты логарифмических уравнений вручную. В статье я расскажу, как я это делал.

Зачем этому учиться?


Для меня способность вычисления логарифмов от руки — крайне нужный навык. Количество концепций, которые мы храним в рабочей памяти, ограничено, поэтому логично будет освоить максимально много концептуальных строительных блоков. Развив в себе хорошее интуитивное понимание логарифмических выражений, вы будете ощущать себя бесконечно увереннее в работе с уравнениями, включающими в себя логарифмы, и сможете справляться с уровнем сложности, который раньше считали немыслимым. А ещё они будут меньше пугать или отвлекать вас, когда встретятся в каком-то другом контексте.
Читать дальше →
Всего голосов 59: ↑56 и ↓3+72
Комментарии29

Книги, о которых редко говорят

Время на прочтение4 мин
Количество просмотров47K

Дал ему подборку книг, он приходит месяца через два, и с порога такой сразу:
— Я с друзьями не могу разговаривать.
— Ну да есть такой, недостаточек.
интервью Жака Фреско

Читать далее
Всего голосов 74: ↑72 и ↓2+87
Комментарии26

Как калькуляторы вычисляют синус?

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров55K

Синус, одна из фундаментальных тригонометрических функций, играет важнейшую роль в различных областях, включая математику, физику, проектирование и computer science. Процесс его вычисления нетривиален, особенно при реализации в электронных калькуляторах, где крайне важна эффективность и точность.

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

Читать далее
Всего голосов 77: ↑75 и ↓2+95
Комментарии52

Событийный автомат на страже жизненного цикла

Время на прочтение10 мин
Количество просмотров6.8K
Дисклеймер: Эта статья описывает неочевидное решение неочевидной проблемы. Прежде чем бросаться яйцами применять его на практике, рекомендую дочитать статью до конца и дважды подумать.

but_why


Всем привет! При работе с кодом, нам часто приходится иметь дело с состоянием. Один из таких случаев — жизненный цикл объектов. Управление объектом с несколькими возможными состояниями может быть весьма нетривиальной задачей. Добавьте сюда асинхронное исполнение и задача усложняется на порядок. Есть эффективное и естественное решение. В этой статье я расскажу о событийном автомате и как его реализовать в Go.

Читать дальше →
Всего голосов 5: ↑5 и ↓0+5
Комментарии0
1
23 ...

Информация

В рейтинге
5 415-й
Откуда
Джизак, Джизакская обл., Узбекистан
Дата рождения
Зарегистрирован
Активность

Специализация

Специалист
Linux
PostgreSQL
Software development
Git
Ruby