1 Introduction
Fair division is a fundamental and interdisciplinary problem that has been extensively studied in economics, mathematics, political science, and computer science [21, 30, 24, 20, 3, 25, 28, 26, 27, 6, 18, 2, 14]. Generally, the goal is to find an allocation of a resource to agents, which is agreeable to all the agents according to their preferences. The first formal treatment of this problem was in 1948 by Steinhaus [31]. Following his work, a vast literature has been developed and several notions for measuring fairness have been suggested [31, 22, 12, 26, 14]. One of the most prominent and wellestablished fairness notions, introduced by Foley [22], is envyfreeness, which requires that each agent prefers his share over that of any other agent.
Traditionally, envyfreeness has been studied for both divisible and indivisible resources. When the resource is a single heterogeneous divisible item (i.e, can be fractionally allocated), envyfreeness admits strong theoretical guarantees. For example, it is shown that allocations exist that allocate the entire resource, and are both envyfree and Pareto efficient^{1}^{1}1 An allocation is Pareto efficient if it is not possible to reallocate the resources such that at least one agent is better off without making any other person worse off. and allocate each agent a contiguous piece of the resource [32]. Apart from mere existence, there are algorithms that find an envyfree allocation for arbitrary number of agents [4, 10, 19]. However, beyond divisibility, when dealing with a set of indivisible goods, envyfreeness is too strong to be attained; for example, for two agents and a single indivisible good, the agent that receives no good envies another party. Therefore, several relaxations of envyfreeness are introduced for the case of indivisible items [26, 12, 14]. One of these relaxations, suggested by Budish [12], is envyfreeness up to one good ()^{2}^{2}2 It is worth to mention that before the work of Budish [12] was implicitly addressed by Lipton et. al [26]. . An allocation of indivisible goods is if any possible envy of an agent for the share of another agent can be resolved by removing some good from the envied share. In contrast to envyfreeness, allocation always exists. Indeed, a simple roundrobin algorithm always guarantees for additive valuations, and a standard envygraph based allocation guarantees for more general (subadditive) valuations. Besides, it is shown that any Nash welfare maximizing allocation (allocation that maximizes the product of the agents’ utilities) is both Pareto efficient and .
Recently, Caragiannis et al. [14] suggested another intriguing relaxation of envyfreeness, namely envyfree up to any good (), which attracted a lot of attention. An allocation is said to be , if no agent envies another agent after the removal of any item from the other agent’s bundle. Theoretically, this notion is strictly stronger than and is strictly weaker than . In contrast to , questions related to notion is relatively unexplored. As an example, despite significant effort [14], the existence of such allocations is still unknown. The most impressive breakthrough in this area is the recent work of Chaudhury, Garg, and Mehlhorn [16], which shows that for the case of agents with additive valuations allocation always exists. Furthermore, unlike , Nash social welfare maximizing allocations are not necessarily [14].
Given this impenetrability of , a growing strand of research started considering its relaxations. For example, Plaut and Roughgarden [28], consider an approximate version of ^{3}^{3}3 An allocation is approximate , if for every pair of agents and , agent believes that the share allocated to him is worth at least fraction of the share allocated to agent , after removal of agent ’s least valued item (according to agent ’s preference). and provide a approximation solution for agents with subadditive valuation functions. For additive valuations, this factor is recently improved to by Amanatidis et al. [2]. Another interesting relaxation is withcharity. Such allocations donate a bundle of items to charity and guarantee for the rest of the items. The less valuable the donated items are, the more desirable the allocation is. Caragiannis et al.[13] show that there always exists an withcharity allocation where every agent receives half the value of his bundle in the optimal Nash social welfare allocation. Recently, Chaudhury et al. [18] have proposed an withcharity allocation such that no agent values the donated items more than his bundle and the number of donated items is less than the number of agents.
Considering the huge discrepancy between and , in this paper we wish to find a middle ground to bridge this gap. We therefore suggest another fairness criterion, namely envyfreeness up to a random item or , which is weaker than , yet stronger than . For this notion, we provide a polynomial time 0.73approximation algorithm, i.e., an algorithm that constructs 0.73 allocations in polynomial time. Our allocation method is based on a special type of matching, namely Nash Social Welfare Matching. In Section 1.1, we briefly discuss our techniques to obtain these results.
1.1 Our Results and Techniques
Envyfreeness up to a random item.
We suggest a new fairness notion, namely evnyfree up to a random good (). Roughly speaking, in an allocation, no agent envies another agent (in expectation), if we remove a random good from the bundle of agent . In other words, the expected value of agent for the bundle allocated to agent , after removing a random item from it is at most as much as the value of his own bundle. Obviously, is a weaker notion than , yet stronger than .
The intuition behind is to use randomness to reduce the severe impact of small items. To see what we mean by this term, consider the following scenario: suppose that the value of agent for his share is . In addition, assume that the bundle allocated to an agent contains two items, each with value to agent . Even though the allocation is currently with respect to agent , allocating even a very small item (say, with value close to to agent ) to agent violates condition for agent . This is counterintuitive in the sense that the last item allocated to agent was totally worthless to agent . On the other hand, allocating any item with value less than to agent preserves condition for agent . This property makes more flexible, especially when the number of items is not too much. On the other hand, as the number of items allocated to an agent grows larger, we expect and to be more and more aligned.
Similar to , we provide a counter example which shows that a Nash Social Welfare allocation is not necessarily (see Example 4). This separates from given the fact that a Nash Social welfare allocation is always [14]. It is worth mentioning that Caragiannis et al. [14] presented an example to show that Nash Social welfare allocation is not necessarily . However, their example is still . The difference between these two examples can be seen as an evidence for the distinction between and .
As noted, the best approximation guarantee for is by Amanatidis et al. [2]. Since every allocation is also , this result also provides a approximation algorithm for . In this paper, we improve this ratio to .
Theorem 1.
There exists an algorithm that finds a  allocation. In addition, such an allocation can be found in polynomial time.
In order to prove Theorem 1, we propose a threestep algorithm that finds a  allocation in polynomial time. Roughly speaking, in the first two steps, we allocate valuable (i.e., large) items while preserving the  property. Next, we use an envycycle based procedure to allocate the rest of the items. Figure 1 shows a flowchart of our method.
The first challenge to address is the method by which we must allocate large items in the first step. Interestingly, we introduce a special type of matching allocation with intriguing properties which makes it ideal for our algorithm. We call such an allocation a Nash Social Welfare Matching.
Nash Social Welfare Matching.
In the first step of the algorithm, we allocate one item to each agent such that the product of the utilities of the agents is maximized. The interesting fact about this allocation is that, not only does this allocation allocates large items, but it also provides very useful information about the value of the rest of the items. In Section 2 we broadly discuss such allocations and their properties. However, to shed light on their usefulness, assume that after a Nash Social Welfare Matching, agent envies agent with a ratio , meaning that he thinks the value of the good allocated to agent is times more than the value of his item. In that case, we can immediately conclude that the item allocated to agent is times more valuable to him (agent ) than any remaining item; otherwise, we could improve the utility product by allocating the most valuable remaining item to agent and giving his former item to agent (and of course, freeing agent ’s former item). In addition, we can express the same proposition for the value of the item allocated to agent for agent : the value of this item for agent is at most of the item allocated to agent . The above statement can be generalized to the arguments that include more than two agents. With this aim, we introduce several new concepts, including envyratio graph (a complete weighted graph that represents the envyratios between agents), improving cycles, and envyrank.
It is worth mentioning that the main challenge in many fair allocation problems for different fairness criteria (e.g., , ) is allocating valuable items. The structure of such matchings makes them ideal for allocating these items. We strongly believe that using Nash Social Welfare matching is not only useful for our algorithm, but can also be seen as a strong tool in the way of finding fair allocations related to the other fairness notions, especially maximinshare. In Section 4 we show how to use mathcing to obtain a simple algorithm with the approximation ratio of for . The approximation ratio of our algorithm matches the stateoftheart approximation result by Amanitidis et al. [1].
1.2 Related work
Fair allocation of a divisible resource (known as cake cutting) was first introduced by Steinhaus[31] in 1948, and since then has been the subject of intensive studies. We refer the reader to [11] and [29] for an overview of different fairness notions and their related results. Proportionality and Envyfreeness are among the most wellestablished notions for cake cutting. As mentioned, the literature of cake cutting admits strong positive results for these two notions (see [31] for details).
Since neither nor proportionality or any approximation of these notions can be guaranteed for indivisible goods, several relaxations are introduced for these two notions in the past decade. These relaxations include and for envyfreeness and maximinshare [12] for proportionality. Nash Social Welfare () is also another important notion in allocation of indivisible goods which is somewhat a trade off between fairness and optimality.
Apart from the results mentioned in the introduction for and , there are other studies related to these notions[7, 8, 9, 13, 14, 15]. In particular, Barman et al. [7] propose a pseudopolynomial time algorithm that finds an and pareto efficient allocation. They also show that any and pareto efficient allocation approximates Nash Social Welfare with a factor of . In contrast to , our knowledge of and beyond additive valuations is limited. For , the only positive results for general valuations is the work of Plaut and Roughgarden [28] which provides a  allocation. For , Grag et al. [23] prove an approximation guarantee for submodular valuations. Recently this factor is improved to [17].
Maximinshare is one of the most wellstudied notions in the recent years. In a pioneering study, Kurokawa et al. [25] provide an approximation algorithm with the factor of for maximinshare, which is improved to by Ghodsi et al [24]. Beyond additivity, Barman et al. [6] show that a simple round robin algorihtm can guarantee  for submodular valuations, and Ghodsi et al. provide approximation guarantees for submodular (), XOS () and subadditive () valuations. In addition, several notions are ramified from maximinshare, including weighted maximinshare (WMMS) [21], pairwise maximinshare (PMMS)[14], and groupwise maximinshare (GMMS)[5]. Several studies consider the relation between these notions and seek to find an allocation that guarantees a subset of them simultaneously. For example, Amanatidis et al. [1] investigate the connections between , , maximin share, and pairwise maximin share. They show that any allocation is also a  and a  allocation. They also prove that any allocation is a  and a PMMS allocation.
2 Preliminaries and Basic Observations
Fair allocation problem.
An instance of fair allocation problem consists of a set of agents, a set of goods, and a valuation profile . Each is a function of the form which specifies the preferences of agent over the goods. Throughout the paper, we assume that a valuation function satisfies the following conditions.

