kmath
kmath copied to clipboard
Mathematical correctness of terms
As mentioned by @dievsky, the current names of Algebras are not quite consistent with mathematical definitions. For example, NDField is not actually a field since not all elements are invertable (a structure with a single zero is not). This fact should be shown in the documentation. There could be also limited renaming in class names if there are clear candidates.
Actually, there had been already some violations of structures' properties: e.g., + in MstRing is not commutative.
Indeed, those things should be mentioned in documentation as well.
- I made a mistake when called XOperations semiX in the doc comments.
- I still propose introducing a separate class for Group.
I do not want to complicate APIuselessly, so some use-cases are in order. Could you create a separate use case
issue for them?
Boolean algebra gives a ring where a + b = (a /\ -b) \/ (-x /\ y) and a * b = a /\ b
And multiplying boolean by scalar makes no sense of course.
As I already said, boolean algebra should be derived directly from Algebra
and not inherit any intermediate steps.