kpeeters / cadabra2

A field-theory motivated approach to computer algebra.
https://cadabra.science/
GNU General Public License v3.0
230 stars 37 forks source link

Exterior derivative: notation and behaviour #172

Open Doxdrum opened 5 years ago

Doxdrum commented 5 years ago

The wedge symbol

Consider the following:

image

Notice that the product_rule algorithm does the jobs correctly, but the output could be improved by adding the wedge symbol after the $\mathrm{d}{f}$, i.e. $$\mathrm{d}{f} {\color{red} \wedge} V\wedge g\wedge W+f \mathrm{d}\left(V\wedge g\wedge W\right)$$

Nonetheless, at this stage the commutativity is treated correctly, e.g. see the output of the sort_product algorithm.

Substitution of a exterior differential

Consider now the following:

image

Notice that the lack of the wedge product symbol does not allow sort_product to behave correctly, since it misunderstand the role of $W$.

Trying to bypass the last problem

It occurs to me that the wedge could be added by hand, i.e. including the wedge even when multiplying by a 0-form, but it introduces misbehaviours with the unwrap and collect_factors algorithms, or even with further manipulations

image

Notice that the term with $f \mathrm{d}{f}$ will misbehave as in the previous cases.

image

kpeeters commented 5 years ago

Just to let you know that this is being worked on; most of it comes from the fact that product_rule acting on a product of a degree=0 form f and something else will incorrectly write the product of df and the rest as a normal product, not a wedge product.