Anonymous user
Conjugate transpose: Difference between revisions
Add {{incorrect}} Factor code.
m (→{{header|Tcl}}: some notes) |
(Add {{incorrect}} Factor code.) |
||
Line 15:
* MathWorld: [http://mathworld.wolfram.com/ConjugateTranspose.html conjugate transpose], [http://mathworld.wolfram.com/HermitianMatrix.html Hermitian matrix], [http://mathworld.wolfram.com/NormalMatrix.html normal matrix], [http://mathworld.wolfram.com/UnitaryMatrix.html unitary matrix]
=={{header|Factor}}==
{{incorrect|Factor|By using <code>m.</code> for [[matrix multiplication]], this code encounters a bug in Factor: see [[{{TALKPAGENAME}}#Bug in Factor]].}}
<lang factor>USING: kernel math.functions math.matrices sequences ;
IN: rosetta.hermitian
: conj-t ( matrix -- conjugate-transpose )
flip [ [ conjugate ] map ] map ;
: hermitian-matrix? ( matrix -- ? )
dup conj-t = ;
: normal-matrix? ( matrix -- ? )
dup conj-t [ m. ] [ swap m. ] 2bi = ;
: unitary-matrix? ( matrix -- ? )
[ dup conj-t m. ] [ length identity-matrix ] bi = ;</lang>
=={{header|Go}}==
|