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

Edit detail for SandBoxGrassmannIsometry revision 6 of 7

1 2 3 4 5 6 7
Editor: page
Time: 2009/09/11 19:52:04 GMT-7
Note: bug!

changed:
-The Grassmann Hopf K-algebra is represented by the Axiom domain **Expression**
The Grassmann Hopf K-algebra is represented by the Axiom domain 'Expression'

changed:
-idot:=display(operator('dot,2), (x:List OutputForm):OutputForm +-> hconcat([x.1,_{_\cdot_} ,x.2]));
-dot(A:E,B:E):E == (smaller?(A,B)=>idot(A,B);idot(B,A))
idot:=display(operator('dot,2), (x:List OutputForm):OutputForm +-> if x.1=x.2 then (x.1)^2 else paren hconcat([x.1,_{_\cdot_} ,x.2]));
Dot(A:E,B:E):E == idot(A,B)
dot(A:E,B:E):E ==
  smaller?(A,B)=>idot(A,B)
  idot(B,A)

changed:
-ihat:=display(operator('hat,2), (x:List OutputForm):OutputForm +-> hconcat([x.1,_{_\wedge_} ,x.2]));
-hat(A:E,B:E):E == (smaller?(A,B)=>ihat(A,B);-ihat(B,A))
-test(hat(P, Q)=-hat(Q,P))
-simplifyHat:=rule
-  dot(P, Q)^2-dot(P,P)*dot(Q,Q) == hat(P,Q)^2
-  -dot(P,Q)^2+dot(P,P)*dot(Q,Q) == -hat(P,Q)^2
-  dot(Q,R)*dot(P,R)-dot(R,R)*dot(P,Q) == dot(hat(R,Q),hat(R,P))
ihat:=display(operator('hat,2), (x:List OutputForm):OutputForm +-> paren hconcat([x.1,_{_\wedge_} ,x.2]));
Hat(A:E,B:E):E == ihat(A,B)
hat(A:E,B:E):E ==
  A=B=>0
  smaller?(A,B)=>ihat(A,B)
  -ihat(B,A)
test(hat(P, Q)=-hat(Q,P)) and test(hat(P,P)=0)
combine:=rule
  Dot(-A,B) == -dot(A,B)
  Dot(A,-B) == -dot(A,B)
  Dot(A,B)^2-Dot(A,A)*Dot(B,B) == hat(A,B)^2
  -Dot(A,B)^2+Dot(A,A)*Dot(B,B) == -hat(A,B)^2
  Dot(A,B)*Dot(A,C)-Dot(A,A)*Dot(B,C) == dot(hat(A,B),hat(A,C))
  Dot(A,B)*Dot(B,C)-Dot(B,B)*Dot(A,C) == dot(hat(B,A),hat(B,C))
  Dot(B,C)*Dot(A,C)-Dot(C,C)*Dot(A,B) == dot(hat(C,A),hat(C,B))

changed:
-map(x+->simplifyHat(x),eq35)
map(x+->combine(x),eq35)

changed:
-)set output tex off
-)set output algebra on
--)set output tex off
--)set output algebra on

changed:
-)set output tex on
-)set output algebra off
--)set output tex on
--)set output algebra off

changed:
-  a*dot(R,R)-b*dot(R,Q)+c*dot(R,P) == dot(R,v)
-  a*dot(Q,R)-b*dot(Q,Q)+c*dot(Q,P) == dot(Q,v)
-  a*dot(P,R)-b*dot(P,Q)+c*dot(P,P) == dot(P,v)
-eq47b := map(x+->eq45a simplifyHat x,eq47a.adjMat)
  a*Dot(R,R)-b*Dot(Q,R)+c*Dot(P,R) == dot(R,v)
  a*Dot(Q,R)-b*Dot(Q,Q)+c*Dot(P,Q) == dot(Q,v)
  a*Dot(P,R)-b*Dot(P,Q)+c*Dot(P,P) == dot(P,v)
  -a*Dot(R,R)+b*Dot(Q,R)-c*Dot(P,R) == -dot(R,v)
  -a*Dot(Q,R)+b*Dot(Q,Q)-c*Dot(P,Q) == -dot(Q,v)
  -a*Dot(P,R)+b*Dot(P,Q)-c*Dot(P,P) == -dot(P,v)

