Talk:Pfaffian

message: The intro says: "The Pfaffian is nonvanishing only for 2n × 2n skew-symmetric matrices".  This is not true.  As a counter example, take some skew-symmetric matrix A, which has some nonzero pfaffian Pf(A). All of the diagonal elements A_{ii} must be zero by assumption of skew-symmetry.  Now change A_{11} to one.  A is no longer skew symmetric, but it still has the same Pfaffian because the definition of the Pfaffian does not "see" the diagonal elements.  It is only a function of matrix elements like A_{P(a)P(2)} which are permutations of distinct indices.  Ltgoff  —Preceding undated comment added 22:52, 2 February 2010 (UTC)
thread_title: Introduction 

message: Although we have
:C_{ij}^2 = \det(A_{ij,ij})\det(A), \,
It doesn't directly imply the sign of C_{ij} as (-1)^{i+j} by simply taking the square root. May I know how to reach this step in detail?
--221.127.68.176 (talk) 16:26, 28 July 2009 (UTC)
thread_title:  Derivation from Determinant 

message: Is this the guy? Tosha
Do you know the story? Gauss's mother asked a mathematician 'who is the best mathematician in Germany?' and the answer was 'Pfaff'. 'What about my son?' - 'Oh, he's the best mathematician in Europe!'. Pfaff was Gauss's teacher, in a sense.
Charles Matthews 09:04, 9 Sep 2004 (UTC)
replies: text: This web page says so: http://members.aol.com/jeff570/p.html. He had a brother JW Pfaff, who was also a mathematician, which I hadn't realised. Charles Matthews 18:55, 9 Sep 2004 (UTC)
thread_title:  Johann Friedrich Pfaff 