Normalization: .

Monotonicity: whenever .

Additivity: .
An allocation of a set of goods is an partition of , where is the bundle allocated to agent . Allocation is complete, if and is partial otherwise. Since we are interested in the allocations that allocate the whole set of items, the final allocation must be complete.
Fairness critera.
Given an instance of fair division problem and an allocation , an agent envies another agent , if he strictly prefers over his bundle . An allocation is then said to be envyfree (), if no agent envies another, i.e., for every pair of agents we have . As mentioned, envyfreeness is too strong to be guaranteed in an allocation of indivisible items. Therefore, two relaxations of this notion are introduced, namely envyfree up to one good () and envyfree up to any good ().
Definition 2.
An allocation is called

envyfree up to one good if for all we have ,

envyfree up to any good if for all we have .
Even though these two notions seem to be somewhat related, there is a huge discrepancy between the current results obtained for them. It is shown that even for instances with general valuations, an allocation always exists, and can be computed in polynomial time [26]. In contrast, whether or not an allocation always exists is still open, even for additive valuations.
In this paper, we introduce another relaxation of envyfreeness, namely envyfree up to a random good. Let
be a uniform distribution over the items of
that selects each item with probability
.Definition 3.
Allocation is envyfree up to a random good () if for all we have
Clearly, lies in between and : is a stronger notion of fairness than , and is stronger than . In Example 4, we show one structural difference between and : in contrast to , is not implied by an allocation that maximizes Nash social welfare.
Example 4.
5  

