Here’s another post-hoc feedback. Sorry it doesn’t come before submission, I got sidetracked on other problems and figured since this one was by TheNinja it shouldn’t need too much review
-
it’s spelled “quaternion” (from latin numerus iterativum quater, “four”), not “quarternion”). Sprinkled all over the puzzle including title.
-
I don’t use them everyday, but when I did the real part came first, not last. The inversion is correctly specified in the problem, yet surprising. They’re a basis, not a linear equation set!
-
That said, cool problem, I like it!
-
I’m oddly satisfied that zero handling wasn’t needed at all.
-
Suggestion: remove parentheses where not needed in the example multiplication, since they’re not only not needed in the expected output but actually forbidden there.