DragginMath: Relations
Basic algebra is mostly about solving equations: expressions containing =.
There are also inequality relations: < ≤ ≠ ≥ >. Use them just as you use =.
Relations are not really operators, but DragginMath works with them as if they were. The formal language of mathematics is different for relations and operators, but for all intents and purposes, relations are composable (you can plug them together with other relations), commutable, associable, and distributable. This means you can build relations into operator trees, then drag them around and do things with them just as with true operators like + or ∗.
Relations won’t evaluate. This might change in the future, but for now DragginMath leaves it to you to recognize that 3=3 and 5<7 are true and that 2>9 is false. If you try to evaluate relations, DragginMath will evaluate everything but the relations. For example, evaluating 2∗2=1+3 gives the result 4=4, which happens to be true, but DragginMath doesn’t know that.
If you commute any relation in a chain, for example by dragging 3 sideways toward 5 in 3<5<7, the whole chain reverses the sense of the relation, leaving the result 7>(5>3). You can then reassociate to get 7>5>3.
DragginMath solves simple linear inequalities correctly, just as it does with equalities. More complicated inequalities are another matter. For any relationship that has a piecewise solution, stronger tools are needed; most non-linear relationships and anything involving absolute value are in this category. DragginMath can help you carry out the techniques required for their solution, but you must know what they are, when they are needed, and how to use them.
Distributing over Relations
The classic mantra of basic algebra is “Do the same thing to both sides.” You do this in DragginMath whenever you drag an operand onto a relation in Blue Mode.
It is sometimes useful to write an intent to do the same thing to both sides when a relation is being written. Oddly, after all these centuries, traditional math notation has no way of writing this, but DragginMath makes it simple and obvious. For example, enter (a=b)+c. Double-tap + to evaluate. The result is a+c=b+c. This is like the Distributive Property, but it works for any operator over any relation. It even works for complicated multi-operators like +ab÷c.
Some caution is required. For example, if you negate a relation like a<b, the two operands of the relation automatically swap with each other to become -b<-a. This is correct. But what if you multiply a<b by -c, as in (a<b)∗-c? Drag < onto ∗. DragginMath swaps the operands, but this is only true if c is positive, and DragginMath has no way of knowing if that is really the case. Maybe you don’t know either, so pay attention.
This is not the only way this problem arises. You must be aware of these issues, which DragginMath cannot fix for you. This is a tool, and any tool has limitations. This is one of them. You must understand the algebra that DragginMath is helping you do and make sure it has done the right thing.