Обработка математических формул символьной алгебры — различия между версиями
(Новая страница: «{{Карточка_проекта |name=Обработка математических формул символьной алгебры |mentor=Алексей Н…») |
|||
Строка 8: | Строка 8: | ||
|categorize=yes | |categorize=yes | ||
}} | }} | ||
+ | |||
+ | ===Что за проект? === | ||
+ | |||
+ | Проект заключается в разработке программы, получающей на вход две математические формулы в виде строки, сравнивающая их на эквивалентность. Перевод символьных строк в математический формат, проведение операций с полученными данными. | ||
+ | |||
+ | ===Чему я научусь? === | ||
+ | |||
+ | При выполнении проекта студент получит опыт разработки грамматик, парсеров и разработки в области систем компьютерной алгебры. Кроме того студентом будет освоен стандартный стэк технологий для разработки ПО: системы контроля версий, unity-тестирование, benchmarking. | ||
+ | |||
+ | ===Какие начальные требования? === | ||
+ | |||
+ | Знание основных конструкций python/javascript(в окружении node.js), умение написать стандартный алгоритм(сортировки O(n^2), линейный поиск в строке, линейный поиск в массиве), умение оценить сложность алгоритма, знание ООП. | ||
+ | |||
+ | ===Какие будут использоваться технологии? === | ||
+ | |||
+ | * Будут использоваться библиотеки SymPy, NumPy(python), или Nermander, numbers.js(javascript), В проекте будут использоваться стандартные инструменты для разработки: | ||
+ | * git - система контроля версий | ||
+ | * любая ide | ||
+ | * любой инструмент для unit-тестирования. | ||
+ | |||
+ | ===Направления развития === | ||
+ | |||
+ | Этот проект может стать хорошим шагов в сторону разработки, и даст хорошее понимание основ работы современных интерпретаторов и компиляторов и систем компьютерной алгебры, что позволит дальше развиваться в любом из вышеперечисленных направлений. | ||
+ | |||
+ | ===Критерии оценки === | ||
+ | Будет объявлено позже | ||
+ | |||
+ | ===Ориентировочное расписание занятий === | ||
+ | * ПН с 15:00 | ||
+ | * ВТ по предварительной договорённости | ||
+ | * СР недоступен | ||
+ | * ЧТ с 13:40 | ||
+ | * ПТ по предварительной договорённости | ||
+ | * СБ 12:10 - 14:00 | ||
+ | |||
+ | ===Контакты=== | ||
+ | Алексей Никитин nikitin@cs.msu.su |
Текущая версия на 12:23, 16 октября 2018
Ментор | Алексей Никитин |
Учебный семестр | Осень 2018 |
Учебный курс | 2-й курс |
Максимальное количество студентов, выбравших проект: 3 | |
Что за проект?
Проект заключается в разработке программы, получающей на вход две математические формулы в виде строки, сравнивающая их на эквивалентность. Перевод символьных строк в математический формат, проведение операций с полученными данными.
Чему я научусь?
При выполнении проекта студент получит опыт разработки грамматик, парсеров и разработки в области систем компьютерной алгебры. Кроме того студентом будет освоен стандартный стэк технологий для разработки ПО: системы контроля версий, unity-тестирование, benchmarking.
Какие начальные требования?
Знание основных конструкций python/javascript(в окружении node.js), умение написать стандартный алгоритм(сортировки O(n^2), линейный поиск в строке, линейный поиск в массиве), умение оценить сложность алгоритма, знание ООП.
Какие будут использоваться технологии?
- Будут использоваться библиотеки SymPy, NumPy(python), или Nermander, numbers.js(javascript), В проекте будут использоваться стандартные инструменты для разработки:
- git - система контроля версий
- любая ide
- любой инструмент для unit-тестирования.
Направления развития
Этот проект может стать хорошим шагов в сторону разработки, и даст хорошее понимание основ работы современных интерпретаторов и компиляторов и систем компьютерной алгебры, что позволит дальше развиваться в любом из вышеперечисленных направлений.
Критерии оценки
Будет объявлено позже
Ориентировочное расписание занятий
- ПН с 15:00
- ВТ по предварительной договорённости
- СР недоступен
- ЧТ с 13:40
- ПТ по предварительной договорённости
- СБ 12:10 - 14:00
Контакты
Алексей Никитин nikitin@cs.msu.su