for i in 3..3 repeat
  for j in 2..2 repeat
    x:=(eq47a.adjMat)(i,j); outputAsTex ["x",i,j,x]
    y:=combine(x); outputAsTex ["y",i,j,y]
    z:=eq45a(y)
    outputAsTex ["z",i,j,z]

eq45x := rule
  -a*Dot(A,C)+b*Dot(A,B)-c*Dot(A,A) == -dot(A,v)
z
eq45x z
variables(z)

eq47b := map(x+-> eq45a combine(x),eq47a.adjMat)

changed:
-  dot(R,R)*a^2 + dot(Q,Q)*b^2 + dot(P,P)*c^2 - _
-  2*c*b*dot(P,Q) + 2*a*c*dot(R,P) - 2*a*b*dot(R,Q) == v^2
  Dot(R,R)*a^2 + Dot(Q,Q)*b^2 + dot(P,P)*c^2 - _
  2*c*b*Dot(P,Q) + 2*a*c*Dot(P,R) - 2*a*b*Dot(Q,R) == v^2

Isometry from Grassmann Multivectors

Representation

K is a unital associative and commutative ring represented by polynomials with rational coefficients of a set of symbols.

axiom
K:=SparseMultivariatePolynomial(Fraction Integer,Symbol)

\label{eq1}\hbox{\axiomType{SparseMultivariatePolynomial}\ } (\hbox{\axiomType{Fraction}\ } (\hbox{\axiomType{Integer}\ }) , \hbox{\axiomType{Symbol}\ })(1)
Type: Domain

The Grassmann Hopf K-algebra is represented by the Axiom domain Expression consisting of rational functions with coefficients from K over an additional set of symbols and common mathematical operators.

axiom
E:=Expression K

\label{eq2}\hbox{\axiomType{Expression}\ } (\hbox{\axiomType{SparseMultivariatePolynomial}\ } (\hbox{\axiomType{Fraction}\ } (\hbox{\axiomType{Integer}\ }) , \hbox{\axiomType{Symbol}\ }))(2)
Type: Domain
axiom
a:=a::Symbol::K; b:=b::Symbol::K; c:=c::Symbol::K;
Type: SparseMultivariatePolynomial?(Fraction(Integer),Symbol)
axiom
P:=P::Symbol::E; Q:=Q::Symbol::E; R:=R::Symbol::E;
Type: Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol))

Grassmann Algebra Operators

Symmetric inner product

