login  home  contents  what's new  discussion  bug reports     help  links  subscribe  changes  refresh  edit

Edit detail for SandBox Categorical Relativity revision 8 of 11

1 2 3 4 5 6 7 8 9 10 11
Editor: Bill Page
Time: 2013/09/18 18:12:57 GMT+0
Note: fix graph formatting

changed:
-\begin{latex}
-\digraph[scale=0.9]{CategoricalRelativity1}{rankdir=LR; P->Q [label="u"];
\begin{latex}.
\digraph[scale=0.5]{CategoricalRelativity1}{rankdir=LR; P->Q [label="u"];

changed:
-General addition of relative velocities (Oziewicz)
-\begin{axiom}
-addition(v,u,u') == ( u + v/gamma(u) - g(v,u')/g(u,u)*(u + u'/gamma(u)) ) / (1-g(v,u'))
-\end{axiom}
-
-\begin{axiom}
-Is2?(w(P,L)=addition(v,u,u'))
-IsPossible2?(w(P,L)=addition(w(Q,L),w(P,Q),w(Q,P)))
-\end{axiom}
General composition of relative velocities (Oziewicz)
\begin{axiom}
compose(v,u,u') == ( u + v/gamma(u) - g(v,u')/g(u,u)*(u + u'/gamma(u)) ) / (1-g(v,u'))
\end{axiom}

\begin{axiom}
Is2?(w(P,L)=compose(v,u,u'))
IsPossible2?(w(P,L)=compose(w(Q,L),w(P,Q),w(Q,P)))
\end{axiom}

changed:
-  Unlike Einstein addition of velocities, addition of relative velocities
  Unlike Einstein addition of velocities, composition (denoted $\oplus$) of relative velocities

changed:
-\begin{latex}
\begin{latex}.
\psfrag{alpha}[cc][cc]{$v \oplus u$}
\psfrag{beta}[cc][cc]{$w \oplus v$}
\psfrag{gamma}[cc][cc]{$(w\oplus v)+u=w\oplus (v\oplus u)$}

changed:
-  Q->R [label="v"]; R->S [label="w"]; P->R [label="v + u"];  Q->S [label="w + v"];
-  P->S [label="(w+v)+u=w+(v+u)"]; }
  Q->R [label="v"]; R->S [label="w"]; P->R [label="alpha"];  Q->S [label="beta"];
  P->S [label="gamma"]; }

changed:
---IsPossible2?(w(P,R)=addition(w(Q,R),w(P,Q),w(Q,P)))
---IsPossible2?(w(R,P)=addition(w(Q,P),w(R,Q),w(Q,R)))
-IsPossible2?(w(Q,S)=addition(w(R,S),w(Q,R),w(R,Q)))
-\end{axiom}
-
-\begin{axiom}
---IsPossible2?(w(P,S)=addition(w(Q,S),w(P,Q),w(Q,P)))
---IsPossible2?(w(P,S)=addition(w(R,S),w(P,R),w(R,P)))
--IsPossible2?(w(P,R)=compose(w(Q,R),w(P,Q),w(Q,P)))
--IsPossible2?(w(R,P)=compose(w(Q,P),w(R,Q),w(Q,R)))
IsPossible2?(w(Q,S)=compose(w(R,S),w(Q,R),w(R,Q)))
\end{axiom}

\begin{axiom}
--IsPossible2?(w(P,S)=compose(w(Q,S),w(P,Q),w(Q,P)))
--IsPossible2?(w(P,S)=compose(w(R,S),w(P,R),w(R,P)))

Special relativity without Lorentz transformations.

Here are some sample computations based on papers by Z. Oziewicz

and the book by T. Matolcsi

See also the slides: SandBoxRelativeVelocity? (presented at IARD 2006).

Mathematical Preliminaries

A vector is represented as a nx1 matrix (column vector)

fricas
vect(x:List Expression Integer):Matrix Expression Integer == matrix map(y+->[y],x)
Function declaration vect : List(Expression(Integer)) -> Matrix( Expression(Integer)) has been added to workspace.
Type: Void
fricas
vect [a1,a2,a3]
fricas
Compiling function vect with type List(Expression(Integer)) -> 
      Matrix(Expression(Integer))

\label{eq1}\left[ 
\begin{array}{c}
a 1 
\
a 2 
\
a 3 
(1)
Type: Matrix(Expression(Integer))

Then a row vector is

fricas
transpose(vect [a1,a2,a3])

\label{eq2}\left[ 
\begin{array}{ccc}
a 1 & a 2 & a 3 
(2)
Type: Matrix(Expression(Integer))

Inner product is

fricas
transpose(vect [a1,a2,a3])*vect [b1,b2,b3]

\label{eq3}\left[ 
\begin{array}{c}
{{a 3 \  b 3}+{a 2 \  b 2}+{a 1 \  b 1}}
(3)
Type: Matrix(Expression(Integer))

and tensor product is

fricas
vect [a1,a2,a3]*transpose(vect [b1,b2,b3])

\label{eq4}\left[ 
\begin{array}{ccc}
{a 1 \  b 1}&{a 1 \  b 2}&{a 1 \  b 3}
\
{a 2 \  b 1}&{a 2 \  b 2}&{a 2 \  b 3}
\
{a 3 \  b 1}&{a 3 \  b 2}&{a 3 \  b 3}
(4)
Type: Matrix(Expression(Integer))

Applying the Lorentz form produces a row vector

fricas
g(x)==transpose(x)*diagonalMatrix [-1,1,1,1]
Type: Void

or a scalar

fricas
g(x,y)== (transpose(x)*diagonalMatrix([-1,1,1,1])*y)::EXPR INT
Type: Void

For difficult verifications it is sometimes convenient to replace symbols by random numerical values.

fricas
possible(x)==subst(x, map(y+->(y=(random(100) - random(100))),variables x) )
Type: Void
fricas
Is?(eq:Equation EXPR INT):Boolean == (lhs(eq)-rhs(eq)=0)::Boolean
Function declaration Is? : Equation(Expression(Integer)) -> Boolean has been added to workspace.
Type: Void
fricas
Is2?(eq:Equation(Matrix(EXPR(INT)))):Boolean == _
( (lhs(eq)-rhs(eq)) :: Matrix Expression AlgebraicNumber = _
zero(nrows(lhs(eq)),ncols(lhs(eq)))$Matrix Expression AlgebraicNumber )::Boolean
Function declaration Is2? : Equation(Matrix(Expression(Integer))) -> Boolean has been added to workspace.
Type: Void

The AlgebraicNumber? domain can test for numerical equality of complicated expressions involving \sqrt{n}.

fricas
IsPossible?(eq:Equation EXPR INT):Boolean == _
  (possible(lhs(eq)-rhs(eq)) :: Expression AlgebraicNumber=0)::Boolean
Function declaration IsPossible? : Equation(Expression(Integer)) -> Boolean has been added to workspace.
Type: Void
fricas
IsPossible2?(eq:Equation(Matrix(EXPR(INT)))):Boolean == _
  ( map(possible,(lhs(eq)-rhs(eq))) :: Matrix Expression AlgebraicNumber = _
zero(nrows(lhs(eq)),ncols(lhs(eq)))$Matrix Expression AlgebraicNumber )::Boolean
Function declaration IsPossible2? : Equation(Matrix(Expression( Integer))) -> Boolean has been added to workspace.
Type: Void

Massive Objects

An object (also referred to as an obserser) is represented by a time-like 4-vector

fricas
P:=vect [sqrt(p1^2+p2^2+p3^2+1),p1,p2,p3];
Type: Matrix(Expression(Integer))
fricas
g(P,P)
fricas
Compiling function g with type (Matrix(Expression(Integer)),Matrix(
      Expression(Integer))) -> Expression(Integer)

\label{eq5}- 1(5)
Type: Expression(Integer)
fricas
Q:=vect [sqrt(q1^2+q2^2+q3^2+1),q1,q2,q3];
Type: Matrix(Expression(Integer))
fricas
g(Q,Q)

\label{eq6}- 1(6)
Type: Expression(Integer)

Associated with each such vector is the orthogonal 3-d Euclidean subspace E_P =\{x | P \cdot x = 0\}

Relative Velocity

An object Q has a unique relative velocity w(P,Q) with respect to object P given by

fricas
w(P,Q)==-Q/g(P,Q)-P
Type: Void

Lorentz factor

fricas
gamma(v)==1/sqrt(1-g(v,v))
Type: Void

Binary Boost

fricas
b(P,v)==gamma(v)*(P+v)
Type: Void

Observer P measures velocity u. u is space-like and in E_P.

fricas
u:=w(P,Q);
fricas
Compiling function w with type (Matrix(Expression(Integer)),Matrix(
      Expression(Integer))) -> Matrix(Expression(Integer))
Type: Matrix(Expression(Integer))
fricas
g(P,u)

\label{eq7}0(7)
Type: Expression(Integer)
fricas
possible(g(u,u))::EXPR Float
fricas
Compiling function possible with type Expression(Integer) -> 
      Expression(Integer)

\label{eq8}0.9999857413_817665124(8)
Type: Expression(Float)

fricas
IsPossible?(gamma(u)=-g(P,Q))
fricas
Compiling function gamma with type Matrix(Expression(Integer)) -> 
      Expression(Integer)
fricas
Compiling function IsPossible? with type Equation(Expression(Integer
      )) -> Boolean

\label{eq9} \mbox{\rm true} (9)
Type: Boolean

u is velocity of object Q

fricas
IsPossible?(g(Q,u)=gamma(u)-1/gamma(u))

\label{eq10} \mbox{\rm true} (10)
Type: Boolean

Observer Q is u-boost of P

fricas
IsPossible2?(Q=b(P,u))
fricas
Compiling function b with type (Matrix(Expression(Integer)),Matrix(
      Expression(Integer))) -> Matrix(Expression(Integer))
fricas
Compiling function IsPossible2? with type Equation(Matrix(Expression
      (Integer))) -> Boolean

\label{eq11} \mbox{\rm true} (11)
Type: Boolean

Inverse velocity is measured by Q

fricas
u' := w(Q,P);
Type: Matrix(Expression(Integer))
fricas
g(Q,u')

\label{eq12}0(12)
Type: Expression(Integer)

Inverse velocity is not reciprocal

fricas
IsPossible2?(-u=u')

\label{eq13} \mbox{\rm false} (13)
Type: Boolean

Object P is u'-boost of Q

fricas
IsPossible2?(P=b(Q,u'))

\label{eq14} \mbox{\rm true} (14)
Type: Boolean

Objects P and Q are completely determined by velocities u and u'

fricas
IsPossible2?(P = -1/g(u,u)*(u+u'/gamma(u)))

\label{eq15} \mbox{\rm true} (15)
Type: Boolean
fricas
IsPossible2?(Q = -1/g(u,u)*(u'+u/gamma(u)))

\label{eq16} \mbox{\rm true} (16)
Type: Boolean

The magnitude of the inverse velocity is the same as the velocity

fricas
IsPossible?(g(u,u)=g(u',u'))

\label{eq17} \mbox{\rm true} (17)
Type: Boolean

Collinear Velocities

Suppose the velocity v of some object L is collinear with reciprocal velocity u':

.
\digraph[scale=0.5]{CategoricalRelativity1}{rankdir=LR; P->Q [label="u"];
  Q->L [label="v"]; Q->P [label="u'"];}
 

fricas
v := alpha*u';
Type: Matrix(Expression(Integer))
fricas
L := b(Q,v);
Type: Matrix(Expression(Integer))
fricas
Is2?(v=w(Q,L))
fricas
Compiling function Is2? with type Equation(Matrix(Expression(Integer
      ))) -> Boolean

\label{eq18} \mbox{\rm true} (18)
Type: Boolean

Composition of collinear velocities

For velocity v collinear with reciprocal velocity u' we have Matolcsi (4.3.3)

fricas
Is2?(w(P,L)=(u-alpha*u)/(1-alpha*g(u,u)))

\label{eq19} \mbox{\rm true} (19)
Type: Boolean

General composition of relative velocities (Oziewicz)

fricas
compose(v,u,u') == ( u + v/gamma(u) - g(v,u')/g(u,u)*(u + u'/gamma(u)) ) / (1-g(v,u'))
Type: Void

fricas
Is2?(w(P,L)=compose(v,u,u'))
fricas
Compiling function compose with type (Matrix(Expression(Integer)),
      Matrix(Expression(Integer)),Matrix(Expression(Integer))) -> 
      Matrix(Expression(Integer))

\label{eq20} \mbox{\rm true} (20)
Type: Boolean
fricas
IsPossible2?(w(P,L)=compose(w(Q,L),w(P,Q),w(Q,P)))

\label{eq21} \mbox{\rm true} (21)
Type: Boolean

Associativity

Unlike Einstein addition of velocities, composition (denoted \oplus) of relative velocities is associative:

.
\psfrag{alpha}[cc][cc]{$v \oplus u$}
\psfrag{beta}[cc][cc]{$w \oplus v$}
\psfrag{gamma}[cc][cc]{$(w\oplus v)+u=w\oplus (v\oplus u)$}
\digraph[scale=0.9]{CategoricalRelativity2}{rankdir=LR; P->Q [label="u"];
  Q->R [label="v"]; R->S [label="w"]; P->R [label="alpha"];  Q->S [label="beta"];
  P->S [label="gamma"]; }
 

fricas
R:=vect [sqrt(r1^2+r2^2+r3^2+1),r1,r2,r3];
Type: Matrix(Expression(Integer))
fricas
g(R,R)

\label{eq22}- 1(22)
Type: Expression(Integer)
fricas
S:=vect [sqrt(s1^2+s2^2+s3^2+1),s1,s2,s3];
Type: Matrix(Expression(Integer))
fricas
g(S,S)

\label{eq23}- 1(23)
Type: Expression(Integer)

Unfortunately Axiom is not able to evaluate all of these in a reasonable amount of time (within the 1 minute wiki limit).

fricas
--IsPossible2?(w(P,R)=compose(w(Q,R),w(P,Q),w(Q,P)))
--IsPossible2?(w(R,P)=compose(w(Q,P),w(R,Q),w(Q,R)))
IsPossible2?(w(Q,S)=compose(w(R,S),w(Q,R),w(R,Q)))

\label{eq24} \mbox{\rm true} (24)
Type: Boolean

fricas
--IsPossible2?(w(P,S)=compose(w(Q,S),w(P,Q),w(Q,P)))
--IsPossible2?(w(P,S)=compose(w(R,S),w(P,R),w(R,P)))
0

\label{eq25}0(25)
Type: NonNegativeInteger?