3  3  1  1  1  
5  5  1  4  3 
Consider an instance of the fair allocation problem with 5 items, and 2 agents with the valuations represented in Figure 2. The unique allocation that maximizes the allocates the first 3 items to the first agent, and the other 2 items to the second agent. Let be this allocation. Since there are 3 items in the first agent’s bundle, we have
Hence, this allocation is not .
Finally, approximate versions of and are defined as follows.
Definition 5.
For a constant , an allocation is called

approximate envyfree up to any good (), if for all we have

approximate envyfree up to a random good () if for all we have
Note that Example 4 also shows that the maximum allocation does not guarantee better than approximation of .
Envyratio Graph.
Envyratio graph is in fact a generalization of envygraph introduced by Lipton et al. [26]. Suppose that at some stage of our algorithm we have a partial allocation . We define a graph called envyratio graph
to be a complete weighted digraph with the following construction: each vertex corresponds to an agent, and for each ordered pair
, there is a directed edge from vertex to vertex with the weight .Assuming each agent has a nonzero value for each good, for every we have . Note that implies that agent does not envy agent , whereas indicates agent envies agent . The higher the value of is, the more envious agent is to the bundle of agent . Indeed, the wellknown envygraph is a subgraph of envyratio graph containing only the edges with .
Nash Social Welfare (NSW) Mathcing.
Nash social welfare, originally proposed by Nash [27]
, is defined to be the geometric mean of agents’ valuations. Allocation that maximizes Nash social welfare is known to have desirable properties. For example, such allocations are proved to be
and pareto optimal. Roughly, Nash social welfare maximizing allocations can be seen as a tradeoff between social welfare and fairness.In the first step of the algorithm, we allocate one item to each agent such that the Nash social welfare of the agents is maximized. More formally, define Nash Social Welfare matching of to be a partial allocation , such that is maximized and for every we have .
Similar to Nash social welfare allocations, Nash social welfare matchings exhibit beautiful properties which greatly help us in designing our algorithm. One simple property of such allocations is shown in Observation 7. Before we state Observation 7, we need to define concepts of improving and strictly improving cycles.
Definition 6.
Let be a cycle in the envyratio graph. Then, is an improving cycle, if
Furthermore, we say a cycle is strictly improving cycle, if is an improving cycle and for every , holds.
We note that strictly improving cycle is an essential concept in all envycycle elimination methods [26, 6, 18, 2]. These methods typically rotate the shares over strictly improving cycles to enhance social welfare. However, to the best of our knowledge, no previous work made use of improving cycles.
Observation 7.
Suppose that we allocate one item to each agent using Nash social welfare matching. Then, the envyratio graph admits no improving cycle.
The proof of the mentioned observation is available in Appendix A. A particularly useful case of Observation 7 is for the cycles of length , which we state in Corollary 8.
Corollary 8 (of Observation 7).
Suppose that for two agents we have , where . Then, we have .
Definition 9.
Suppose that we allocate one item to each agent using Nash social welfare matching. We define the envyrank of an agent , denoted by as
where . Roughly speaking, let be a path leading to vertex in the envyratio graph such that the product of the weights of the edges in is maximum. Then, the envyrank of agent equals to the product of the weights of the edges in . Note that by Observation 7 we can assume w.l.o.g that is a simple path (i.e., includes no duplicate vertices).
Observation 10.
is a simple path.
Proof.
Assume is not simple and let be a cycle in . By Observation 7 we know that can not be improving. Therefore, the product of the weight of the edges of is at least as large as . ∎
To get a better understanding of these definitions take a look at Example 11.
Example 11.
Consider an instance of the fair allocation problem with 4 items, 4 agents, and a valuation profile represented in Figure 2(a). Let be the allocation that allocates item to agent . The envyratio graph and the envy graph of are shown in Figure 2(b) and Figure 2(c) respectively. This allocation is not envyfree, however, it is both and since each agent receives only one item.
As we mentioned before, the envyrank of an agent can be seen as the product of the weights of the edges in a path leading to that agent. For instance, consider the agent . The envyrank of this agent is which is the product of the weights of the edges in the path . Also consider the cycle . This cycle is an improving cycle. Therefore, allocation is not a matching. The allocation can be improved by moving the items alongside this cycle which leads to a new allocation . The envyratio graph of can be seen in Figure 2(d).

