News
Index
Working with MUMIE as author
- Initial steps:
- Articles:
- Problems:
- Programming with Python
- Visualizations with JSXGraph
- Media Documents:
Working with MUMIE as teacher
Using MUMIE via plugin in local LMS
FAQ
You're not logged in
Working with MUMIE as author
Working with MUMIE as teacher
Using MUMIE via plugin in local LMS
FAQ
This section will cover the rules that are applied when normalizing and/or expanding functions. But before we start on
that, take a look at the example below which explains shortly how functions are handled internally within MUMIE.
Example:
Take the following function: $$x^4 \cdot (3 + 2)$$. To input the function into MUMIE, you would type the following:x^4*(3+2)
, which in turn could be graphically displayed as the image below.
MUMIE uses the following terminology regarding the tree you see above.
Operations can be combined together to make more complex operations. The formula used above can therefor also be referred to as an operation.
Every node has the following properties:
and based on the type, possibly a:
Keeping this in our mind, we can take a look at the rules being applied when normalizing and/or expanding functions.
When normalizing/expanding, all rules will be applied until a stable state of the function has been reached, resulting in a normalized/expanded function. The rules for
normalization and expanding
below (showing the Class name of the Java-code in brackets), along with several examples for each rule.
$$3 \cdot 5 \cdot x$$ | $$\Rightarrow$$ | $$15x$$ |
$$3 \cdot 5 \cdot x + 2 \cdot 4 \cdot y + 2 \cdot 3$$ | $$\Rightarrow$$ | $$15x+8y+2 \cdot 3$$ |
For addition:
$$4+(3-4)$$ | $$\Rightarrow$$ | $$4+3-4$$ |
$$3-(-4+x)$$ | $$\Rightarrow$$ | $$3+4-x$$ |
For multiplication:
$$3 \cdot (4 \cdot 9 \cdot x)$$ | $$\Rightarrow$$ | $$3 \cdot 4 \cdot 9 \cdot x$$ |
$$\frac{3}{\frac{1}{4} \cdot x}$$ | $$\Rightarrow$$ | $$\frac{3 \cdot 4}{x \cdot 1}$$ |
$$i^2$$ | $$\Rightarrow$$ | $$-1$$ |
$$i^8$$ | $$\Rightarrow$$ | $$1$$ |
$$i^{-7}$$ | $$\Rightarrow$$ | $$i$$ |
$$12.0+2.0^{3.0} \cdot 3$$ | $$\Rightarrow$$ | $$36$$ |
$$0 \cdot 3$$ | $$\Rightarrow$$ | $$0$$ |
$$0 \cdot x$$ | $$\Rightarrow$$ | $$0$$ |
$$2x^{0}$$ | $$\Rightarrow$$ | $$2 \cdot 1$$ |
$$y+2x + z - x$$ | $$\Rightarrow$$ | $$y+x+z$$ |
$$x \cdot y \cdot x$$ | $$\Rightarrow$$ | $$x^2 \cdot y$$ |
$$y \cdot x^2 \cdot z \cdot x^{-1}$$ | $$\Rightarrow$$ | $$y \cdot x \cdot z$$ |
Only handles the following three cases
$$x \cdot 1$$ | $$\Rightarrow$$ | $$x$$ |
$$x \cdot -1$$ | $$\Rightarrow$$ | $$-x$$ |
$$x + 0$$ | $$\Rightarrow$$ | $$x$$ |
Implements the following two rules:
$$(a^b)^c$$ | $$\Rightarrow$$ | $$a^{bc}$$ |
$$e^x$$ | $$\Rightarrow$$ | $$\exp(x)$$ |
If the node is a PowerOp with a rational exponent and the denominator of the exponent is n != 1. An n-th root node will be added as parent and the child will get the numerator as exponent.
$$x^{\frac{3}{2}}$$ | $$\Rightarrow$$ | $$\sqrt{x^3}$$ |
Sets exponent to $$1$$ and factor to $$+/- 1$$ and calculates its base.
$$(-2)^3$$ | $$\Rightarrow$$ | $$-8$$ |
This rule only works on functions that have an inverse function defined.
$$\cos(\arccos(x))$$ | $$\Rightarrow$$ | $$x$$ |
$$\ln(\exp(x))$$ | $$\Rightarrow$$ | $$x$$ |
This is a special case of the above rule.
$$\sqrt{x^2}$$ | $$\Rightarrow$$ | $$\vert x \vert$$ |
Currently only applies to the following functions: @abs, acos, asin, atan, cos, cosh, n-root (for uneven n), sinh, sin and tan@. The rule is dependent on whether the function is symmetric or antisymmetric.
$$\sin(-x)$$ | $$\Rightarrow$$ | $$-\sin(x)$$ |
$$\vert -x \vert$$ | $$\Rightarrow$$ | $$\vert x \vert$$ |
$$3 \cdot (-x + 4)$$ | $$\Rightarrow$$ | $$-3x + 12$$ |
$$4 \cdot (-b-3)$$ | $$\Rightarrow$$ | $$4 \cdot (-b) + 4 \cdot (-3)$$ |
$$-x^6$$ | $$\Rightarrow$$ | $$-1 \cdot x^6$$ |
$$(2 \cdot x)^4$$ | $$\Rightarrow$$ | $$2^4 \cdot x^4$$ |
$$(2+x)^4$$ | $$\Rightarrow$$ | $$(2+x) \cdot (2+x) \cdot (2+x) \cdot (2+x)$$ |
Updated by Greiser, 5 years ago – d267beb