|
|
last edited 14 years ago by Bill Page |
1 2 | ||
Editor: Bill Page
Time: 2011/05/26 19:10:54 GMT-7 |
||
Note: two-colors |
changed: -Linear operators over a 2-dimensional vector space representing the algebra of complex numbers Refs: - http://en.wikipedia.org/wiki/Braided_monoidal_category - http://en.wikipedia.org/wiki/Strongly_ribbon_category
Refs:
We need the Axiom LinearOperator library.
(1) -> )library CARTEN ARITY CMONAL CPROP CLOP CALEY
>> System error: The value 15684 is not of type LIST
Use the following macros for convenient notation
-- summation macro Σ(x,i, n)==reduce(+, [x for i in n])
-- list macro Ξ(f,i, n)==[f for i in n]
-- subscript and superscripts macro sb == subscript
macro sp == superscript
𝐋 is the domain of 2-dimensional linear operators over the rational functions ℚ (Expression Integer), i.e. ratio of polynomials with integer coefficients.
dim:=2
![]() | (1) |
macro ℒ == List
macro ℂ == CaleyDickson
macro ℚ == Expression Integer
𝐋 := ClosedLinearOperator(OVAR ['1,'2], ℚ)
There are no library operations named ClosedLinearOperator Use HyperDoc Browse or issue )what op ClosedLinearOperator to learn if there is any operation containing " ClosedLinearOperator " in its name.
Cannot find a definition or applicable library operation named ClosedLinearOperator with argument type(s) Type Type
Perhaps you should use "@" to indicate the required return type,or "$" to specify which version of the function you need.
We want to be able to implement linear operators with two "colors" like the following:
![]() |
An example starting with Complex Algebra
The basis consists of the real and imaginary units. We use complex multiplication to form the "multiplication table" as a matrix. Then the structure constants can be obtained by dividing each matrix entry by the list of basis vectors.
Split-complex can be specified by Caley-Dickson parameter (q0 = -1)
--q:=1 -- split-complex q:=sp('i,[2])
![]() | (2) |
QQ := ℂ(ℚ,'i, q);
There are no library operations named CaleyDickson Use HyperDoc Browse or issue )what op CaleyDickson to learn if there is any operation containing " CaleyDickson " in its name.
Cannot find a definition or applicable library operation named CaleyDickson with argument type(s) Type Variable(i) Symbol
Perhaps you should use "@" to indicate the required return type,or "$" to specify which version of the function you need.
Basis: Each B.i is a complex number
B:ℒ QQ := map(x +-> hyper x,1$SQMATRIX(dim, ℚ)::ℒ ℒ ℚ)
QQ is not a valid type.
Multiplication of arbitrary quaternions and
a:=Σ(sb('a,[i])*𝐞.i, i, 1..dim)
There are no library operations named 𝐞 Use HyperDoc Browse or issue )what op 𝐞 to learn if there is any operation containing " 𝐞 " in its name. Cannot find a definition or applicable library operation named 𝐞 with argument type(s) PositiveInteger
Perhaps you should use "@" to indicate the required return type,or "$" to specify which version of the function you need. FriCAS will attempt to step through and interpret the code. There are no library operations named 𝐞 Use HyperDoc Browse or issue )what op 𝐞 to learn if there is any operation containing " 𝐞 " in its name.
Cannot find a definition or applicable library operation named 𝐞 with argument type(s) PositiveInteger
Perhaps you should use "@" to indicate the required return type,or "$" to specify which version of the function you need.
Multiplication is Associative
test( ( Y! J ) / _ ( Y ) = _ ( I Y ) / _ ( Y! ) )
There are no library operations named Y! Use HyperDoc Browse or issue )what op Y! to learn if there is any operation containing " Y! " in its name.
Cannot find a definition or applicable library operation named Y! with argument type(s) Variable(J)
Perhaps you should use "@" to indicate the required return type,or "$" to specify which version of the function you need.
A scalar product is denoted by the (2,0)-tensor
U:=Σ(Σ(script('u,[[], [i, j]])*𝐝.i*($/𝐝.j), i, 1..dim), j, 1..dim)
There are no library operations named 𝐝 Use HyperDoc Browse or issue )what op 𝐝 to learn if there is any operation containing " 𝐝 " in its name. Cannot find a definition or applicable library operation named 𝐝 with argument type(s) PositiveInteger
Perhaps you should use "@" to indicate the required return type,or "$" to specify which version of the function you need. FriCAS will attempt to step through and interpret the code. There are no library operations named 𝐝 Use HyperDoc Browse or issue )what op 𝐝 to learn if there is any operation containing " 𝐝 " in its name.
Cannot find a definition or applicable library operation named 𝐝 with argument type(s) PositiveInteger
Perhaps you should use "@" to indicate the required return type,or "$" to specify which version of the function you need.
We say that the scalar product is associative if the tensor equation holds:
Y = Y U U
In other words, if the (3,0)-tensor:
![]() |
![]() | (3) |
How should we color this?