- leaves vectors in the bone unchanged,
- and leaves vectors in the 2D complementary space unchanged.

To this end we call `Linear.gs` passing n−2 independent vectors from the bone first.
This yields B which is an array of n orthonormal basis vectors the first n−2 of which lay in the bone.
Matrix B itself is expressed in the facet bcc of the interface between the two zones where we launched and captured the vectors on their cycle about the bone.
We then express X^{−1}Y in basis B thus:

A = BX^{−1}YB^{−1}.

Note that the above is a product of matrices all in bcc coordinates, while the resulting matrix can be taken as being expressed in the orthonormal basis vectors.

Consider a contravarient vector in a zone that is parallel to a vector in the bone. If crossing each facet between neighbors in the cycle about the bone leaves the vector parallel to the same vector of the bone, then the cycled vector would end up parallel to the same bone vector. Consider the itinerant vector when it is in the facet between vectors. It is by continuity parallel to the bone vector, and should so remain as it emerges into the neighbor’s space.

This sounds right yet the output with tag `xr` reports the parallel test vectors in each fbcc in test cases such as jo44.
In that computation the first vector of the n test vectors has components (1, 0, 0, 0) and this presumes the fbcc basis set.
All the basis vectors of a fbcc basis set but the last belong the facet.
In this case the logic assumes the bcc origin for the facet to be global vertex 3.
The vector (1, 0, 0, 0) is thus seen to be the vector from vertex 3 to vertex 0 which indeed lies in the facet, but not the bone which is simplex [0; 1; 2].
Indeed none of the test vectors are of the bone.
Perhaps we should renumber the vertices to improve our analysis of this same geometry.

This may cinch the argument: Consider some vector to be transmitted around a bone that is parallel to some vector in the bone. ‘Parallel’ is meaningful here because the bone is a sub-simplex of the zone and is thus included in the scope of the Euclidean geometry of the zone. As we move to the frame of the facet between neighboring zones, this parallel relationship is maintained. By induction the vector remains parallel, indeed equal, to its stay-at-home copy. This simple logic was suggested by looking at the numbers. Here is more detail.

Consider an orthonormal basis ON with the first n−2 elements in the bone. Interpret I (the n by n identity) as a linear transformation expressed in the ON basis, convert to fbcc, send that around the loop, convert back to the ON basis. That result should manifest or refute the speculation after we introduce random mods to the metric!

Create a matrix of vectors the first n−2 of which are in the bone. Do this in fbcc because then the matrix consists of only 0s and 1s.

Just now I am putting this code into file jo44fc which descends from jo44f because it provides the necessary context. I plan to move it later perhaps into jog.ml.

`ds2`- a function of two global vertex numbers yielding distance
^{2}. `fac`- which designates the facet for tapping.
`bid`- global vertex number of the facet vertex opposite the bone.
`fa`- merely an array form of
`fac`, suitable for indexing. `gd`- covariant metric tensor of fbcc.
`ip`- inner product for this metric.
`pON`- The orthonormal basis, expressed in fbcc.

Since B is an array of ON (orthonormal) basis vectors, expressed in fbcc, then B^{−1} is an array of fbcc basis vectors expressed in ON coordinates.
We send B around the loop yielding B' also in fbcc.

To express the linear transformation X^{−1}Y in these orthogonal basis we compute: C^{−1}X^{−1}YC where C = B^{†}.
To understand this expression imagine it working on a vector x expressed in fbcc: C^{−1}X^{−1}YCx.
When x is an edge of the bone, x has one 1 component and the rest zero.
Cx is then one of the orthonormal basis set.
Send Cx around the bone yielding RCx.
Compute (RCx)^{−1}RCx

Perhaps we should make