Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Inverse of the transition map on a Manifold doesn't hold

I was trying to represent S³ as a three dimensional manifold, with coordinates (x,y,z,w) in R⁴, and make the transition map from the upper cap w > 0 to the lateral cap z<0, with the charts being the graphs of the caps as functions. I came up with the following code:

M = Manifold(3, 'S^3')

N = M.open_subset('N') 
projN.<x,y,z> = N.chart() 

E = M.open_subset('E') 
projE.<x,y,w> = E.chart()

ProjNE = projN.transition_map(projE,
                [x,y, sqrt(1-x^2-y^2-z^2)], intersection_name='D',
                restrictions1= z < 0, restrictions2= w>0)

It sounds reasonable, but calling

ProjNE.inverse()

failed. No problem, i tried using

ProjNE.set_inverse(u,v, -sqrt(1-u^2-v^2-w^2))

but i got the following warning:

Check of the inverse coordinate transformation:
  x == x  *passed*
  y == y  *passed*
  z == -abs(z)  **failed**
  x == x  *passed*
  y == y  *passed*
  w == abs(w)  **failed**
NB: a failed report can reflect a mere lack of simplification.

i don't know why the test is failing. The math sounds ok, where did it go wrong?

Inverse of the transition map on a Manifold doesn't hold

I was trying to represent S³ as a three dimensional manifold, with coordinates (x,y,z,w) in R⁴, and make the transition map from the upper cap w > 0 to the lateral cap z<0, with the charts being the graphs of the caps as functions. I came up with the following code:

M = Manifold(3, 'S^3')

N = M.open_subset('N') 
projN.<x,y,z> = N.chart() 

E = M.open_subset('E') 
projE.<x,y,w> = E.chart()

ProjNE = projN.transition_map(projE,
                [x,y, sqrt(1-x^2-y^2-z^2)], intersection_name='D',
                restrictions1= z < 0, restrictions2= w>0)

It sounds reasonable, but calling

ProjNE.inverse()

failed. No problem, i tried using

ProjNE.set_inverse(u,v, -sqrt(1-u^2-v^2-w^2))
ProjNE.set_inverse(x,y, -sqrt(1-x^2-y^2-w^2))

but i got the following warning:

Check of the inverse coordinate transformation:
  x == x  *passed*
  y == y  *passed*
  z == -abs(z)  **failed**
  x == x  *passed*
  y == y  *passed*
  w == abs(w)  **failed**
NB: a failed report can reflect a mere lack of simplification.

i don't know why the test is failing. The math sounds ok, where did it go wrong?

click to hide/show revision 3
retagged

Inverse of the transition map on a Manifold doesn't hold

I was trying to represent S³ as a three dimensional manifold, with coordinates (x,y,z,w) in R⁴, and make the transition map from the upper cap w > 0 to the lateral cap z<0, with the charts being the graphs of the caps as functions. I came up with the following code:

M = Manifold(3, 'S^3')

N = M.open_subset('N') 
projN.<x,y,z> = N.chart() 

E = M.open_subset('E') 
projE.<x,y,w> = E.chart()

ProjNE = projN.transition_map(projE,
                [x,y, sqrt(1-x^2-y^2-z^2)], intersection_name='D',
                restrictions1= z < 0, restrictions2= w>0)

It sounds reasonable, but calling

ProjNE.inverse()

failed. No problem, i tried using

ProjNE.set_inverse(x,y, -sqrt(1-x^2-y^2-w^2))

but i got the following warning:

Check of the inverse coordinate transformation:
  x == x  *passed*
  y == y  *passed*
  z == -abs(z)  **failed**
  x == x  *passed*
  y == y  *passed*
  w == abs(w)  **failed**
NB: a failed report can reflect a mere lack of simplification.

i don't know why the test is failing. The math sounds ok, where did it go wrong?

click to hide/show revision 4
retagged

Inverse of the transition map on a Manifold doesn't hold

I was trying to represent S³ as a three dimensional manifold, with coordinates (x,y,z,w) in R⁴, and make the transition map from the upper cap w > 0 to the lateral cap z<0, with the charts being the graphs of the caps as functions. I came up with the following code:

M = Manifold(3, 'S^3')

N = M.open_subset('N') 
projN.<x,y,z> = N.chart() 

E = M.open_subset('E') 
projE.<x,y,w> = E.chart()

ProjNE = projN.transition_map(projE,
                [x,y, sqrt(1-x^2-y^2-z^2)], intersection_name='D',
                restrictions1= z < 0, restrictions2= w>0)

It sounds reasonable, but calling

ProjNE.inverse()

failed. No problem, i tried using

ProjNE.set_inverse(x,y, -sqrt(1-x^2-y^2-w^2))

but i got the following warning:

Check of the inverse coordinate transformation:
  x == x  *passed*
  y == y  *passed*
  z == -abs(z)  **failed**
  x == x  *passed*
  y == y  *passed*
  w == abs(w)  **failed**
NB: a failed report can reflect a mere lack of simplification.

i don't know why the test is failing. The math sounds ok, where did it go wrong?