structure tOrder = struct local structure E = Ein structure EinOp = Operators structure P= Printer structure O= OrderEin structure N = NormalizeEin in fun testO(rator, e)= print "" (*(print" \n " ;print(P.printerE(e)); print(" => "); let val newbie=rator(e) in print(P.printerE(newbie)); print(P.printerE(N.normalize(newbie))) end ) *) fun createO(tester,b)= testO(tester, Ein.EIN{params=[], index=[], body=b}) val o2=createO(O.orderfn,E.Prod[E.Sum(1, E.Prod[E.Tensor(0,[1]), E.Tensor(1, [1])]),E.Sum(2, E.Prod[E.Epsilon(0,2,3), E.Tensor(2,[2]), E.Tensor(3, [3]) ])]) val os7 =createO(O.orderfn,E.Apply(E.Partial([1]),E.Sum(2,E.Prod[E.Sum(2,E.Prod[E.Epsilon(2, 3, 4), E.Tensor(0, [3]), E.Tensor(1, [4])]) ,E.Epsilon(0,1,2)]))) (*S11(AxB) x (CxD)*) val os11=createO(O.orderfn,E.Prod[E.Sum(2,E.Prod[E.Epsilon(0,1,2), E.Sum(2,E.Prod[E.Epsilon(1,3,4),E.Tensor(0,[3]), E.Tensor(1, [4])]), E.Sum(2, E.Prod[E.Epsilon(2,5,6), E.Tensor(2,[5]), E.Tensor(3, [6]) ])])]) val eps= createO(O.orderfn,E.Prod[E.Epsilon(2,5,6),E.Epsilon(1,5,6),E.Epsilon(0,5,6)]) end; (* local *) end (* local *)
Click to toggle
does not end with </html> tag
does not end with </body> tag
The output has ended thus: [E.Epsilon(2,5,6),E.Epsilon(1,5,6),E.Epsilon(0,5,6)]) end; (* local *) end (* local *)