f[{a_,b_,c_,d_,e_,f_,g_,h_}] := { {a,{b,c,d}}, {{e,f,g},h} }; x[{{a_,B_},{C_,d_}},{{e_,F_},{G_,h_}}] := Simplify[{ {a e+B.G, a F + h B -Cross[C,G]}, {e C + d G + Cross[B,F], C.F + d h} }]; n[{{a_,B_},{C_,d_}}] := a d - B.C; xx[{{AA_,BB_},{CC_,DD_}},{{EE_,FF_},{GG_,HH_}}] := {{x[AA,EE]+x[BB,GG],x[AA,FF]+x[BB,HH]},{x[CC,EE]+x[DD,GG],x[CC,FF]+x[DD,HH]}}; ass[AAA_,BBB_,CCC_] := x[x[AAA,BBB],CCC]-x[AAA,x[BBB,CCC]]; bd[AAA_,BBB_] := x[AAA,BBB]-x[BBB,AAA]; oo[AAA_,BBB_] := x[AAA,BBB]+x[BBB,AAA]; (* [e,a]o(e,b,(e,c,d)) *) z1 = Random[Integer,{1,100}]; z2 = Random[Integer,{1,100}]; z3 = Random[Integer,{1,100}]; z4 = Random[Integer,{1,100}]; z5 = Random[Integer,{1,100}]; z6 = Random[Integer,{1,100}]; z7 = Random[Integer,{1,100}]; z8 = Random[Integer,{1,100}]; AA = f[{z1,z2,z3,z4,z5,z6,z7,z8}]; z1 = Random[Integer,{1,100}]; z2 = Random[Integer,{1,100}]; z3 = Random[Integer,{1,100}]; z4 = Random[Integer,{1,100}]; z5 = Random[Integer,{1,100}]; z6 = Random[Integer,{1,100}]; z7 = Random[Integer,{1,100}]; z8 = Random[Integer,{1,100}]; BB = f[{z1,z2,z3,z4,z5,z6,z7,z8}]; z1 = Random[Integer,{1,100}]; z2 = Random[Integer,{1,100}]; z3 = Random[Integer,{1,100}]; z4 = Random[Integer,{1,100}]; z5 = Random[Integer,{1,100}]; z6 = Random[Integer,{1,100}]; z7 = Random[Integer,{1,100}]; z8 = Random[Integer,{1,100}]; CC = f[{z1,z2,z3,z4,z5,z6,z7,z8}]; z1 = Random[Integer,{1,100}]; z2 = Random[Integer,{1,100}]; z3 = Random[Integer,{1,100}]; z4 = Random[Integer,{1,100}]; z5 = Random[Integer,{1,100}]; z6 = Random[Integer,{1,100}]; z7 = Random[Integer,{1,100}]; z8 = Random[Integer,{1,100}]; DD = f[{z1,z2,z3,z4,z5,z6,z7,z8}]; z1 = Random[Integer,{1,100}]; z2 = Random[Integer,{1,100}]; z3 = Random[Integer,{1,100}]; z4 = Random[Integer,{1,100}]; z5 = Random[Integer,{1,100}]; z6 = Random[Integer,{1,100}]; z7 = Random[Integer,{1,100}]; z8 = Random[Integer,{1,100}]; EE = f[{z1,z2,z3,z4,z5,z6,z7,z8}]; EE = f[{e1,e2,e3,d4,e5,e6,e7,e8}]; AA = f[{a1,a2,a3,a4,a5,a6,a7,a8}]; BB = f[{b1,b2,b3,b4,b5,b6,b7,b8}]; CC = f[{c1,c2,c3,c4,c5,c6,c7,c8}]; DD = f[{d1,d2,d3,d4,d5,d6,d7,d8}]; (* [e,a]o(e,b,(e,c,d)) *) g[AAA_,BBB_,CCC_,DDD_] := oo[ bd[EE,AAA],ass[EE,BBB,ass[EE,CCC,DDD]]]; ans = Simplify[g[AA,BB,CC,DD]] ; Print[ans]; ans = Simplify[g[CC,DD,AA,BB]] ; Print[ans];