A Linear Algorithm for Computing Independence Polynomials of Trees

preprint2022arXivOpen access

Abstract

An independent set in a graph is a set of pairwise non-adjacent vertices. Let α(G)α(G) denote the cardinality of a maximum independent set in the graph G=(V,E)G = (V, E). Gutman and Harary defined the independence polynomial of GG I(G;x)=∑k=0α(G)skxk=s0+s1x+s2x2+...+sα(G)xα(G), I(G;x) = \sum_{k=0}^{α(G)}{s_k}x^{k}={s_0}+{s_1}x+{s_2}x^{2}+...+{s_{α(G)}}x^{α(G)}, where sks_k denotes the number of independent sets of cardinality kk in the graph GG. A comprehensive survey on the subject is due to Levit and Mandrescu, where some recursive formulas are allowing to calculate the independence polynomial. A direct implementation of these recursions does not bring about an efficient algorithm. Yosef, Mizrachi, and Kadrawi developed an efficient way for computing the independence polynomials of trees with nn vertices, such that a database containing all of the independence polynomials of all the trees with up to n−1n-1 vertices is required. This approach is not suitable for big trees, as an extensive database is needed. On the other hand, using dynamic programming, it is possible to develop an efficient algorithm that prevents repeated calculations. In summary, our dynamic programming algorithm runs over a tree in linear time and does not depend on a database.

Explore this paper’s authors, topics and related work.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.

Reviews 0

Write a reviewWrite

No reviews yet.

Discussion 0

Add a commentWrite

No comments yet.