axiom
idot:=display(operator('dot,2), (x:List OutputForm):OutputForm +-> if x.1=x.2 then (x.1)^2 else paren hconcat([x.1,_{_\cdot_} ,x.2]));
Type: BasicOperator?
axiom
Dot(A:E,B:E):E == idot(A,B)
Function declaration Dot : (Expression(SparseMultivariatePolynomial( Fraction(Integer),Symbol)),Expression( SparseMultivariatePolynomial(Fraction(Integer),Symbol))) -> Expression(SparseMultivariatePolynomial(Fraction(Integer),Symbol) ) has been added to workspace.
Type: Void
axiom
dot(A:E,B:E):E ==
  smaller?(A,B)=>idot(A,B)
  idot(B,A)
Function declaration dot : (Expression(SparseMultivariatePolynomial( Fraction(Integer),Symbol)),Expression( SparseMultivariatePolynomial(Fraction(Integer),Symbol))) -> Expression(SparseMultivariatePolynomial(Fraction(Integer),Symbol) ) has been added to workspace.
Type: Void
axiom
test(dot(P, Q)=dot(Q,P))
axiom
Compiling function dot with type (Expression(
      SparseMultivariatePolynomial(Fraction(Integer),Symbol)),
      Expression(SparseMultivariatePolynomial(Fraction(Integer),Symbol)
      )) -> Expression(SparseMultivariatePolynomial(Fraction(Integer),
      Symbol))

\label{eq3} \mbox{\rm true} (3)
Type: Boolean

Exterior product

axiom
ihat:=display(operator('hat,2), (x:List OutputForm):OutputForm +-> paren hconcat([x.1,_{_\wedge_} ,x.2]));
Type: BasicOperator?
axiom
Hat(A:E,B:E):E == ihat(A,B)
Function declaration Hat : (Expression(SparseMultivariatePolynomial( Fraction(Integer),Symbol)),Expression( SparseMultivariatePolynomial(Fraction(Integer),Symbol))) -> Expression(SparseMultivariatePolynomial(Fraction(Integer),Symbol) ) has been added to workspace.
Type: Void
axiom
hat(A:E,B:E):E ==
  A=B=>0
  smaller?(A,B)=>ihat(A,B)
  -ihat(B,A)
Function declaration hat : (Expression(SparseMultivariatePolynomial( Fraction(Integer),Symbol)),Expression( SparseMultivariatePolynomial(Fraction(Integer),Symbol))) -> Expression(SparseMultivariatePolynomial(Fraction(Integer),Symbol) ) has been added to workspace.
Type: Void
axiom
test(hat(P, Q)=-hat(Q,P)) and test(hat(P,P)=0)
axiom
Compiling function hat with type (Expression(
      SparseMultivariatePolynomial(Fraction(Integer),Symbol)),
      Expression(SparseMultivariatePolynomial(Fraction(Integer),Symbol)
      )) -> Expression(SparseMultivariatePolynomial(Fraction(Integer),
      Symbol))

\label{eq4} \mbox{\rm true} (4)
Type: Boolean
axiom
combine:=rule
  Dot(-A,B) == -dot(A,B)
  Dot(A,-B) == -dot(A,B)
  Dot(A,B)^2-Dot(A,A)*Dot(B,B) == hat(A,B)^2
  -Dot(A,B)^2+Dot(A,A)*Dot(B,B) == -hat(A,B)^2
  Dot(A,B)*Dot(A,C)-Dot(A,A)*Dot(B,C) == dot(hat(A,B),hat(A,C))
  Dot(A,B)*Dot(B,C)-Dot(B,B)*Dot(A,C) == dot(hat(B,A),hat(B,C))
  Dot(B,C)*Dot(A,C)-Dot(C,C)*Dot(A,B) == dot(hat(C,A),hat(C,B))
axiom
Compiling function Dot with type (Expression(
      SparseMultivariatePolynomial(Fraction(Integer),Symbol)),
      Expression(SparseMultivariatePolynomial(Fraction(Integer),Symbol)
      )) -> Expression(SparseMultivariatePolynomial(Fraction(Integer),
      Symbol))

\label{eq5}\begin{array}{@{}l}
\displaystyle
\left\{{{\left(- A{\cdot}B \right)}\mbox{\rm = =}-{{{\tt'}dot}\left({A , \: B}\right)}}, \: \right.
\
\
\displaystyle
\left.{{\left(A{\cdot}- B \right)}\mbox{\rm = =}-{{{\tt'}dot}\left({A , \: B}\right)}}, \: \right.
\
\
\displaystyle
\left.{{-{{A^2}\ {B^2}}+{{\left(A{\cdot}B \right)}^2}+ \%F}\mbox{\rm = =}{{{{{\tt'}hat}\left({A , \: B}\right)}^2}+ \%F}}, \: \right.
\
\
\displaystyle
\left.{{{{A^2}\ {B^2}}-{{\left(A{\cdot}B \right)}^2}+ \%G}\mbox{\rm = =}{-{{{{\tt'}hat}\left({A , \: B}\right)}^2}+ \%G}}, \: \right.
\
\
\displaystyle
\left.{{-{{A^2}\ {\left(B{\cdot}C \right)}}+{{\left(A{\cdot}B \right)}\ {\left(A{\cdot}C \right)}}+ \%H}\mbox{\rm = =}{{{{\tt'}dot}\left({{{{\tt'}hat}\left({A , \: B}\right)}, \:{{{\tt'}hat}\left({A , \: C}\right)}}\right)}+ \%H}}, \right.
\
\
\displaystyle
\left.\: \right.
\
\
\displaystyle
\left.{{{{\left(A{\cdot}B \right)}\ {\left(B{\cdot}C \right)}}-{{\left(A{\cdot}C \right)}\ {B^2}}+ \%I}\mbox{\rm = =}{{{{\tt'}dot}\left({{{{\tt'}hat}\left({B , \: A}\right)}, \:{{{\tt'}hat}\left({B , \: C}\right)}}\right)}+ \%I}}, \right.
\
\
\displaystyle
\left.\: \right.
\
\
\displaystyle
\left.{{-{{\left(A{\cdot}B \right)}\ {C^2}}+{{\left(A{\cdot}C \right)}\ {\left(B{\cdot}C \right)}}+ \%J}\mbox{\rm = =}{{{{\tt'}dot}\left({{{{\tt'}hat}\left({C , \: A}\right)}, \:{{{\tt'}hat}\left({C , \: B}\right)}}\right)}+ \%J}}\right\} 
(5)
Type: Ruleset(Integer,SparseMultivariatePolynomial?(Fraction(Integer),Symbol),Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol)))

  1. Isometry from Bivector

    In 1937 Elie Cartan observed that the Lie algebra of the isometry group  O_g = Aut(E,g) , is given by bivectors E^{\wedge 2} \subset \mathcal{Cl}(E,g).

axiom
eq33 := matrix [[-dot(P,P),   dot(Q,P)+c], _
                [-dot(P,Q)+c, dot(Q,Q)  ]]

\label{eq6}\left[ 
\begin{array}{cc}
-{P^2}&{{\left(P{\cdot}Q \right)}+ c}
\
{-{\left(P{\cdot}Q \right)}+ c}&{Q^2}
(6)
Type: Matrix(Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol)))
axiom
eq35 := inverse(eq33)

\label{eq7}\left[ 
\begin{array}{cc}
-{{Q^2}\over{{{P^2}\ {Q^2}}-{{\left(P{\cdot}Q \right)}^2}+{c^2}}}&{{{\left(P{\cdot}Q \right)}+ c}\over{{{P^2}\ {Q^2}}-{{\left(P{\cdot}Q \right)}^2}+{c^2}}}
\
{{-{\left(P{\cdot}Q \right)}+ c}\over{{{P^2}\ {Q^2}}-{{\left(P{\cdot}Q \right)}^2}+{c^2}}}&{{P^2}\over{{{P^2}\ {Q^2}}-{{\left(P{\cdot}Q \right)}^2}+{c^2}}}
(7)
Type: Union(Matrix(Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol))),...)
axiom
map(x+->combine(x),eq35)

\label{eq8}\left[ 
\begin{array}{cc}
{{Q^2}\over{{{\left(P{\wedge}Q \right)}^2}-{c^2}}}&{{-{\left(P{\cdot}Q \right)}- c}\over{{{\left(P{\wedge}Q \right)}^2}-{c^2}}}
\
{{{\left(P{\cdot}Q \right)}- c}\over{{{\left(P{\wedge}Q \right)}^2}-{c^2}}}& -{{P^2}\over{{{\left(P{\wedge}Q \right)}^2}-{c^2}}}
(8)
Type: Matrix(Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol)))

  1. Isometry from Trivector

    Consider the following endomorphism,


\label{eq9}
L \equiv id_E - P \otimes \alpha - Q \otimes \beta - R \otimes \gamma  \ \ \in End_K E
(9)

\label{eq10}
t \equiv P \wedge Q \wedge R \ne 0, \mbox{and} \alpha \wedge \beta \wedge \gamma \ne 0
(10)

axiom
eq44 := matrix [[dot(P,P),   dot(Q,P)-a, dot(R,P)-b], _
                [dot(P,Q)+a, dot(Q,Q),   dot(R,Q)-c], _
                [dot(P,R)+b, dot(Q,R)+c, dot(R,R)  ]]

\label{eq11}\left[ 
\begin{array}{ccc}
{P^2}&{{\left(P{\cdot}Q \right)}- a}&{{\left(P{\cdot}R \right)}- b}
\
{{\left(P{\cdot}Q \right)}+ a}&{Q^2}&{{\left(Q{\cdot}R \right)}- c}
\
{{\left(P{\cdot}R \right)}+ b}&{{\left(Q{\cdot}R \right)}+ c}&{R^2}
(11)
Type: Matrix(Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol)))
axiom
eq47a := adjoint(eq44);
Type: Record(adjMat: Matrix(Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol))),detMat: Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol)))

axiom
--)set output tex off
--)set output algebra on
eq47a.adjMat::List List E

\label{eq12}\begin{array}{@{}l}
\displaystyle
\left[{
\begin{array}{@{}l}
\displaystyle
\left[{{{Q^2}\ {R^2}}-{{\left(Q{\cdot}R \right)}^2}+{c^2}}, \: \right.
\
\
\displaystyle
\left.{
\begin{array}{@{}l}
\displaystyle
{{\left(-{\left(P{\cdot}Q \right)}+ a \right)}\ {R^2}}+{{\left({\left(P{\cdot}R \right)}- b \right)}\ {\left(Q{\cdot}R \right)}}+ 
\
\
\displaystyle
{c \ {\left(P{\cdot}R \right)}}-{b \  c}
(12)
Type: List(List(Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol))))
axiom
--)set output tex on
--)set output algebra off
eq47a.detMat

\label{eq13}\begin{array}{@{}l}
\displaystyle
{{\left({{P^2}\ {Q^2}}-{{\left(P{\cdot}Q \right)}^2}+{a^2}\right)}\ {R^2}}-{{P^2}\ {{\left(Q{\cdot}R \right)}^2}}+ 
\
\
\displaystyle
{{\left({2 \ {\left(P{\cdot}Q \right)}\ {\left(P{\cdot}R \right)}}-{2 \  a \  b}\right)}\ {\left(Q{\cdot}R \right)}}+ 
\
\
\displaystyle
{{\left(-{{\left(P{\cdot}R \right)}^2}+{b^2}\right)}\ {Q^2}}+{2 \  a \  c \ {\left(P{\cdot}R \right)}}-{2 \  b \  c \ {\left(P{\cdot}Q \right)}}+ 
\
\
\displaystyle
{{c^2}\ {P^2}}
(13)
Type: Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol))

Simplifications

axiom
eq45 := a*R-b*Q+c*P = v

\label{eq14}{{a \  R}-{b \  Q}+{c \  P}}= v(14)
Type: Equation(Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol)))
axiom
eq45a := rule
  a*Dot(R,R)-b*Dot(Q,R)+c*Dot(P,R) == dot(R,v)
  a*Dot(Q,R)-b*Dot(Q,Q)+c*Dot(P,Q) == dot(Q,v)
  a*Dot(P,R)-b*Dot(P,Q)+c*Dot(P,P) == dot(P,v)
  -a*Dot(R,R)+b*Dot(Q,R)-c*Dot(P,R) == -dot(R,v)
  -a*Dot(Q,R)+b*Dot(Q,Q)-c*Dot(P,Q) == -dot(Q,v)
  -a*Dot(P,R)+b*Dot(P,Q)-c*Dot(P,P) == -dot(P,v)

\label{eq15}\begin{array}{@{}l}
\displaystyle
\left\{{{{a \ {R^2}}-{b \ {\left(Q{\cdot}R \right)}}+{c \ {\left(P{\cdot}R \right)}}+ \%K}\mbox{\rm = =}{{{{\tt'}dot}\left({R , \: v}\right)}+ \%K}}, \right.
\
\
\displaystyle
\left.\: \right.
\
\
\displaystyle
\left.{{{a \ {\left(Q{\cdot}R \right)}}-{b \ {Q^2}}+{c \ {\left(P{\cdot}Q \right)}}+ \%L}\mbox{\rm = =}{{{{\tt'}dot}\left({Q , \: v}\right)}+ \%L}}, \right.
\
\
\displaystyle
\left.\: \right.
\
\
\displaystyle
\left.{{{a \ {\left(P{\cdot}R \right)}}-{b \ {\left(P{\cdot}Q \right)}}+{c \ {P^2}}+ \%M}\mbox{\rm = =}{{{{\tt'}dot}\left({P , \: v}\right)}+ \%M}}, \right.
\
\
\displaystyle
\left.\: \right.
\
\
\displaystyle
\left.{{-{a \ {R^2}}+{b \ {\left(Q{\cdot}R \right)}}-{c \ {\left(P{\cdot}R \right)}}+ \%N}\mbox{\rm = =}{-{{{\tt'}dot}\left({R , \: v}\right)}+ \%N}}, \right.
\
\
\displaystyle
\left.\: \right.
\
\
\displaystyle
\left.{{-{a \ {\left(Q{\cdot}R \right)}}+{b \ {Q^2}}-{c \ {\left(P{\cdot}Q \right)}}+ \%O}\mbox{\rm = =}{-{{{\tt'}dot}\left({Q , \: v}\right)}+ \%O}}, \right.
\
\
\displaystyle
\left.\: \right.
\
\
\displaystyle
\left.{{-{a \ {\left(P{\cdot}R \right)}}+{b \ {\left(P{\cdot}Q \right)}}-{c \ {P^2}}+ \%P}\mbox{\rm = =}{-{{{\tt'}dot}\left({P , \: v}\right)}+ \%P}}\right\} 
(15)
Type: Ruleset(Integer,SparseMultivariatePolynomial?(Fraction(Integer),Symbol),Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol)))
axiom
for i in 3..3 repeat
  for j in 2..2 repeat
    x:=(eq47a.adjMat)(i,j); outputAsTex ["x",i,j,x]
    y:=combine(x); outputAsTex ["y",i,j,y]
    z:=eq45a(y)
    outputAsTex ["z",i,j,z]

\label{eq16}\begin{array}{@{}l}
\displaystyle
\mbox{\tt "x"}\  3 \  2 \ {
\begin{array}{@{}l}
\displaystyle
-{{P^2}\ {\left(Q{\cdot}R \right)}}+{{\left({\left(P{\cdot}Q \right)}- a \right)}\ {\left(P{\cdot}R \right)}}+ 
\
\
\displaystyle
{b \ {\left(P{\cdot}Q \right)}}-{c \ {P^2}}-{a \  b}
(16)

\label{eq17}\begin{array}{@{}l}
\displaystyle
\mbox{\tt "y"}\  3 \  2 \ {
\begin{array}{@{}l}
\displaystyle
{\left({\left(P{\wedge}Q \right)}{\cdot}{\left(P{\wedge}R \right)}\right)}-{a \ {\left(P{\cdot}R \right)}}+ 
\
\
\displaystyle
{b \ {\left(P{\cdot}Q \right)}}-{c \ {P^2}}-{a \  b}
(17)

\label{eq18}\begin{array}{@{}l}
\displaystyle
\mbox{\tt "z"}\  3 \  2 \ {
\begin{array}{@{}l}
\displaystyle
{\left({\left(P{\wedge}Q \right)}{\cdot}{\left(P{\wedge}R \right)}\right)}-{a \ {\left(P{\cdot}R \right)}}+ 
\
\
\displaystyle
{b \ {\left(P{\cdot}Q \right)}}-{c \ {P^2}}-{a \  b}
(18)
Type: Void
axiom
eq45x := rule
  -a*Dot(A,C)+b*Dot(A,B)-c*Dot(A,A) == -dot(A,v)

\label{eq19}{-{a \ {\left(A{\cdot}C \right)}}+{b \ {\left(A{\cdot}B \right)}}-{c \ {A^2}}+ \%Q}\mbox{\rm = =}{-{{{\tt'}dot}\left({A , \: v}\right)}+ \%Q}(19)
Type: RewriteRule?(Integer,SparseMultivariatePolynomial?(Fraction(Integer),Symbol),Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol)))
axiom
z

\label{eq20}\begin{array}{@{}l}
\displaystyle
{\left({\left(P{\wedge}Q \right)}{\cdot}{\left(P{\wedge}R \right)}\right)}-{a \ {\left(P{\cdot}R \right)}}+{b \ {\left(P{\cdot}Q \right)}}- 
\
\
\displaystyle
{c \ {P^2}}-{a \  b}
(20)
Type: Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol))
axiom
eq45x z

\label{eq21}\begin{array}{@{}l}
\displaystyle
{\left({\left(P{\wedge}Q \right)}{\cdot}{\left(P{\wedge}R \right)}\right)}-{a \ {\left(P{\cdot}R \right)}}+{b \ {\left(P{\cdot}Q \right)}}- 
\
\
\displaystyle
{c \ {P^2}}-{a \  b}
(21)
Type: Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol))
axiom
variables(z)

\label{eq22}\left[ P , \: Q , \: R \right](22)
Type: List(Symbol)
axiom
eq47b := map(x+-> eq45a combine(x),eq47a.adjMat)

\label{eq23}\left[ 
\begin{array}{ccc}
{-{{\left(Q{\wedge}R \right)}^2}+{c^2}}&{{\left({\left(P{\wedge}R \right)}{\cdot}{\left(Q{\wedge}R \right)}\right)}+{\left(v{\cdot}R \right)}-{b \  c}}&{-{\left({\left(P{\wedge}Q \right)}{\cdot}{\left(Q{\wedge}R \right)}\right)}-{\left(v{\cdot}Q \right)}+{a \  c}}
\
{{\left({\left(P{\wedge}R \right)}{\cdot}{\left(Q{\wedge}R \right)}\right)}+{\left(v{\cdot}R \right)}-{b \  c}}&{-{{\left(P{\wedge}R \right)}^2}+{b^2}}&{{\left({\left(P{\wedge}Q \right)}{\cdot}{\left(P{\wedge}R \right)}\right)}+{\left(v{\cdot}P \right)}-{a \  b}}
\
{-{\left({\left(P{\wedge}Q \right)}{\cdot}{\left(Q{\wedge}R \right)}\right)}+{\left(v{\cdot}Q \right)}+{a \  c}}&{{\left({\left(P{\wedge}Q \right)}{\cdot}{\left(P{\wedge}R \right)}\right)}-{a \ {\left(P{\cdot}R \right)}}+{b \ {\left(P{\cdot}Q \right)}}-{c \ {P^2}}-{a \  b}}&{-{{\left(P{\wedge}Q \right)}^2}+{a^2}}
(23)
Type: Matrix(Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol)))
axiom
map(x+->x^2,eq45)

\label{eq24}\begin{array}{@{}l}
\displaystyle
{{{a^2}\ {R^2}}+{{\left(-{2 \  a \  b \  Q}+{2 \  a \  c \  P}\right)}\  R}+{{b^2}\ {Q^2}}-{2 \  b \  c \  P \  Q}+{{c^2}\ {P^2}}}= 
\
\
\displaystyle
{v^2}
(24)
Type: Equation(Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol)))
axiom
eq47d := rule
  Dot(R,R)*a^2 + Dot(Q,Q)*b^2 + dot(P,P)*c^2 - _
  2*c*b*Dot(P,Q) + 2*a*c*Dot(P,R) - 2*a*b*Dot(Q,R) == v^2

\label{eq25}{{{a^2}\ {R^2}}-{2 \  a \  b \ {\left(Q{\cdot}R \right)}}+{{b^2}\ {Q^2}}+{2 \  a \  c \ {\left(P{\cdot}R \right)}}-{2 \  b \  c \ {\left(P{\cdot}Q \right)}}+{{c^2}\ {P^2}}+ \%R}\mbox{\rm = =}{{v^2}+ \%R}(25)
Type: RewriteRule?(Integer,SparseMultivariatePolynomial?(Fraction(Integer),Symbol),Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol)))
axiom
eq47d(eq47a.detMat)

\label{eq26}\begin{array}{@{}l}
\displaystyle
{{\left({{P^2}\ {Q^2}}-{{\left(P{\cdot}Q \right)}^2}+{a^2}\right)}\ {R^2}}-{{P^2}\ {{\left(Q{\cdot}R \right)}^2}}+ 
\
\
\displaystyle
{{\left({2 \ {\left(P{\cdot}Q \right)}\ {\left(P{\cdot}R \right)}}-{2 \  a \  b}\right)}\ {\left(Q{\cdot}R \right)}}+ 
\
\
\displaystyle
{{\left(-{{\left(P{\cdot}R \right)}^2}+{b^2}\right)}\ {Q^2}}+{2 \  a \  c \ {\left(P{\cdot}R \right)}}-{2 \  b \  c \ {\left(P{\cdot}Q \right)}}+ 
\
\
\displaystyle
{{c^2}\ {P^2}}
(26)
Type: Expression(SparseMultivariatePolynomial?(Fraction(Integer),Symbol))