2012.14984 xPPN: An implementation of the parametrized post-Newtonian formalism using xAct for Mathematica
Many in the physics community are familiar with the xAct tensor manipulation suite for Mathematica, and those who aren't probably should be. In recent years, xAct has consolidated its place as the go-to computer algebra tool in gravitational theory, outperforming various predecessors with its powerful 'canonicalise' function, and attracting a flurry of applied package development. Some of these packages float and others sink: I'm curious to see how Manuel Hohmann's new xPPN package will fare.
Most modifications to Einstein's theory can be cast in the parametrized post-Newtonian (PPN) formalism. PPN allows the theory to be compared, as a ten-parameter modification of the Newtonian theory, against the gold standard set by GR. The implementation of PPN is usually extremely complicated, and varies substantially from theory to theory. Thus xPPN, a general implementation of the PPN formalism, is potentially very exciting.
At the heart of the implementation seems to be the definition of two bespoke manifolds for the \(3+1\) decomposition. Assuming that the covariant theory lives in some sense on \(M_4\), a spacelike foliation \(S_3\) and timelike threading \(T_1\) are introduced as separate xTensor manifolds, where \(M_4\cong T_1\times S_3\). This cuts right through the pre-existing notion of ADM decomposition in xAct, which I've wrestled with recently in the context of the Hamiltonian analysis. In the end, I kept a single Minkowski manifold \(M_4\), and defined a set of projections accompanied by very many rules. This is not ideal, but the relevant parts of xAct (such as xCoba) have quite patchy documentation, which makes life less than easy! I won't go into the guts of the higher functions of the package, but suffice to say the post-Newtonian potentials are all defined, along with certain 'utility functions' which facilitate the human-assisted expansion. A nice walk-through is provided for a simple Brans-Dicke-like theory, but since I've not tried it out, I can't offer further comment.
My main concern is the 'theory-scope' of the package. This is of course the hardest part to implement, since you can never tell quite in what terms the next theory will be cast. The Brans-Dicke theory obviously inherits much of the machinery of GR, but with an extra scalar \(\psi\) - I expect e.g. the variations on mimetic gravity could be similarly tackled. This scalar naturally has to be defined when using the package, and presumably one may extend to higher-spin fields also. Accordingly I've already recommended xPPN to a colleague who is working on the new relativistic completion of MOND. However, it is often interesting to build theories out of a gauge-covariant derivative. Accordingly, the xPPN package defines three connections: Levi-Civita, teleparallel and symmetric-teleparallel. I'm very happy about the last of these, which follows on from the non-metricity theories of Jiménez, Heisenberg and Koivisto, and is something I'd like to work on at some point. However, in the short term I'm interested in a free connection, in the context of torsion theories. This is likely workable in the xPPN setup, but might take some xAct-jitsu. Again, I'd have to try.
Overall, this paper introduces software rather than physics, and is structured accordingly. Nonetheless, I am happy to have come across xPPN, and am looking forward to trying it out in the near future.