We finish our discussion in this section by mentioning some properties of envyrank values. The proofs of flowing observations are available in Appendix A.
Observation 12.
Suppose that allocation allocates one item to each agent using a Nash social welfare matching. Then for every pair of agents and , we have
In addition to Observation 7, Nash social welfare matchings admit another important and elegant property, which we state in Observation 13. This observation provides upper bounds on the value of remaining goods and can be of independent interest for various fair allocation problems.
Observation 13.
Suppose that we allocate one item to each agent using a Nash social welfare matching. Then, for each agent and any unallocated item we have
3 An approximate EFR Allocation
In this section, we present our algorithm for finding a  allocation. Our algorithm is divided into 3 steps, namely matching, allocation refinement, and envygraph based allocation. In the first step, we allocate each agent one item using a Nash social welfare matching and accordingly divide the agents into three groups based on their envyrank. Next, in the second step we allocate a set of goods to the agents in each group, and finally in the third step we allocate the rest of the items using the classic envycycle elimination method. The outline of our algorithm is represented in Algorithm 1.
3.1 Step 1.
In the first step, we allocate one item to each agent using a matching. We first show that this allocation can be found in polynomial time. The proof is available in Appendix A.
Observation 14.
matching can be found in polynomial time.
Let be matching and fix a parameter . Based on the envyrank of the agents, we divide them into groups and as follows.

