reserve u,v,x,y,z,X,Y for set;
reserve r,s for Real;
reserve N for non empty ConjNormAlgStr;
reserve a,a1,a2,b,b1,b2 for Element of N;
reserve c,c1,c2 for Element of Cayley-Dickson(N);

theorem
  for N being almost_left_invertible associative add-associative
      right_zeroed right_complementable well-unital distributive Abelian
      scalar-distributive scalar-associative scalar-unital vector-distributive
      vector-associative reflexive discerning RealNormSpace-like
      almost_right_cancelable
      well-conjugated add-conjugative Banach_Algebra-like_2
      Banach_Algebra-like_3 non degenerated ConjNormAlgStr
  for a,b being Element of N st (a is non zero or b is non zero) &
  <%a,b%> is right_mult-cancelable left_invertible holds
  /<%a,b%> = <%1/(||.a.||^2+||.b.||^2) * a*' , 1/(||.a.||^2+||.b.||^2) * -b%>
  proof
    let N be almost_left_invertible associative add-associative
    right_zeroed right_complementable well-unital distributive Abelian
    scalar-distributive scalar-associative scalar-unital vector-distributive
    vector-associative reflexive discerning RealNormSpace-like
    almost_right_cancelable
    well-conjugated add-conjugative Banach_Algebra-like_2
    Banach_Algebra-like_3 non degenerated ConjNormAlgStr;
    let a,b be Element of N such that
A1: a is non zero or b is non zero and
A2: <%a,b%> is right_mult-cancelable left_invertible;
    set C = Cayley-Dickson(N);
    set m = 1/(||.a.||^2+||.b.||^2);
A3: b*'*-b = -b*'*b by VECTSP_1:8;
A4: a*'*a = ||.a.||^2 * 1.N by Th9;
A5: b*'*b = ||.b.||^2 * 1.N by Th9;
    b*'*(m*-b) = m*(b*'*-b) by LOPBAN_2:def 11;
    then
A6: m*a*'*a-b*'*(m*-b) = m*a*'*a--m*(b*'*b) by A3,RLVECT_1:25
    .= m*a*'*a+m*(b*'*b)
    .= m*(a*'*a)+m*(b*'*b) by FUNCSDOM:def 9
    .= m*(a*'*a+b*'*b) by RLVECT_1:def 5
    .= m*((||.a.||^2+||.b.||^2) * 1.N) by A4,A5,RLVECT_1:def 6
    .= m*(||.a.||^2+||.b.||^2) * 1.N by RLVECT_1:def 7
    .= 1 * 1.N by A1,XCMPLX_1:106
    .= 1.N by RLVECT_1:def 8;
    (m*-b)*a*' = m*((-b)*a*') by FUNCSDOM:def 9
    .= (-b)*(m*a*') by LOPBAN_2:def 11
    .= -b*(m*a*') by VECTSP_1:9;
    then
A7: b*(m*a*')+(m*-b)*a*' = 0.N by RLVECT_1:def 10;
    <%m*a*',m*-b%> * <%a,b%> = <%m*a*'*a-b*'*(m*-b),b*(m*a*')+(m*-b)*a*'%>
    by Def9
    .= 1.C by A6,A7,Def9;
    hence thesis by A2,ALGSTR_0:def 30;
  end;
