FKT Algorithm
   HOME
*



picture info

FKT Algorithm
The FKT algorithm, named after Fisher, Kasteleyn, and Temperley, counts the number of perfect matchings in a planar graph in polynomial time. This same task is #P-complete for general graphs. For matchings that are not required to be perfect, counting them remains #P-complete even for planar graphs. The key idea of the FKT algorithm is to convert the problem into a Pfaffian computation of a skew-symmetric matrix derived from a planar embedding of the graph. The Pfaffian of this matrix is then computed efficiently using standard determinant algorithms. History The problem of counting planar perfect matchings has its roots in statistical mechanics and chemistry, where the original question was: If diatomic molecules are adsorbed on a surface, forming a single layer, how many ways can they be arranged? The partition function is an important quantity that encodes the statistical properties of a system at equilibrium and can be used to answer the previous question. However, trying t ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Michael Fisher
Michael Ellis Fisher (3 September 1931 – 26 November 2021) was an English physicist, as well as chemist and mathematician, known for his many seminal contributions to statistical physics, including but not restricted to the theory of phase transitions and critical phenomena. He was the Horace White Professor of Chemistry, Physics, and Mathematics at Cornell University. Later he moved to the University of Maryland College of Computer, Mathematical, and Natural Sciences, where he was University System of Maryland Regents Professor, a Distinguished University Professor and Distinguished Scholar-Teacher. Academic background Michael E. Fisher received his BSc from King's College London in 1951, where he also earned a PhD in physics in 1957, studying analogue computing under Donald MacCrimmon MacKay. He was appointed to the faculty as a lecturer the following year, becoming a full professor in 1965. In 1966 he moved to Cornell University where he became professor of chemistry ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Dimer (chemistry)
A dimer () ('' di-'', "two" + ''-mer'', "parts") is an oligomer consisting of two monomers joined by bonds that can be either strong or weak, covalent or intermolecular. Dimers also have significant implications in polymer chemistry, inorganic chemistry, and biochemistry. The term ''homodimer'' is used when the two molecules are identical (e.g. A–A) and ''heterodimer'' when they are not (e.g. A–B). The reverse of dimerization is often called dissociation. When two oppositely charged ions associate into dimers, they are referred to as ''Bjerrum pairs'', after Niels Bjerrum. Noncovalent dimers Anhydrous carboxylic acids form dimers by hydrogen bonding of the acidic hydrogen and the carbonyl oxygen. For example, acetic acid forms a dimer in the gas phase, where the monomer units are held together by hydrogen bonds. Under special conditions, most OH-containing molecules form dimers, e.g. the water dimer. Excimers and exciplexes are excited structures with a short lifetime. ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Spanning Tree
In the mathematical field of graph theory, a spanning tree ''T'' of an undirected graph ''G'' is a subgraph that is a tree which includes all of the vertices of ''G''. In general, a graph may have several spanning trees, but a graph that is not connected will not contain a spanning tree (see about spanning forests below). If all of the edges of ''G'' are also edges of a spanning tree ''T'' of ''G'', then ''G'' is a tree and is identical to ''T'' (that is, a tree has a unique spanning tree and it is itself). Applications Several pathfinding algorithms, including Dijkstra's algorithm and the A* search algorithm, internally build a spanning tree as an intermediate step in solving the problem. In order to minimize the cost of power networks, wiring connections, piping, automatic speech recognition, etc., people often use algorithms that gradually build a spanning tree (or many such trees) as intermediate steps in the process of finding the minimum spanning tree. The Internet and ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Graph Embedding
In topological graph theory, an embedding (also spelled imbedding) of a Graph (discrete mathematics), graph G on a surface (mathematics), surface \Sigma is a representation of G on \Sigma in which points of \Sigma are associated with graph theory, vertices and simple arcs (Homeomorphism, homeomorphic images of [0,1]) are associated with graph theory, edges in such a way that: * the endpoints of the arc associated with an edge e are the points associated with the end vertices of e, * no arcs include points associated with other vertices, * two arcs never intersect at a point which is interior to either of the arcs. Here a surface is a compact space, compact, connected space, connected 2-manifold. Informally, an embedding of a graph into a surface is a drawing of the graph on the surface in such a way that its edges may intersect only at their endpoints. It is well known that any finite graph can be embedded in 3-dimensional Euclidean space \mathbb^3.. A planar graph is one that ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Pfaffian Orientation Via FKT Algorithm Example
In mathematics, the determinant of a skew-symmetric matrix can always be written as the square of a polynomial in the matrix entries, a polynomial with integer coefficients that only depend on the size of the matrix. The value of this polynomial, when applied to the coefficients of a skew-symmetric matrix, is called the Pfaffian of that matrix. The term Pfaffian was introduced by who indirectly named them after Johann Friedrich Pfaff. The Pfaffian (considered as a polynomial) is nonvanishing only for 2''n'' × 2''n'' skew-symmetric matrices, in which case it is a polynomial of degree ''n''. Explicitly, for a skew-symmetric matrix A, : \operatorname(A)^2=\det(A), which was first proved by , who cites Jacobi for introducing these polynomials in work on Pfaffian systems of differential equations. Caley obtains this relation by specialising a more general result on matrices which deviate from skew symmetry only in the first row and the first column. The determinant of such a mat ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Arthur Cayley
Arthur Cayley (; 16 August 1821 – 26 January 1895) was a prolific United Kingdom of Great Britain and Ireland, British mathematician who worked mostly on algebra. He helped found the modern British school of pure mathematics. As a child, Cayley enjoyed solving complex maths problems for amusement. He entered Trinity College, Cambridge, where he excelled in Greek language, Greek, French language, French, German language, German, and Italian language, Italian, as well as mathematics. He worked as a lawyer for 14 years. He postulated the Cayley–Hamilton theorem—that every square matrix is a root of its own characteristic polynomial, and verified it for matrices of order 2 and 3. He was the first to define the concept of a group (mathematics), group in the modern way—as a set with a Binary function, binary operation satisfying certain laws. Formerly, when mathematicians spoke of "groups", they had meant permutation groups. Cayley tables and Cayley graphs as well as Cayle ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Determinant
In mathematics, the determinant is a scalar value that is a function of the entries of a square matrix. It characterizes some properties of the matrix and the linear map represented by the matrix. In particular, the determinant is nonzero if and only if the matrix is invertible and the linear map represented by the matrix is an isomorphism. The determinant of a product of matrices is the product of their determinants (the preceding property is a corollary of this one). The determinant of a matrix is denoted , , or . The determinant of a matrix is :\begin a & b\\c & d \end=ad-bc, and the determinant of a matrix is : \begin a & b & c \\ d & e & f \\ g & h & i \end= aei + bfg + cdh - ceg - bdi - afh. The determinant of a matrix can be defined in several equivalent ways. Leibniz formula expresses the determinant as a sum of signed products of matrix entries such that each summand is the product of different entries, and the number of these summands is n!, the factorial of (t ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Adjacency Matrix
In graph theory and computer science, an adjacency matrix is a square matrix used to represent a finite graph. The elements of the matrix indicate whether pairs of vertices are adjacent or not in the graph. In the special case of a finite simple graph, the adjacency matrix is a (0,1)-matrix with zeros on its diagonal. If the graph is undirected (i.e. all of its edges are bidirectional), the adjacency matrix is symmetric. The relationship between a graph and the eigenvalues and eigenvectors of its adjacency matrix is studied in spectral graph theory. The adjacency matrix of a graph should be distinguished from its incidence matrix, a different matrix representation whose elements indicate whether vertex–edge pairs are incident or not, and its degree matrix, which contains information about the degree of each vertex. Definition For a simple graph with vertex set , the adjacency matrix is a square matrix such that its element is one when there is an edge from vertex to ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Parity Of A Permutation
In mathematics, when ''X'' is a finite set with at least two elements, the permutations of ''X'' (i.e. the bijective functions from ''X'' to ''X'') fall into two classes of equal size: the even permutations and the odd permutations. If any total ordering of ''X'' is fixed, the parity (oddness or evenness) of a permutation \sigma of ''X'' can be defined as the parity of the number of inversions for ''σ'', i.e., of pairs of elements ''x'', ''y'' of ''X'' such that and . The sign, signature, or signum of a permutation ''σ'' is denoted sgn(''σ'') and defined as +1 if ''σ'' is even and −1 if ''σ'' is odd. The signature defines the alternating character of the symmetric group S''n''. Another notation for the sign of a permutation is given by the more general Levi-Civita symbol (''ε''''σ''), which is defined for all maps from ''X'' to ''X'', and has value zero for non-bijective maps. The sign of a permutation can be explicitly expressed as : where ''N''(''σ'' ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Pfaffian Orientation
In graph theory, a Pfaffian orientation of an undirected graph assigns a direction to each edge, so that certain cycles (the "even central cycles") have an odd number of edges in each direction. When a graph has a Pfaffian orientation, the orientation can be used to count the perfect matchings of the graph. This is the main idea behind the FKT algorithm for counting perfect matchings in planar graphs, which always have Pfaffian orientations. More generally, every graph that does not have the utility graph K_ as a graph minor has a Pfaffian orientation, but K_ does not, nor do infinitely many other minimal non-Pfaffian graphs. Definitions A Pfaffian orientation of an undirected graph is an orientation in which every even central cycle is oddly oriented. The terms of this definition have the following meanings: *An orientation is an assignment of a direction to each edge of the graph. *A cycle C is even if it contains an even number of edges. *A cycle C is central if the subgraph of G ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Orientation (graph Theory)
In graph theory, an orientation of an undirected graph is an assignment of a direction to each edge, turning the initial graph into a directed graph. Oriented graphs A directed graph is called an oriented graph if none of its pairs of vertices is linked by two symmetric edges. Among directed graphs, the oriented graphs are the ones that have no 2-cycles (that is at most one of and may be arrows of the graph). A tournament is an orientation of a complete graph. A polytree is an orientation of an undirected tree. Sumner's conjecture states that every tournament with vertices contains every polytree with vertices. The number of non-isomorphic oriented graphs with vertices (for ) is : 1, 2, 7, 42, 582, 21480, 2142288, 575016219, 415939243032, … . Tournaments are in one-to-one correspondence with complete directed graphs (graphs in which there is a directed edge in one or both directions between every pair of distinct vertices). A complete directed graph can be converted to an ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Adjacency Matrix
In graph theory and computer science, an adjacency matrix is a square matrix used to represent a finite graph. The elements of the matrix indicate whether pairs of vertices are adjacent or not in the graph. In the special case of a finite simple graph, the adjacency matrix is a (0,1)-matrix with zeros on its diagonal. If the graph is undirected (i.e. all of its edges are bidirectional), the adjacency matrix is symmetric. The relationship between a graph and the eigenvalues and eigenvectors of its adjacency matrix is studied in spectral graph theory. The adjacency matrix of a graph should be distinguished from its incidence matrix, a different matrix representation whose elements indicate whether vertex–edge pairs are incident or not, and its degree matrix, which contains information about the degree of each vertex. Definition For a simple graph with vertex set , the adjacency matrix is a square matrix such that its element is one when there is an edge from vertex to ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]