Size: a a a

2021 February 18

JS

Jerzy Syrowiecki in Haskell Start
Aleksei (astynax) Pirogov
тогда делитель должен быть целым
нет, достаточно частное "оцелить"
источник

AP

Aleksei (astynax) Pi... in Haskell Start
тоже верно
источник

AP

Aleksei (astynax) Pi... in Haskell Start
The Lord of Hypercomplex Numbers
ghci не понравилась  такая идея
Импортируйте из Data.Fixed
источник

JS

Jerzy Syrowiecki in Haskell Start
The Lord of Hypercomplex Numbers
ghci не понравилась  такая идея
вот тут написано, откуда импортировать https://hackage.haskell.org/package/base-4.14.1.0/docs/doc-index-M.html
источник

A

Aragaer in Haskell Start
ну то есть x mod'' y это такое z, что для некоторого целого k выполняется x == k*y+z, причем z лежит в интервале от 0 до y
источник

AP

Aleksei (astynax) Pi... in Haskell Start
Jerzy Syrowiecki
вот тут написано, откуда импортировать https://hackage.haskell.org/package/base-4.14.1.0/docs/doc-index-M.html
источник

AP

Aleksei (astynax) Pi... in Haskell Start
Aragaer
ну то есть x mod'' y это такое z, что для некоторого целого k выполняется x == k*y+z, причем z лежит в интервале от 0 до y
Data.Fixed.divMod' как раз целое k возвращает, ага
источник

JS

Jerzy Syrowiecki in Haskell Start
Jerzy Syrowiecki
по определению. это целочисленная операция
точно так же в математике есть как минимум 3 существенно разных способа возведения в степень, поэтому в Хаскеле есть (^), (^^) и (**)
источник

JS

Jerzy Syrowiecki in Haskell Start
The Lord of Hypercomplex Numbers
ghci не понравилась  такая идея
в ошибке сказано "Variable not in scope" — переменная не видна. здесь ничего не сказано про идею. ghci не может что-то нравиться или не нравиться, это программа
источник

TZ

Timofey Zakrevskiy in Haskell Start
Jerzy Syrowiecki
точно так же в математике есть как минимум 3 существенно разных способа возведения в степень, поэтому в Хаскеле есть (^), (^^) и (**)
А в чём существенная разница?
источник

JS

Jerzy Syrowiecki in Haskell Start
Timofey Zakrevskiy
А в чём существенная разница?
(^) для неотрицательных степеней, (^^) — для целых

0 может стоять слева от (^), но не от (^^)

(-1) может стоять справа от (^^), но не от (^)
источник

TZ

Timofey Zakrevskiy in Haskell Start
Так это про программирование, не про математику
источник

JS

Jerzy Syrowiecki in Haskell Start
Timofey Zakrevskiy
Так это про программирование, не про математику
в математике первая арифметическая степень (^) определена через умножение,

вторая арифметическая (^^) — через умножение и деление (перестаёт работать в полугруппах без деления, например)
источник

JS

Jerzy Syrowiecki in Haskell Start
третья — алгебраическая (?) степень (**) — определена через экспоненту
источник

JS

Jerzy Syrowiecki in Haskell Start
-1 можно возводить в степень арифметически, но не алгебраически
источник

JS

Jerzy Syrowiecki in Haskell Start
(поправьте, если я напутал в терминах)
источник

JS

Jerzy Syrowiecki in Haskell Start
так что они даже не расширяют друг друга
источник

TZ

Timofey Zakrevskiy in Haskell Start
Jerzy Syrowiecki
так что они даже не расширяют друг друга
Я уложу сына спать и подумаю. Пока мне кажется, что они друг друга расширяют
источник

к

кана in Haskell Start
Jerzy Syrowiecki
-1 можно возводить в степень арифметически, но не алгебраически
в группах можно алгебраически, нужен просто обратный элемент, и вот уже все отрицательные степени доступны
источник

JS

Jerzy Syrowiecki in Haskell Start
(**) добавляет к области определения (^^) дробные степени, но убирает отрицательные основания
источник