Agent belongs to if .

Agent belongs to if .

Agent belongs to if .
Note that by Observation 13, we know that for every remaining item the following properties hold.

(Property 1): For every agent we have .

(Property 2): For every agent we have .
Intuitively, if each remaining item is worth less than to every agent , then we can guarantee the approximation factor of in the third step. This property holds for the agents in ; however, this is not the case for agents in and . In the second step, we seek to allocate a set of items to the agents in and so that the same property holds for these agents. Note that alongside this property, the final partial allocation after the second step must be fair (i.e., ).
3.2 Step 2.
In the second step, we allocate one item to each agent in and two items to each agent in . Algorithm 1 shows the method by which we allocate these items to the agents in and . Let be a topological ordering of the agents with respect to the envygraph. We order the agents in according to and ask them one by one to pick their most valuable remaining good. We then again ask agents in to pick one more item according to the same topological ordering . Afterwards, we order the agents in according to and ask them one by one to add the most desirable remaining item to their bundles.
We now show that at the end of Step 2 the following conditions hold. The proof can be found in Appendix B.
Claim 15.
At the end of Step 2 the following conditions hold.

The allocation is with respect to the agents in .

The allocation is  with respect to the agents in .

The allocation is  with respect to the agents in .
Since , the allocation by the end of Step 2 is .
3.3 Step 3.
In the third step, we use the envygraph to allocate the remaining unallocated items. We repeat the following steps until all the goods are allocated.

Find and eliminate all the directed cycles from the envygraph. In order to eliminate all cycles in the envygraph, we repeatedly find a directed cycle in the envygraph. Let be a cycle in envygraph. By definition, each agent envies agent , i.e.,
where is the current allocation. We then exchange the allocations of the agents that are in the cycle such that each agent receives . Note that this exchanging does not change bundles. Furthermore, the utility of each agent does not decrease. Hence, if the allocation is  before the exchange, it remains  after it (Lemma 6.1 in [28]). Also, exchanging these allocations decreases the number of edges in the envygraph. Thus, we eventually find an allocation such that its corresponding envygraph is acyclic.

Give an item to an agent that noone envies. In the previous step we showed that we can always find an allocation such that its corresponding envygraph is acyclic. Therefore, there should be a vertex in the envygraph with no incoming edges. Let be the agent corresponding to this vertex. Since has no incoming edges in the envygraph, no other agent envies . At this step, we ask agent to pick his best item among all remaining goods.
The following Lemma shows the approximation guarantee of our algorithm. The proof can be found in Appendix A.
Lemma 16.
Suppose that we are given a partial  allocation such that for every agent and every remaining item , we have for some constant . Then, the resulting allocation after performing the method mentioned above is .
We now show that at the beginning of Step 3, the valuation of every remaining item is small for all agents. The proof is available in Appendix A.
Observation 17.
Let be the allocation after Step 2. Then for an agent and every remaining item we have

If , .

If , .

