In the mathematical theory of
matroids, the rank of a matroid is the maximum size of an independent set in the matroid. The rank of a subset S of elements of the matroid is, similarly, the maximum size of an independent subset of S, and the rank function of the matroid maps sets of elements to their ranks.
The rank function is one of the fundamental concepts of matroid theory via which matroids may be axiomatized. Matroid rank functions form an important subclass of the
submodular set functions. The rank functions of matroids defined from certain other types of mathematical object such as
undirected graphs,
matrices, and
field extensions are important within the study of those objects.
Examples
In all examples, E is the base set of the matroid, and B is some subset of E.
Let M be the
free matroid, where the independent sets are all subsets of E. Then the rank function of M is simply: r(B) = |B|.
Let M be a
uniform matroid, where the independent sets are the subsets of E with at most k elements, for some integer k. Then the rank function of M is: r(B) = min(k, |B|).
Let M be a
partition matroid: the elements of E are partitioned into categories, each category c has capacity kc, and the independent sets are those containing at most kc elements of category c. Then the rank function of M is: r(B) = sumc min(kc, |Bc|) where Bc is the subset B contained in category c.
Let M be a
graphic matroid, where the independent sets are all the acyclic edge-sets (
forests) of some fixed
undirected graphG. Then the rank function r(B) is the number of vertices in the graph, minus the number of
connected components of B (including single-vertex components).
Properties and axiomatization
The rank function of a matroid obeys the following properties.
(R1) The value of the rank function is always a non-negative
integer and the rank of the empty set is 0.
These properties may be used as axioms to characterize the rank function of matroids: every integer-valued submodular set function on the subsets of a finite set that obeys the inequalities for all and is the rank function of a matroid.[1][2]
The rank function may be used to determine the other important properties of a matroid:
A set is independent if and only if its rank equals its cardinality, and dependent if and only if it has greater cardinality than rank.[3]
A nonempty set is a circuit if its cardinality equals one plus its rank and every subset formed by removing one element from the set has equal rank.[3]
A set is a basis if its rank equals both its cardinality and the rank of the matroid.[3]
A set is closed if it is
maximal for its rank, in the sense that there does not exist another element that can be added to it while maintaining the same rank.
The difference is called the nullity of the subset . It is the minimum number of elements that must be removed from to obtain an independent set.[4]
The corank of a subset can refer to at least two different quantities: some authors use it to refer to the rank of in the dual matroid, , while other authors use corank to refer to the difference .
Ranks of special matroids
In
graph theory, the
circuit rank (or cyclomatic number) of a graph is the corank of the associated
graphic matroid; it measures the minimum number of edges that must be removed from the graph to make the remaining edges form a forest.[5] Several authors have studied the
parameterized complexity of graph algorithms parameterized by this number.[6][7]
Matroid rank functions (MRF) has been used to represent utility functions of agents in problems of
fair item allocation. If the utility function of the agent is an MRF, it means that:
The agent's utility has
diminishing returns (this follows from the fact that the MRF is a submodular function);
The agent's
marginal utility for each item is dichotomous (binary) - either 0 or 1. That is, adding an item to a bundle either adds no utility, or adds a utility of 1.
The following solutions are known for this setting:
Babaioff, Ezra and Feige[10] design a deterministic polynomial-time
truthful mechanism called Prioritized Egalitarian, that outputs a Lorenz dominating allocation, which is consequently also EFX0, maximizes the product of utilities, attains 1/2-fraction
maximin share, and attains the full maximin share when the valuations are additive. With random priorities, this mechanism is also ex-ante
envy-free. They also study e-dichotomous valuations, in which the marginal utility is either non-positive or in the range [1,1+e].
Benabbou, Chakraborty, Igarashi and Zick[11] show that, in this setting, every
Pareto-optimal allocation maximizes the sum of utilities (the utilitarian welfare), the set of allocations that maximize a symmetric strictly-
concave functionf over all max-sum allocations does not depend on the choice of f, and all these f-maximizing allocations are EF1. This implies that the max-product allocations are the
leximin-optimal allocations, and they are all max-sum and EF1. They also present a polynomial-time algorithm that computes a max-sum and EF1 allocation (which does not necessarily maximize a concave function), and a polynomial-time algorithm that maximizes a concave function for the special case of MRFs based on
maximum-cardinality matching in bipartite graphs.