Prorab » Пн мар 09, 2026 11:32 am
В вашем примере sqrtp(2,2) вы передаете целые числа 2 и 2, пытаясь, по-видимому, извлечь квадратный корень из числа 2 в 2-адических числах. Это неверный синтаксис. Правильный способ — сначала создать p-адическое число с помощью функции evalp, а затем передать его в sqrtp.
Вот как правильно вычислить квадратный корень:
Создайте p-адическое число. Для этого используйте функцию evalp. Например, чтобы создать 2-адическое число 2, нужно написать evalp(2, 2). Второй аргумент — это простое число p.
Передайте полученный объект в sqrtp. Функция sqrtp применит извлечение корня к этому p-адическому числу.
maple
sqrtp(evalp(2, 2));
Ошибка, которую вы получали, возникала именно из-за несоответствия типов аргументов.