If , .
It follows from the observation above that for every agent the valuation of every remaining item is at most after the second step of our algorithm. Recall that our allocation by the end of Step 2 is . Therefore, using Lemma 16, the allocation at the end of Step 3 is . Since , we have
Therefore our final allocation is . This, coupled with the fact that all the steps can be implemented in polynomial time follows Theorem 1.
See 1
4 Simple EFX Allocation
In this section, we show that our idea to use matching as the first step of the allocation can easily give a  allocation where is the golden ratio. The approximation ratio of our algorithm matches the stateoftheart approximation result by Amanitidis et al. [1]. Likewise our algorithm for allocation, our  algorithm consists of 3 steps, namely matching, allocation refinement, and envygraph based allocation. The first and the third steps of our algorithm are almost the same as our previous algorithm. For the sake of completeness, we will briefly restate these steps in the rest of the section. The outline of our algorithm is represented in Algorithm 2.
4.1 Step 1.
In the first step, we allocate one item to each agent using matching. Let be the resulting allocation, and let be the golden ratio. Based on the envyrank of the agents, we divide them into groups and as follows:

Agent belongs to if .

Agent belongs to if .
4.2 Step 2.
In the second step, we allocate one item to each agent in via the following process. let be a topological ordering of the agents with respect to the envygraph. We order the agents in according to and ask them one by one to pick their most valuable remaining good.
After this step, the bundle of every agent in contains two items. For an agent we use to denote the items allocated to this agent where is the item allocated in Step . We also use to denote the only item received by an agent . We show that at the end of Step 2 the following clamis hold.
Claim 18.
By the end of Step 2, the allocation is with respect to the agents in .
Proof.
Let be an agent in , we show that for every other agent we have
so the allocation is from the agent ’s perspective. If , then we have . Therefore,
and the claim clearly holds.
Claim 19.
By the end of Step 2, the allocation is  with respect to the agents in .
Proof.
Let be an agent in , we show that for every other agent we have
so the allocation is  from agent ’s perspective. If , then we have , and the claim clearly holds.
Consider an agent in . We first consider the case that . In this case, the position of agent in is before agent . Therefore, agent receives his second good before agent , and we have
(1) 
It follows that
Therefore,
Since , it follows that our allocation is EFX. The other case is when . In this case, we have
.  
Observation 13.  
Therefore, in this case the allocation is which completes the proof of the claim. ∎
4.3 Step 3.
In the third step, we use the envygraph to allocate the rest of the items. We show that at the beginning of Step 3, the valuation of every remaining item is small for all the agents.
Observation 20.
Let be the allocation after Step 2. Then, for an agent and every remaining item we have

If , .

If , .
Proof.
Consider an agent , then by Observation 13 we have
Next, consider an agent . This agent has two allocated items which are larger than every remaining item. Therefore, . ∎
Therefore, for every agent , the valuation of every remaining item is at most . In order to complete the allocation we repeat the following steps until all the goods are allocated.

Find and eliminate all the directed cycles from the envygraph.

Allocate an item to an agent that noone envies to him.
Lemma 21 ([28]).
Suppose that we are given a partial  allocation such that for every agent and every remaining item , we have for some constant . Then, the resulting allocation after performing the method mentioned above is .
Recall that our allocation by the end of Step 2 is . Therefore, by lemma above the approximation ratio of our approach is . Since , it follows that our final allocation is .
References

