Today I was toying around with reflecting points over other points, which I expanded to reflecting lists of points over other lists of points. In the process, I found an interesting yet somewhat bizarre algebraic structure to describe what I was doing, and I would like to know if there exists a name for it or if similar structures have been studied previously.
What follows is a description of the "observed properties" of this algebraic structure. I'm not currently certain which properties should be considered axioms and which are derived from others.
Let $(R, +, \cdot )$ be a set $R$ with two binary operations. Furthermore, each element of this set belongs to one of two possible "types." Each element of the first type (to be indicated with a subscript $_0$ such as $a_0$) represents a "translation," while each element of the second type ($a_1$) represents a "reflection." If a subscript is not provided then the relation should hold regardless of the type.
Addition acts as a "list-like" operator, based on how it interacts with multiplication (described later). It is associative but not commutative.
$$(a + b) + c = a + (b + c)$$
When two elements are added, their types xor together.
$$a_x + b_y = c_{x \oplus y}$$
Any element added to its negation (additive inverse) results in the identity.
$$a + -a = I_0$$
$$a + I_0 = I_0 + a = a$$
Any type-$1$ element is its own negation, as is the identity, but all other type-$0$ elements do not equal their negation.
$$a_1 = -a_1$$
$$I_0 = -I_0$$
Swapping the order of operands require that you negate both operands and the expression. The negation does not "distribute" over addition.
$$a + b = -(-b + -a)$$
I believe, but am not entirely certain, that $(R, +)$ qualifies as a group.
The multiplication operation represents the translation/reflection of one element by/over another:
- reflection of $a_1$ over $b_1$
$$a_1 \cdot b_1 = c_1$$
$$a_1 \cdot a_1 = a_1$$
- translation of $a_1$ by $b_0$
$$a_1 \cdot b_0 = c_1$$
- reflection of $a_0$ over $b_1$
$$a_0 \cdot b_1 = -a_0$$
- translation of $a_0$ by $b_0$
$$a_0 \cdot b_0 = a_0$$
The identity plays a special role here as well:
$$a \cdot I_0 = a$$
$$I_0 \cdot a = I_0$$
Multiplication is a non-associative, non-commutative, yet flexible operation, meaning that the following always holds:
$$(a \cdot b) \cdot a = a \cdot (b \cdot a)$$
Furthermore,
$$(a \cdot b) \cdot -a = (a \cdot b) \cdot a = a \cdot (b \cdot a) = a \cdot (b \cdot -a)$$
My somewhat bizarre addition operation was constructed to give multiplication of property of "folding over" addition from the left. That is,
$$a \cdot (b + c) = (a \cdot b) \cdot c$$
$$a \cdot (b + c + d + \ldots + y + z) = a \cdot b \cdot c \cdot d \cdot \ldots \cdot y \cdot z$$
I call this "folding" based on programming terminology, and I think this property is one of the more interesting ones. It follows from the above that there is no concept of left(?) division:
$$a \cdot (b + a) = (a \cdot b) \cdot a = a \cdot (b \cdot a)$$
$$(b + a) \ne (b \cdot a)$$
$$a_0 \cdot b_0 = a_0 = a_0 \cdot c_0$$
$$b_0 \ne c_0$$
Multiplication also distributes right, similar to the concept of "mapping" in programming.
$$(b + c) \cdot a = (b \cdot a) + (c \cdot a)$$
Negating the first argument of a multiplication expression is equivalent to negating the whole expression.
$$-a \cdot b = -(a \cdot b)$$
There also also some other useful equations to relate addition, multiplication, and negation:
$$-a + b + a = b \cdot a$$
$$a \cdot b = c \leftrightarrow c \cdot -b = a$$
$$a_0 \cdot b = a_0 \cdot -b$$
Again, I am not entirely confident on the self-consistency of these relationships. I don't have a real axiomatization yet. With the properties above I've been able to "prove" some simple equivalences such as
$$c_x \cdot (c_x \cdot a_1) \cdot b_x = c_x \cdot (b_x \cdot a_1 \cdot c_x)$$
which corresponds to this diagram (which uses "r" for "reflection" instead of "$\cdot$"):
Have similar algebraic structures been named/studied before? I am particularly interested in structures that obey $a \cdot (b + c) = (a \cdot b) \cdot c$. If possible, I would also like to find ways to reduce the role of "typing" in the properties listed above.
No comments:
Post a Comment