message: Here's a Mathematica function for computing the Pfaffian of a matrix.  I don't suspect this belongs on the main page, so I'll just post it here and let the Wikipedia experts decide:
 
 Pf[A_] := If[Length[A] == 0, 1,
     Module[{L, A1, MatrixDelete},
       MatrixDelete[M_, i_] := Delete[#, i] & /@ Delete[M, i];
       L = Length[A]; A1 = MatrixDelete[A, 1];
       Sum[(-1)^i (A1i Pf[MatrixDelete[A1, i - 1]]), {i, 2, L}]]]
 
: The above recursive algorithm calculates the pfaffian for the general n×n matrix in O(n!) time. However for a skew symmetric matrix, the pfaffian can be calculated more efficiently in O(n3) time by generalized Gaussian elimination. The Mathematica package implements such algorithm is originally written by R. W. Cherng, which is available here: http://physics.harvard.edu/~cherng/programs.html. However the package is written in a C/FORTRAN manner, which runs slowly on Mathematica. I modify the code by vectorizing loops  to avoid explicit part references, which allows Mathematica to optimize the performance. The modified package code is posted as bellow. To use the package: copy and past to Mathematica notebook, and evaluate the cell once, then can use Pf[A] to obtain the pfaffian of the skew symmetric matrix A. Everett (talk) 08:35, 27 November 2010 (UTC)
thread_title:  Mathematica code 

message: It would be nice to see a qualified writer add to the applications section to include minimal free resolutions of codimension three Gorenstein quotients (a la Buchsbaum-Eisenbud in the 70s).  Courtney Gibbons 24 Mar 2011  — Preceding unsigned comment added by Virtualcourtney (talk • contribs) 22:47, 24 March 2011 (UTC)
thread_title:  Applications 

message: Matrix A is antisymmetric. It defines a symplectic structure. According to the Darboux theorem, there exists 
2n × 2n matrix O that brings A into the canonical form 
:O^TAO = J \equiv \begin{bmatrix}
\begin{matrix} 0 & 1\\ -1 & 0\end{matrix} &  0 & \cdots & 0 \\
0 & \begin{matrix}0 & 1\\ -1 & 0\end{matrix} &  & 0 \\
\vdots &  & \ddots & \vdots \\
0 & 0 & \cdots & \begin{matrix}0 & 1\\ -1 & 0\end{matrix}
\end{bmatrix}.
One can check that det||J|| = pf||J|| = 1, and so
: \operatorname{det||O^TAO||}=\operatorname{det^2||O||} \operatorname{det||A||} = 1,
: \operatorname{pf||O^TAO||}=\operatorname{det||O||} \operatorname{pf||A||} = 1.
These two lines being combined give
: \operatorname{pf^2||A||}=\operatorname{det||A||}.
Trompedo (talk) 08:21, 16 January 2013 (UTC)
thread_title: Simple proof of equation <math> \operatorname{pf^2||A||}=\operatorname{det||A||}</math>

message: that caused difficulties for Ms. Pendleton. The following equations are obvious
:\operatorname{pf}(A^{m}A(A^{T})^{m})=\operatorname{pf}(A^{m}A(-A)^{m})=\operatorname{pf}(A^{m}A(-)^{m}A^{m})=(-)^{nm}\operatorname{pf}(A^{2m+1}),
and
:\operatorname{pf}(A^{m}A(A^{T})^{m})=\det (A^{m})\operatorname{pf}(A)
=(\operatorname{det}(A))^{m}\operatorname{pf}(A)
=(\operatorname{pf}(A)^{2})^{m}\operatorname{pf}(A)=\operatorname{pf}(A)^{2m+1}.
Comparing these two lines, we obtain
:\operatorname{pf}(A^{2m+1})=(-)^{nm}\operatorname{pf}(A)^{2m+1}.
In the special case m = - 1, we arrive at the equation in the text. Trompedo (talk) 06:30, 21 February 2013 (UTC)
thread_title: Simple proof of equation <math> \operatorname{pf||A^{2m + 1}||}= (-1)^{nm}\operatorname{pf||A||}^{2m + 1}</math>

message: There's a reference to Wells' Curious and Interesting Numbers in the References section.  I have this work (metaphorically) open in front of me now, and I can't see anything on p.182 that seems remotely relevant. Can anyone help explain what that's all about? --Matt Westwood 07:21, 24 June 2018 (UTC)
thread_title:  Reference to Wells 

message: WaterWaterWaterLooLooLoo (talk) 22:11, 21 July 2019 (UTC)
thread_title:  Is it the same as Pfaffinant? 

message: The trace log identity for the product of pfaffians, and the resulting numerical method lacks references. https://arxiv.org/pdf/1605.00447.pdf appears to be a possible relevant reference, but the range of applicability of the formula is not clear from there either. The trace identity is stated for the case when A^T B is positive definite, but there is no mention of this restriction in the numerical methods section. The trace identity tr(log(AB)) = tr(log(A)) + tr(log(B)) is not true in general, only modulo 2 pi i because of the ambiguity of choosing the branch cut of the log.  — Preceding unsigned comment added by Dvarjas (talk • contribs) 21:08, 27 February 2020 (UTC)
thread_title:  References and clarification for the trace formula 

message: I saw someone contributing Mmca code in an earlier section, so I allow myself to contribute PARI code:
 pf(A)=if(#A>1,sum(j=2,#A,(-1)^j*A[1,j]*pf(A[^j,^j][^1,^1])),!#A)
This is not optimized but certainly much more efficient than to factor the determinant which already for a 6x6 antisymmetric matrix is a homogeneous polynomial of degree 6 with about 200 terms in the 10 independent components. — MFH:Talk 01:41, 28 March 2020 (UTC)
thread_title:  PARI/gp code 

message: The section Examples ends with this sentence:
"(Note that any skew-symmetric matrix can be reduced to this form with all b_i equal to zero; see Spectral theory of a skew-symmetric matrix.)"
This makes no sense at all, however, because the symbol "b_i" has not been defined. 2601:200:C000:1A0:3932:3D49:97C7:A86A (talk) 17:21, 21 September 2021 (UTC)
thread_title:  Problem in Examples section