[1]
(2018)
Comparing approximate relaxations of envyfreeness.
In
Proceedings of the 27th International Joint Conference on Artificial Intelligence
, pp. 42–48. Cited by: §1.1, §1.2, §4.  [2] (2020) Multiple birds with one stone: beating 1/2 for efx and gmms via envy cycle elimination.. In AAAI, pp. 1790–1797. Cited by: Almost Envyfreeness, Envyrank, and Nash Social Welfare Matchings, §1.1, §1, §1, §2.
 [3] (2019) Fair allocation of indivisible goods and chores. In Proceedings of the 28th International Joint Conference on Artificial Intelligence, pp. 53–59. Cited by: §1.
 [4] (2016) A discrete and bounded envyfree cake cutting protocol for any number of agents. In Proceedings of the 57th Annual Symposium on Foundations of Computer Science, pp. 416–427. Cited by: §1.
 [5] (2018) Groupwise maximin fair allocation of indivisible goods. In ThirtySecond AAAI Conference on Artificial Intelligence, Cited by: §1.2.
 [6] (2017) Approximation algorithms for maximin fair division. In Proceedings of the 2017 ACM Conference on Economics and Computation, pp. 647–664. Cited by: §1.2, §1, §2.
 [7] (2018) Finding fair and efficient allocations. In Proceedings of the 2018 ACM Conference on Economics and Computation, pp. 557–574. Cited by: §1.2.
 [8] (2018) Finding fair and efficient allocations. In Proceedings of the 19th ACM Conference on Economics and Computation (ACMEC), pp. 557–574. Cited by: §1.2.
 [9] (2018) Greedy algorithms for maximizing nash social welfare. In Proceedings of the 17th International Conference on Autonomous Agents and MultiAgent Systems, pp. 7–13. Cited by: §1.2.
 [10] (1995) An envyfree cake division protocol. American Mathematical Monthly, pp. 9–18. Cited by: §1.
 [11] (1996) Fair division: from cakecutting to dispute resolution. Cambridge University Press. Cited by: §1.2.
 [12] (2011) The combinatorial assignment problem: approximate competitive equilibrium from equal incomes. Journal of Political Economy 119 (6), pp. 1061–1103. Cited by: §1.2, §1, §1, footnote 2.
 [13] (2019) Envyfreeness up to any item with high nash welfare: the virtue of donating items. In Proceedings of the 2019 ACM Conference on Economics and Computation, pp. 527–545. Cited by: §1.2, §1.
 [14] (2019) The unreasonable fairness of maximum nash welfare. ACM Transactions on Economics and Computation 7 (3), pp. 12. Cited by: §1.1, §1.2, §1.2, §1, §1, §1.
 [15] (2018) On fair division for indivisible items. In 38th IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science, FSTTCS 2018, December 1113, 2018, Ahmedabad, India, pp. 25:1–25:17. Cited by: §1.2.
 [16] (2020) EFX exists for three agents. arXiv preprint arXiv:2002.05119. Cited by: §1.
 [17] (2020) Fair and efficient allocations under subadditive valuations. arXiv preprint arXiv:2005.06511. Cited by: §1.2.
 [18] (2020) A little charity guarantees almost envyfreeness. In Proceedings of the 31st Annual ACMSIAM Symposium on Discrete Algorithms, pp. 2658–2672. Cited by: §1, §1, §2.
 [19] (2018) Envyfree chore division for an arbitrary number of agents. In Proceedings of the TwentyNinth Annual ACMSIAM Symposium on Discrete Algorithms, pp. 2564–2583. Cited by: §1.
 [20] (2014) The computational rise and fall of fairness. In Proceedings of the 28th Conference on Artificial Intelligence, Cited by: §1.
 [21] (2019) Fair allocation of indivisible goods to asymmetric agents. Journal of Artificial Intelligence Research 64, pp. 1–20. Cited by: §1.2, §1.
 [22] (1967) Resource allocation and the public sector. Yale Econ Essays 7 (1), pp. 45–98. Cited by: §1.
 [23] (2020) Approximating nash social welfare under submodular valuations through (un) matchings. In Proceedings of the fourteenth annual ACMSIAM symposium on discrete algorithms, pp. 2673–2687. Cited by: §1.2.
 [24] (2018) Fair allocation of indivisible goods: improvements and generalizations. In Proceedings of the 2018 ACM Conference on Economics and Computation, pp. 539–556. Cited by: §1.2, §1.
 [25] (2018) Fair enough: guaranteeing approximate maximin shares. Journal of the ACM 65 (2), pp. 8. Cited by: §1.2, §1.
 [26] (2004) On approximately fair allocations of indivisible goods. In Proceedings of the 5th ACM Conference on Electronic Commerce, pp. 125–131. Cited by: Almost Envyfreeness, Envyrank, and Nash Social Welfare Matchings, §1, §1, §2, §2, §2, footnote 2.
 [27] (1950) The bargaining problem. Econometrica: Journal of the Econometric Society, pp. 155–162. Cited by: §1, §2.
 [28] (2018) Almost envyfreeness with general valuations. In Proceedings of the 29th Annual ACMSIAM Symposium on Discrete Algorithms, pp. 2584–2603. Cited by: §A.2, §1.2, §1, §1, 1st item, Lemma 21.
 [29] (1998) Cakecutting algorithms: be fair if you can. AK Peters/CRC Press. Cited by: §1.2.
 [30] (2019) Externalities and fairness. In Proceedings of the 2019 World Wide Web Conference, pp. 538–548. Cited by: §1.
 [31] (1948) The problem of fair division. Econometrica 16 (1). Cited by: §1.2, §1.
 [32] (1973) Equity, envy, and efficiency. Cited by: §1.
