Символьные вычисления онлайн для школьников

Небольшая история про то, как сервис онлайн-вычислений CoCalc на базе системы компьютерной алгебры Sage помог нам решить задачку по физике…

Сегодня мы с моей дочерью решали задачку по физике тремя способами, и что-то закопались в вычислениях. Задачка была нетривиальная, но сводилась к телу, брошенному под углом к горизонту с высоты h. Соответственно решать её можно было либо кинематически (двумя способами), либо через энергию. И у нас получались разные ответы.

Это привело меня к тому, чтобы озадачиться поиском хорошего средства символьных вычислений, которое могло бы помочь нам перепроверить результаты. В былые времена я использовал Mathematica и даже MathCad, но с тех пор много воды утекло, бесплатной версии уже нет, поэтому решил искать замену. Короткий поиск по интернету привёл меня к вот этой статье, где разумными вариантами показались SageMath или Maxima. И я уже было решился ставить одну из них, когда в комментариях прочитал про онлайн-сервис CoCalc, который помимо прочего поддерживает Sage в режиме Jupyter Notebook.

Окно Sage Notebook в CoCalc

Интерфейс может показаться несколько сложноватым, но в целом мне удалось разобраться за пару минут. Мы описываем символьные переменные (если не знаете, как это делается в Sage - есть кнопочка x), потом можем поверх них определять более сложные выражения и функции, решать уравнения в символьном виде и т.д.

Помимо Sage, этот сервис поддерживает много вариантов документов, включая Jupyter Notebooks, и даже Linux-терминал. Прежде чем всё это использовать, вам придётся создать проект, в рамках которого группируются все связанные документы.

Linux-терминал в CoCalc

Что самое приятное - есть бесплатная опция, при которой всё вычисляется на бесплатном медленном сервере, есть ограничения на объем данных и время работы до принудительного отключения. Однако для большинства школьных задач думаю этого с лихвой хватит.

Основная же идея CoCalc состоит в том, чтобы разделять документы и проекты с коллегами, и работать над документами совместно. Думаю, это мы опробуем с дочерью уже в следующий раз…

Регистрация в сервисе занимает пару секунд, поскольку можно использовать для входа witter, GitHub account и другие социальные сервисы.

К слову, некоторые простые преобразования может быть удобнее сделать через Wolfram Alpha, которая вообще не требует регистрации и аккаунта.

Sample solution in Wolfram Alpha

Wolfram Alpha является наследником упомянутой мною Mathematica и использует тот же самый язык. Чтобы понять синтаксис языка, можно с первой страницы нажимать кнопки с интересующей темой, и вам будет показана куча примеров, среди которой вы найдете что-то подходящее.

Wofram Alpha Home Page

В моём случае я сразу же пошел в раздел Algebra, где были примеры решения уравнений с параметрами. И кстати тут же можно найти много примеров для вдохновения, например, я с трудом удерживаю себя от того, чтобы не провести пол-дня в разделе Computational Sciences.

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