Appendix A Missing proofs
a.1 Missing proofs of Section 2
See 7
Proof.
Assume is an improving cycle. Then, it is easy to see that rotating the goods over this cycle (i.e., reallocating to agent for every , and reallocating to agent ) yields a matching with a higher Nash social welfare. ∎
See 12
Proof.
In the envyratio graph, the weight of the directed edge from to is . Recall that is the maximum product of the weights of the edges in a path leading to . Since the edge from to is also a path leading to vertex , we have . Therefore, . Now consider a path leading to with the maximum product of the weights of the edges. Based on the definition of envyrank, the product of the weights of the edges in is . We can use the edge from to to extend this path. This new path leads to , and its product of the weights of the edges is . Therefore, we can say . Hence,
∎
See 13
Proof.
First, for any agent and any remaining good , we have , if not can be increased by giving to instead of . Moreover, consider a path in the envyratio graph leading to with the maximum product of the weights of the edges. By the definition of the envyrank the product of the weights of this path is . By moving items along this path (giving to , to , etc.) and giving to agent , the will be multiplied by a factor of . Since is the allocation that maximizes , we have , and hence . ∎
a.2 Missing proofs of Section 3
See 14
Proof.
Let be a bipartite graph that has a vertex for each agent in and has a vertex for every item in . For every agent and every item we add an undirected edge with the weight of between their corresponding vertices. By finding a maximum weighted matching in this graph, we get an allocation such that every agent has at most one allocated item. Also, this allocation maximizes . Therefore, this allocation also maximizes . Hence, allocates at most one item to every agent and maximizes Nash social welfare. ∎
See 16
Proof.
The algorithm repeats the following steps until it allocates all items.

Find and eliminate all the directed cycles from the envygraph.

Give an item to an agent that noone envies.
Consider the step in which the algorithm eliminates cycles. As we discussed earlier, this step does not change the approximation factor of the algorithm. Hence, if the allocation is  before this step, it remains  after it (See Lemma 6.1 in [28] for more detail).
Consider the second step of the algorithm. In this step, the algorithm finds an agent such that noone envies this agent, and it allocates an item to this agent. Suppose our algorithm allocates item to agent . Since noone envies agent before this step, for every other agent , we have where is the allocation of items before this step. In addition we have since item was among unallocated items at the beginning of this step. Thus, we have
This means that after allocation , no agent thinks the value of the bundle of agent is times more than the valuation his bundle. Therefore, the allocation remains . Hence, the final allocation is . ∎
See 17
Proof.
Consider an agent , then by Observation 13 we have
Next consider an agent . This agent has two allocated items. Let be these items where is the item allocated using matching. Since agent picks his best remaining item at Step 2 of our algorithm, we have
(2) 
Since is allocated by matching, by Observation 13 we have
Since .  (3) 
It follows from (2) and (A.2) that
The last case is when . In this case agent has three allocated items which are all larger than every remaining item. Therefore . ∎
Appendix B Proof of Claim 15
After the Step 2 of the algorithm, the bundle of every agent in contains three items. For an agent we use to denote the items allocated to this agent where and are the items allocated in Step and has been allocated before . Also, the bundle of every agent in contains two items. Similarly, for an agent we use to denote the allocated items of this agent where is the item received in Step . We also use to denote the only item received by an agent .
We begin our analysis by showing the following claim.
Claim 22.
For an allocation and agents and , we have
Proof.
Distribution selects each item in with the probability of . Therefore,
By Additivity assumption. 
Each item in appears times in the above summation. Therefore,
∎
First we show that at the end of Step 2, the allocation is for the agents in .
Claim 23.
By the end of Step 2, the allocation is with respect to the agents in .
Proof.
Let be an agent in , we show that for every other agent we have
Comments
There are no comments yet.