Skip to main content
Log in

Representing and reasoning about auctions

  • Published:
Autonomous Agents and Multi-Agent Systems Aims and scope Submit manuscript

Abstract

The goal of this paper is to propose a framework for representing and reasoning about the rules of auction-based protocols. Such a framework is of interest for building digital marketplaces based on this type of mechanism. Hence the framework should fulfill two requirements: (i) it should enable bidders to express their preferences over combinations of items and (ii) it should allow the mechanism designer to describe the rules governing the market, namely the legality of bids, the allocative choice, and the payment rule. To do so, we define a logical language in the spirit of the Game Description Language, namely Auction Description Language with a set of functions \(\mathcal {F}_{\mathcal {B}}\) (ADL \([\mathcal {F}_{\mathcal {B}}]\)). ADL \([\mathcal {F}_{\mathcal {B}}]\) is the first language for describing auctions in a logical framework. With our approach, each stage in a protocol is seen as an independent direct revelation mechanism. Our contribution is three-fold: first, we illustrate the general dimension by representing different kinds of protocols. Second, we show how this machine-processable language enables reasoning about auction properties, including playability, termination, and classical conditions from mechanism design (e.g., budget-balance and individual rationality). Finally, we develop a model-checking algorithm for ADL \([\mathcal {F}_{\mathcal {B}}]\), with complexity in PTIME when the functions in \(\mathcal {F}_{\mathcal {B}}\) can be computed in polynomial time.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

Notes

  1. Throughout the paper we use the terms “item” and “good” interchangeably.

  2. A partial order is a relation that is reflexive, antisymmetric and transitive.

  3. Notice \(f(.)\) may be 0-ary.

  4. A winner determination function is shown in Sect. 6.1.2 and the protocol presented in Sect. 5 has the market clearing represented through \(\mathcal {L}_{\textsf {{ADL}}[\mathcal {F}_{\mathcal {B}}]}\)-rules.

  5. Quasilinearity of utilities refers to the fact that the utility function is a linear combination of the preference valuation function and the price paid by the agent. However, the preference function \(\vartheta _{\mathsf {i}}\) itself can be general.

  6. We denote by \(\left\lfloor x \right\rfloor \) the greatest integer less than or equal to \(x \in \mathbb {R}\) and \(\left\lceil x \right\rceil \) the least integer greater than or equal to \(x \in \mathbb {R}\).

References

  1. Alur, R., Henzinger, T. A., & Kupferman, O. (2002). Alternating-time temporal logic. Journal of the ACM, 49(5), 672–713.

    Article  MathSciNet  MATH  Google Scholar 

  2. Badica, A., & Badica, C. (2010). Specification and verification of an agent-based auction service. In G. A. Papadopoulos, W. Wojtkowski, G. Wojtkowski, S. Wrycza, & J. Zupancic (Eds.), Information systems development: Towards a service provision society (pp. 239–248). Boston: Springer.

    MATH  Google Scholar 

  3. Bădică, C., Ganzha, M., & Paprzycki, M. (2006). Rule-based automated price negotiation: Overview and experiment. In L. Rutkowski, R. Tadeusiewicz, L. A. Zadeh, & J. M. Żurada (Eds.), Artificial intelligence and soft computing—ICAISC 2006 (pp. 1050–1059). Berlin, Heidelberg: Springer Berlin Heidelberg.

    Chapter  Google Scholar 

  4. Baral, C., & Uyan, C. (2001). Declarative specification and solution of combinatorial auctions using logic programming. In T. Eiter, W. Faber, & M. I. Truszczyński (Eds.), Logic programming and nonmotonic reasoning (pp. 186–199). Berlin: Springer Berlin Heidelberg.

    Chapter  MATH  Google Scholar 

  5. Barthe, G., Gaboardi, M., Arias, E., Hsu, J., Roth, A., & Strub, P. Y. (2016). Computer-aided verification for mechanism design. In Conference on web and internet economics.

  6. Belardinelli, F. (2014). Model checking auctions as artifact systems: Decidability via finite abstraction. In Proceedings of the European conference on artificial intelligence (ECAI’14) (pp. 81–86).

  7. Bellosta, M.., Kornman, S., & Vanderpooten, D. (2005). A framework for multiple criteria English reverse auctions. In IEEE/WIC/ACM international conference on intelligent agent technology (pp. 633–639).

  8. Bellosta, M. J., Kornman, S., & Vanderpooten, D. (2008). A unified framework for multiple criteria auction mechanisms. Web Intelligence and Agent Systems, 6(4), 401–419.

    Article  Google Scholar 

  9. Boutilier, C., & Hoos, H. H. (2001). Bidding languages for combinatorial auctions. In B. Nebel (Ed.), Proceedings of the 7th international joint conference on artificial intelligence (IJCAI-01) (pp. 1211–1217). Seattle, Washington: Morgan Kaufmann.

    Google Scholar 

  10. Brihaye, T., Da Costa, A., Laroussinie, F., & Markey, N. (2009). Atl with strategy contexts and bounded memory. In International symposium on logical foundations of computer science (pp. 92–106). Springer.

  11. Burghardt, J. (2002). Axiomatization of finite algebras. In Annual conference on artificial intelligence (pp. 222–234). Springer.

  12. Caminati, M., Kerber, M., Lange, C., & Rowat, C. (2015). Sound auction specification and implementation. In ACM conference on economics and computation.

  13. Cavallo, R., Parkes, D. C., Juda, A. I., Kirsch, A., Kulesza, A., Lahaie, S., Lubin, B., Michael, L., & Shneidman, J. (2005). TBBL: A tree-based bidding language for iterative combinatorial exchanges. In Multidisciplinary workshop on advances in preference handling, Edinburgh.

  14. Chatterjee, K., Henzinger, T. A., & Piterman, N. (2010). Strategy logic. Information and Computation, 208(6), 677–693.

    Article  MathSciNet  MATH  Google Scholar 

  15. Chevaleyre, Y., Dunne, P. E., Endriss, U., Lang, J., Lemaître, M., Maudet, N., et al. (2006). Issues in multiagent resource allocation. Informatica, 30(1), 3–31.

    MATH  Google Scholar 

  16. Conitzer, V., & Sandholm, T. (2002). Complexity of mechanism design. In A. Darwiche, N. Friedman (Eds.), UAI’02, proceedings of the 18th conferences in uncertainty in artificial intelligence, University of Alberta, Edmonton, Alberta, Canada, August 1-4, 2002 (pp. 103–110). Morgan Kaufmann.

  17. Cramton, P. (2011). Simultaneous ascending auctions, chap. 4. American Cancer Society.

  18. Dobriceanu, A., Biscu, L., & Badica, C. (2007). Adding a declarative representation of negotiation mechanisms to an agent-based negotiation service. In 2007 IEEE/WIC/ACM international conferences on web intelligence and intelligent agent technology—workshops (pp. 471–474).

  19. Feige, U., Feldman, M., Immorlica, N., Izsak, R., Lucier, B., & Syrgkanis, V. (2015). A unifying hierarchy of valuations with complements and substitutes. In Proceeding of the AAAI conference on artificial intelligence, vol. 29(1).

  20. Finnsson, H. (2012). Generalized Monte-Carlo tree search extensions for general game playing. In Twenty-sixth AAAI conference on artificial intelligence.

  21. Genesereth, M., & Thielscher, M. (2014). General game playing. Synthesis lectures on artificial intelligence and machine learning. Morgan & Claypool Publishers.

    MATH  Google Scholar 

  22. Giovannucci, A., Cerquides, J., Endriss, U., & Rodríguez-Aguilar, J. A. (2010). A graphical formalism for mixed multi-unit combinatorial auctions. Autonomous Agents and Multi-Agent Systems, 20(3), 342–368.

    Article  Google Scholar 

  23. Green, J., & Laffont, J. J. (1979). Incentives in public decision-making. North-Holland: Elsevier.

    MATH  Google Scholar 

  24. Hudert, S., Eymann, T., Ludwig, H., & Wirtz, G. (2009). A negotiation protocol description language for automated service level agreement negotiations. In 2009 IEEE conference on commerce and enterprise computing, CEC 2009 (pp. 162–169).

  25. Hudert, S., Ludwig, H., & Wirtz, G. (2009). Negotiating SLAs—An approach for a generic negotiation framework for WS-agreement. Journal of Grid Computing, 7(2), 225–246.

    Article  Google Scholar 

  26. Jackson, M. O. (2009). Optimization and operations research -Volume III, chap. Mechanism Theory. EOLSS Publications.

    Google Scholar 

  27. Jiang, G., Perrussel, L., Zhang, D., Zhang, H., & Zhang, Y. (2019). Game equivalence and bisimulation for game description language. In A. C. Nayak & A. Sharma (Eds.), PRICAI 2019: Trends in artificial intelligence—16th Pacific Rim international conference on artificial intelligence (Vol. 11670, pp. 583–596). Berlin: Springer.

    Google Scholar 

  28. Jiang, G., Zhang, D., Perrussel, L., & Zhang, H. (2016). Epistemic GDL: A logic for representing and reasoning about imperfect information games. In IJCAI International Joint Conference on Artificial Intelligence.

  29. Jiang, G., Zhang, D., Perrussel, L., & Zhang, H. (2021). Epistemic GDL: A logic for representing and reasoning about imperfect information games. Artificial Intelligence, 294, 103453.

    Article  MathSciNet  MATH  Google Scholar 

  30. de Jonge, D., & Zhang, D. (2021). GDL as a unifying domain description language for declarative automated negotiation. Autonomous Agents and Multi-Agent Systems, 35(1), 13.

    Article  Google Scholar 

  31. Jonge, D. D., & Zhang, D. (2016). Using GDL to represent domain knowledge for automated negotiations. In N. Osman, C. Sierra (Eds.), Autonomous agents and multiagent systems: AAMAS 2016 workshops, visionary papers, Singapore, Singapore, May 9-10, 2016, Revised Selected Papers (pp. 134–153). Cham: Springer.

  32. Jonge, D. D., & Zhang, D. (2017). Automated negotiations for general game playing. In K. Larson, M. Winikoff, S. Das, E. Durfee (Eds.), Proceedings of the 16th conference on autonomous agents and multiAgent systems, AAMAS 2017, São Paulo, Brazil, May 8-12, 2017 (pp. 371–379). ACM.

  33. Kalagnanam, J., & Parkes, D. C. (2004). Auctions, bidding and exchange design. In D. Simchi-Levi, S. D. Wu, & Z. J. Shen (Eds.), Handbook of quantitative supply chain analysis: Modeling in the e-business era (pp. 143–212). Boston: Springer.

    Chapter  Google Scholar 

  34. Kerber, M., Lange, C., & Rowat, C. (2016). An introduction to mechanized reasoning. Journal of Mathematical Economics, 66, 26–39.

    Article  MathSciNet  MATH  Google Scholar 

  35. Klemperer, P. (1999). Auction theory: A guide to the literature. Journal of Economic Surveys, 13(3), 227–286.

    Article  Google Scholar 

  36. Krishna, V. (2009). Auction theory. London: Academic Press.

    Google Scholar 

  37. Larsen, G. K. H., van Foreest, N. D., & Scherpen, J. M. A. (2013). Distributed control of the power supply-demand balance. IEEE Transactions on Smart Grid, 4(2), 828–836.

    Article  Google Scholar 

  38. Lee, H. G., & Lee, R. (1997). A hybrid approach of linear programming and logic modeling for the market core of sealed bid auctions. Annals of Operations Research, 75, 1997.

    MathSciNet  MATH  Google Scholar 

  39. Lochner, K. M., & Wellman, M. P. (2004). Rule-based specification of auction mechanisms. In Proceedings of the third international joint conference on autonomous agents and multiagent systems, AAMAS 20042, 818–825.

  40. Love, N., Genesereth, M., & Hinrichs, T. (2006). General game playing: Game description language specification. Technical Report, LG-2006-01, Stanford University, Stanford, CA.

  41. Lubin, B., Juda, A. I., Cavallo, R., Lahaie, S., Shneidman, J., & Parkes, D. C. (2008). Ice: An expressive iterative combinatorial exchange. Journal of Artificial Intelligence Research, 33, 33–77.

    Article  MathSciNet  MATH  Google Scholar 

  42. Maubert, B., Mittelmann, M., Murano, A., & Perrussel, L. (2021). Strategic reasoning in automated mechanism design. In Proceedings of the eighteen conference on principles of knowledge representation and reasoning.

  43. Meyer, T., Foo, N., Kwok, R., & Zhang, D. (2004). Logical foundations of negotiation: Outcome, concession and adaptation. Proceedings of the national conference on artificial intelligence (pp. 293–298).

  44. Mishra, D., & Sharma, T. (2018). A simple budget-balanced mechanism. Social Choice and Welfare, 50(1), 147–170.

    Article  MathSciNet  MATH  Google Scholar 

  45. Mittelmann, M., Bouveret, S., & Perrussel, L. (2021). A general framework for the logical representation of combinatorial exchange protocols. In F. Dignum, A. Lomuscio, U. Endriss, A. Nowé, A. (Eds.), AAMAS’21: 20th international conference on autonomous agents and multiagent systems (pp. 1602–1604). ACM.

  46. Mittelmann, M., & Perrussel, L. (2020). Auction description language (ADL): A general framework for representing auction-based markets. In G. de Giacomo (Eds.), ECAI 2020. Santiago de Compostela: IOS Press.

  47. Mogavero, F., Murano, A., Perelli, G., & Vardi, M. (2014). Reasoning about strategies: On the model-checking problem. ACM Transactions on Computational Logic, 15(4), 2014.

    Article  MathSciNet  MATH  Google Scholar 

  48. Mogavero, F., Murano, A., Perelli, G., & Vardi, M. Y. (2014). Reasoning about strategies: On the model-checking problem. ACM Transaction on Computational Logic (TOCL), 15(4), 1–47.

    Article  MathSciNet  MATH  Google Scholar 

  49. Myerson, R. B., & Satterthwaite, M. A. (1983). Efficient mechanisms for bilateral trading. Journal of Economic Theory, 29(2), 265–281.

    Article  MathSciNet  MATH  Google Scholar 

  50. Nisan, N. (2000). Bidding and allocation in combinatorial auctions. In ACM conference on electronic commerce (pp. 1–12).

  51. Nisan, N. (2004). Bidding languages. Combinatorial Auctions (pp. 1–19).

  52. Nisan, N., Roughgarden, T., Tardos, É., & Vazirani, V. (2007). Algorithmic game theory. Cambridge: Cambridge University Press.

    Book  MATH  Google Scholar 

  53. Parkes, D. C., Cavallo, R., Elprin, N., Juda, A., Lahaie, S., Lubin, B., Michael, L., Shneidman, J., & Sultan, H. (2005). ICE: An Iterative Combinatorial Exchange. In Proceedings of the 6th ACM conference on electronic commerce, EC’05 (pp. 249–258). Association for Computing Machinery, New York, NY, USA.

  54. Parkes, D. C., & Ungar, L. H. (2001). Iterative combinatorial auctions: Achieving economic and computational efficiency. Philadelphia, PA: University of Pennsylvania.

    Google Scholar 

  55. Parsons, S., Rodriguez-Aguilar, J. A., & Klein, M. (2011). Auctions and bidding: A guide for computer scientists. ACM Computing Surveys, 43(2), 2011.

    Article  MATH  Google Scholar 

  56. Pauly, M., & Wooldridge, M. (2003). Logic for mechanism design—A manifesto. In Workshop on game theory and decision theory in agent systems (GTDT).

  57. Porello, D., & Endriss, U. (2010). Modelling combinatorial auctions in linear logic. In Proceedings of the twelfth international conference on principles of knowledge representation and reasoning, KR’10 (pp. 71–78). AAAI Press.

  58. Rabe, F. (2006) First-order logic with dependent types. In International joint conference on automated reasoning (pp. 377–391). Springer.

  59. Rolli, D., Luckner, S., Gimpel, H., & Weinhardt, C. (2006). A descriptive auction language. Electronic Markets, 16(1), 51–62.

    Article  Google Scholar 

  60. Ruan, J., Van Der Hoek, W., & Wooldridge, M. (2009). Verification of games in the game description language. Journal of Logic and Computation, 19(6), 1127–1156.

    Article  MathSciNet  MATH  Google Scholar 

  61. Saffidine, A. (2014). The game description language is turing complete. IEEE Transactions on Computational Intelligence and AI in Games, 6(4), 320–324.

    Article  Google Scholar 

  62. Sandholm, T. (2003). Automated mechanism design: A new application area for search algorithms. In F. Rossi (Ed.), Principles and Practice of Constraint Programming - CP 2003 (pp. 19–36). Berlin, Heidelberg: Springer Berlin Heidelberg.

    Chapter  Google Scholar 

  63. Schobbens, P. Y. (2004). Alternating-time logic with imperfect recall. Electronic Notes in Theoretical Computer Science, 85(2), 82–93.

    Article  MathSciNet  MATH  Google Scholar 

  64. Thielscher, M. (2011). GDL-II. KI - Künstliche Intelligenz, 25(1), 63–66.

    Article  Google Scholar 

  65. Thielscher, M. (2017). GDL-III: A description language for epistemic general game playing. In IJCAI international joint conference on artificial intelligence (pp. 1276–1282).

  66. Thielscher, M., & Zhang, D. (2010). From general game descriptions to a market specification language for general trading agents (pp. 259–274). Springer Berlin Heidelberg.

  67. Voorneveld, M. (2003). Characterization of pareto dominance. Operations Research Letters, 31(1), 7–11.

    Article  MathSciNet  MATH  Google Scholar 

  68. Wang, H., Tang, Y., Liu, J., & Chen, W. (2018). A search optimization method for rule learning in board games. In Pacific Rim international conference on artificial intelligence (pp. 174–181). Springer.

  69. Wooldridge, M., Ågotnes, T., Dunne, P., & Van der Hoek, W. (2007). Logic for automated mechanism design-a progress report. In Proceedings of AAAI conference on artificial intelligence.

  70. Wooldridge, M., & Parsons, S. (2000). Languages for negotiation. In Proceedings of the 14th European conference on artificial intelligence, ECAI’00 (pp. 393–397). IOS Press, NLD.

  71. Wooldridge, M., & Parsons, S. (2000). On the use of logic in negotiation. In Proceedings of the autonomous agents workshop on agent communication languages and conversation protocols.

  72. Xia, M., Stallaert, J., & Whinston, A. B. (2005). Solving the combinatorial double auction problem. European Journal of Operational Research, 164(1), 239–251.

    Article  MATH  Google Scholar 

  73. Xu, H., Bates, C., & Shatz, S. (2009). Real-time model checking for shill detection in live online auctions. In Software engineering research and practice (pp. 134–140).

  74. Xu, H., & Cheng, Y. T. (2007). Model checking bidding behaviors in internet concurrent auctions. International Journal of Computer Systems Science & Engineering, 22(4), 179–191.

    Google Scholar 

  75. Zhang, D. (2018). A logic for reasoning about game descriptions. In T. Mitrovic, B. Xue, & X. Li (Eds.), AI 2018: Advances in artificial intelligence (pp. 38–50). Cham: Springer.

    Google Scholar 

  76. Zhang, D. (2020). Behavioural equivalence of game descriptions. In Australasian joint conference on artificial intelligence (pp. 307–319). Springer.

  77. Zhang, D., & Thielscher, M. (2015). A logic for reasoning about game strategies. In B. Bonet, S. Koenig (Eds.), Proceedings of the twenty-Ninth AAAI conference on artificial intelligence, January 25-30, 2015, Austin, Texas, USA (pp. 1671–1677). AAAI Press.

  78. Zhang, D., & Thielscher, M. (2015). Representing and reasoning about game strategies. Journal of Philosophical Logic, 44(2), 203–236.

    Article  MathSciNet  MATH  Google Scholar 

Download references

Acknowledgements

This research is supported by the ANR Project AGAPE ANR-18-CE23-0013. The authors would like to thank the reviewers for carefully reading of the manuscript and for providing insightful comments.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Munyque Mittelmann.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendix A: Technical Proof

Appendix A: Technical Proof

Proposition 1

Let \(\text {M}\) be an ST-model, for each agent \(\mathsf {i}\in \text {N}\) and each action \(\upbeta \in \mathcal {B}\),

  1. 1.

    \(\text {M}\models does_\mathsf {i}(\upbeta ) \rightarrow \lnot does_\mathsf {i}(\upbeta ')\), for any \(\upbeta ' \in \mathcal {B}\) such that \(\upbeta ' \ne \upbeta \)

  2. 2.

    \(\text {M}\models \bigvee _{\upbeta ' \in \mathcal {B}} does_\mathsf {i}(\upbeta ')\)

  3. 3.

    \(\text {M}\models does_\mathsf {i}(\upbeta ) \rightarrow legal_\mathsf {i}(\upbeta )\)

  4. 4.

    \(\text {M}\models \lnot \bigcirc initial\)

  5. 5.

    \(\text {M}\models terminal\wedge \varphi \rightarrow \bigcirc \varphi \), for any \(\varphi \in \mathcal {L}_{\textsf {{ADL}}[\mathcal {F}_{\mathcal {B}}]}\)

  6. 6.

    \(\text {M}\models initial\rightarrow \lnot terminal\)

Proof

Let \(\text {M}\) be an ST-model, \(\updelta \) be a path, \(t\ge 0\) be an stage in \(\updelta \), \(\mathsf {i}\in \text {N}\) be an agent and \(\upbeta \in \mathcal {B}\) be an action. For Statement 1, assume \(\text {M}, \updelta , t\models does_\mathsf {i}(\upbeta )\) iff \(\uptheta _{\mathsf {i}} (\updelta , t) = \upbeta \). Then for any \(\upbeta ' \in \mathcal {B}\) such that \(\upbeta ' \ne \upbeta \), \(\uptheta _{\mathsf {i}} (\updelta , t) \ne \upbeta '\) and \(\text {M}, \updelta , t\models \lnot does_\mathsf {i}(\upbeta ')\).

Statement 2 follows from the definition of \(\updelta \), since \(\theta _\mathsf {i}(\updelta , t) \in \text {L}(\delta [t], \mathsf {i})\) and \(\text {L}(\delta [t], \mathsf {i}) \subseteq \mathcal {B}\), we have \(\text {M}, \delta , t\models \bigvee _{\upbeta ' \in \mathcal {B}} does_\mathsf {i}(\upbeta ')\).

Let us verify Statement 3. Assume \(\text {M}, \updelta , t\models does_\mathsf {i}(\upbeta )\), then \(\uptheta _{\mathsf {i}} (\updelta , t) = \upbeta \) and by the definition of \(\updelta \), \(\upbeta \in \text {L}(\updelta [t], \mathsf {i})\) and \(\text {M}, \updelta , t\models legal_\mathsf {i}(\upbeta )\).

We consider Statement 4. By the path definition, for all \(t> 0\), \(\delta [t] \ne \bar{\text {w}}\). Thus, \(\delta [t+1] \ne \bar{\text {w}}\) and \(\text {M}, \delta , t+1 \models \lnot initial\). It follows that \(\text {M}, \delta , t\models \lnot \bigcirc initial\).

We now verify Statement 5. Assume \(\text {M}\models terminal\wedge \varphi \), for some \(\varphi \in \mathcal {L}_{\textsf {{ADL}}[\mathcal {F}_{\mathcal {B}}]}\). Then \(\updelta [t] \in \text {T}\) and \(\delta [t+1] = \delta [t]\). Thus, \(\text {M}, \delta , t+1 \models \varphi \) and \(\text {M}, \delta , t\models \bigcirc \varphi \).

Finally, we consider Statement 6. Assume for the sake of contradiction that \(\text {M}, \updelta , t\models initial\wedge terminal\). Then, \(\updelta [t] = \bar{\text {w}}\) and \(\updelta [t] \in \text {T}\). By the path definition, it should be the case that \(t= 0\). Due to the loop on terminal states, it follows that \(\text {w}_{0} = \text {w}_{1}\), which is a contradiction with the path requirement \(\text {w}_{t'} \ne \text {w}_0\), for any \(t' \ge 1\).

Lemma 1

\(\text {M}_{sa}\) is an ST-model and it is a model of \(\Sigma _{sa}\).

Proof

(Sketch) It is routine to check that \(\text {M}_{sa}\) is actually an ST-model. Given a path \(\updelta \), any stage \(t\) of \(\updelta \) in \(\text {M}_{sa}\), we need to show that \(\text {M}_{sa},\updelta , t \models \varphi \), for each \(\varphi \in \Sigma _{sa}\). Let us verify Rule 1. Assume \(\text {M}_{sa}, \updelta , t\models initial\) iff \(\updelta [t]= \bar{\text {w}}\). By the definition of \(\bar{\text {w}}\), \(\uppi _{{\Upphi }}\) and \(\uppi _{\text {Y}}\), we have \(\uppi _{\text {Y}}(\bar{\text {w}}, price) = \mathsf {start}\), \(\uppi _{\text {Y}}(\bar{\text {w}}, price_j) = \mathsf {start}\), \(bid_{\mathsf {i},j} \not \in \uppi _{{\Upphi }}(\bar{\text {w}})\) and \(trade_{\mathsf {i},j} = 0\), for all \(\mathsf {i}\in \text {N}\) and \(j\in \text {G}\). Thus, \(\text {M}_{sa}, \updelta , t\models initial\) iff \(\text {M}_{sa}, \updelta , t\models price = \mathsf {start} \) \( \wedge \bigwedge _{j\in \text {G}} ( price_j= \) \(\mathsf {start} \wedge \bigwedge _{\mathsf {i}\in \text {N}} (\lnot bid_{\mathsf {i},j} \wedge trade_{\mathsf {i},j} = 0))\).

Now we verify Rule 2. Let \(j\in \text {G}\) be a good type. Assume \(\text {M}_{sa}, \updelta , t\models sold_j\) iff \(sold_j \in \uppi _{{\Upphi }}(\updelta [t])\) iff \(\uppi _{\text {Y}}(\updelta [t], trade_{\mathsf {i},j}) = 1\) for some \(j\in \text {G}\) iff \(\text {M}_{sa}, \updelta , t\models \bigvee _{\mathsf {i}\in \text {N}} trade_{\mathsf {i},j} = 1\).

Next, we consider Rule 3. Assume \(\text {M}_{sa}, \updelta , t\models terminal\) iff \(\updelta [t]\ne \bar{\text {w}}\) and for all \(j\in \text {G}\), either \(\text {M}_{sa}, \updelta , t\models trade_{r,j} = 1\) for some \(\mathsf {r}\in \text {N}\) or \(\text {M}_{sa}, \updelta , t\models \lnot bid_{\mathsf {i},j}\) for all \(\mathsf {i}\in \text {N}\). By Rule 2, \(\text {M}_{sa}, \updelta , t\models terminal\) iff \(\text {M}_{sa}, \updelta , t\models \lnot initial \wedge \bigwedge _{j\in \text {G}} (sold_j \vee \bigwedge _{j\in \text {G}} \lnot bid_{\mathsf {i},j})\).

Now we verify Rule 9. Let \(\mathsf {i}\in \text {N}\) and \(j\in \text {G}\). Assume \(\text {M}_{sa}, \updelta , t\models (does_\mathsf {i}(p_1, \ldots , p_\mathsf {m}) \wedge p_j\ne 0) \vee (bid_{\mathsf {i},j} \wedge terminal)\), for some \(p_1, \ldots , p_\mathsf {m}\in \text {I}_{\succeq 0}\). We next prove for the two cases. First, assume \(\text {M}_{sa}, \updelta , t\models bid_{\mathsf {i},j} \wedge terminal\). Then \(bid_{\mathsf {i},j} \in \uppi _{{\Upphi }}(\updelta [t])\) and \(\updelta [t]\in \text {T}\). By the update function, \(\updelta [t+1] = \updelta [t]\) and \(\text {M}_{sa}, \updelta , t+1 \models bid_{\mathsf {i},j}\), i.e., \(\text {M}_{sa}, \updelta , t\models \bigcirc bid_{\mathsf {i},j}\). In the second case, assume \(does_\mathsf {i}(p_1, \ldots ,p_\mathsf {m}) \wedge p_j\ne 0\). By the update function, \(bid_{\mathsf {i},j}\in \uppi _{{\Upphi }}(\updelta [t+1])\) and thus \(\text {M}_{sa}, \updelta , t\models \bigcirc bid_{\mathsf {i},j}\).

The remaining rules are verified in a similar way.

Proposition 2

For each \(j\in \text {G}\) and each \(\mathsf {i}, \mathsf {r}\in \text {N}\) such that \(\mathsf {i}\ne \mathsf {r}\),

  1. 1.

    \(\text {M}_{sa}\models trade_{\mathsf {i},j} = 0 \vee trade_{\mathsf {r},j} = 0\)

  2. 2.

    \(\text {M}_{sa}\models sold_j\rightarrow \bigcirc sold_j\)

  3. 3.

    \(\text {M}_{sa}\models \lnot sold_j\rightarrow price = price_j\)

Proof

Given a path \(\updelta \) in \(\text {M}_{sa}\), any stage \(t\) of \(\updelta \) and a good type \(j\in \text {G}\), let \(\mathsf {i}, \mathsf {r}\in \text {N}\), such that \(\mathsf {i}\ne \mathsf {r}\). Let us consider Statement 1. If \(\updelta [t]= \bar{\text {w}}\), then \(\text {M}_{sa}, \updelta , t\models trade_{\mathsf {i},j} =0 \wedge trade_{\mathsf {r},j} =0\) (see Rule 1). Otherwise, by the path definition, \(\updelta [j] = \text {U}(\updelta [t-1], \uptheta (\updelta , t-1))\). Let us suppose for the sake of contradiction that \(\text {M}_{sa}, \updelta , t\not \models trade_{\mathsf {i},j} = 0 \vee trade_{\mathsf {r}, j} = 0\). Since \(\text {W}\) construction defines \(trade_{\mathsf {i},j}, trade_{\mathsf {r}, j} \in \{0,1\}\), we have \(\text {M}_{sa}, \updelta , t\models trade_{\mathsf {i},j} = 1 \wedge trade_{\mathsf {r}, j} = 1\). Thus, \(\text {M}_{sa}, \updelta , t-1 \models \bigcirc trade_{\mathsf {i},j}\). By Rule 4, \(\text {M}_{sa}, \updelta , t-1 \models \bigcirc (bid_{\mathsf {i},j} \wedge \bigwedge _{\mathsf {s}\in \text {N}{\setminus } \{\mathsf {i}\}} \lnot bid_{\mathsf {s},j})\). Thereby, \(\text {M}_{sa}, \updelta , t-1 \not \models \bigcirc (bid_{\mathsf {r}, j} \wedge \bigwedge _{\mathsf {s}\in \text {N}{\setminus } \{\mathsf {r}\}} \lnot bid_{\mathsf {s},j})\) and \(\text {M}_{sa}, \updelta \), \(t-1 \not \models \bigcirc trade_{\mathsf {r}, j=1}\). Thus, \(\text {M}_{sa}, \updelta , t\not \models trade_{\mathsf {r}, j} = 1\), which is a contradiction.

For Statement 2. Assume \(\text {M}_{sa}, \delta , t\models sold_j\). Then, \(\text {M}_{sa}, \delta , t\models trade_{\mathsf {i}, j} = 1\) for some agent \(\mathsf {i}\in \text {N}\). From Rule 6, \(\theta _\mathsf {i}(\delta , t) = (p_1, \dots , p_\mathsf {m})\) with \(p_j= \uppi _{\text {Y}}(\delta [t], price_j)\) and \(\theta _\mathsf {r}(\delta , t) = (p_1', \dots , p_\mathsf {m}')\) with \(p_j' = 0\), for all agent \(\mathsf {r}\ne \mathsf {i}\). By Rule 9, we have \(\text {M}_{sa}, \delta , t\models bid_{\mathsf {i}, j} \wedge \bigwedge _{\mathsf {r}\in \text {N}{\setminus } \{\mathsf {i}\}} \lnot bid_{\mathsf {r},j}\). Thus, it follows from Rules 2 and 4 that \(\text {M}_{sa}, \delta , t\models \bigcirc trade_{\mathsf {i}, j} = 1\) and \(\text {M}_{sa}, \delta , t\models \bigcirc sold_j\).

For Statement 3, notice all prices in the initial state have the same value (Rule 1) and the current price and the price for unsold items are increased by the same amount in each turn (Rule 7 and 8). Assume \(\text {M}_{sa}, \delta , t\models \lnot sold_j\). Since \(\text {M}_{sa} \models sold_j\rightarrow \bigcirc sold_j\), there is no stage \(t'<t\) such that \(\text {M}_{sa}, \delta , t' \models sold_j\) and thus \(\text {M}_{sa}, \delta , t\models price = price_j\).

Proposition 3

\(\text {M}_{sa}\models \bigcirc wbb\) and \(\text {M}_{sa}\not \models \bigcirc sbb\)

Proof

Suppose a path \(\updelta \) in \(\text {M}_{sa}\) and a stage \(t\) in \(\updelta \). Note that each trade can be either 0 or 1 and the price for a good is at least 0, i.e., \(\uppi _{\text {Y}}(\updelta [t], trade_{\mathsf {i},j}) \in \{0, 1\}\) and \(\uppi _{\text {Y}}(\updelta [t], price_j) \in \text {I}_{\succeq 0}\). It follows from Rule 10 that \(\text {M}_{sa}, \updelta , t\models payment_{\mathsf {i}} \ge 0\) for each agent \(\mathsf {i}\) and \(\text {M}_{sa}, \updelta , t\models \text {sum}_{\mathsf {i}\in \text {N}}(payment_\mathsf {i}) \ge 0\). Thus, \(\text {M}_{sa} \models \bigcirc wbb\).

We will prove \(\text {M}_{sa}\) is not strongly budget-balanced with a counter-example. Given an agent \(\mathsf {i}\), let \(\updelta \) be a path in \(\text {M}_{sa}\) such that \(\theta _\mathsf {i}(\updelta , 0) = (\mathsf {start}, 0, \dots , 0)\) and \(\theta _\mathsf {s}(\updelta , 0) = (0, \dots , 0)\) for each agent \(\mathsf {s}\ne \mathsf {i}\). Since \((\mathsf {start}, 0, \dots , 0) \in \text {L}(\updelta [0], \mathsf {i})\) and \((0, \dots , 0) \in \text {L}(\text {w}, \mathsf {s})\), there exists such path in \(\text {M}_{sa}\). Since \(\updelta [0] \not \in \text {T}\), \(\uppi _{\text {Y}}(\updelta [0], price) = \uppi _{\text {Y}}(\updelta [0], price_j) = \mathsf {start}\) and \(sold_j\not \in \uppi _{{\Upphi }}(\updelta [0])\) for each \(j\), it follows from Rules 7 and 8, that all prices are increased by the constant \(\mathsf {inc}>0\), that is \(\text {M}_{sa}, \updelta , 1 \models price = \text {sum}(\mathsf {start}, \mathsf {inc}) \wedge \bigwedge _{j\in \text {G}} price_j= \text {sum}(\mathsf {start}, \mathsf {inc})\). By Rule 9, we have that agent \(\mathsf {i}\) is only bidding for the good 1, that is, \(\text {M}_{sa}, \updelta , 1 \models bid_{\mathsf {i},1} \wedge \bigwedge _{j\in \text {G}{\setminus }\{1\}} \lnot bid_{\mathsf {i}, j}\). All other agents are not bidding for any good, i.e., \(\text {M}_{sa}, \updelta , 1 \models \bigwedge _{j\in \text {G}} \lnot bid_{\mathsf {s}, j}\), for each \(\mathsf {s}\ne \mathsf {i}\). From Rules 4 and 10, we have \(\text {M}_{sa}, \updelta , 1 \models trade_{\mathsf {i}, 1} =1 \wedge payment_\mathsf {i}= price_1 \wedge \bigwedge _{\mathsf {s}\in \text {N}{\setminus }\{\mathsf {i}\}}\text {p}_\mathsf {s}=0\). Since \(\uppi _{\text {Y}}(\updelta [1], price_1) >0\), we have \(\text {M}_{sa}, \updelta , 1 \not \models \text {sum}_{\mathsf {s}\in \text {N}}(payment_\mathsf {s}) =0\) and \(\text {M}_{sa}\not \models \bigcirc sbb\).

Proposition 4

Given a joint action \(\varvec{\upbeta } \in \mathcal {B}^\mathsf {n}\),

  1. 1.

    \(\text {M}_{sa} \not \models does(\varvec{\upbeta }) \rightarrow \bigcirc e\textit{f}(\varvec{\upbeta })\)

  2. 2.

    \(\text {M}_{sa} \models does(\varvec{\upbeta }) \rightarrow \bigcirc (terminal\rightarrow e\textit{f}(\varvec{\upbeta }))\)

Proof

Given a path \(\delta \) in \(\text {M}_{sa}\), we first consider Statement 1. We prove \(\text {M}_{sa}\) is not efficient with a counter-example. Our purpose is to show that there exists a joint action \(\varvec{\upbeta }\) such that \(\text {M}_{sa}, \delta , 0 \models does(\varvec{\upbeta }) \wedge \lnot \bigcirc e\textit{f}(\varvec{\upbeta })\). That is, \(\text {M}_{sa}, \delta , 0 \models does(\varvec{\upbeta }) \wedge \lnot \bigcirc \text {sum}_{\mathsf {i}\in \text {N}}(v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{(trade_{j})}_{j\in \text {G}})) = \max _{\varvec{\uplambda }\in \Uplambda }(\text {sum}_{\mathsf {i}\in \text {N}}(v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{\uplambda })))\).

As we consider the initial state of \(\delta \), \(\text {M}_{sa}, \delta , 0 \models price = \mathsf {start} \wedge \bigwedge _{j\in \text {G}} price_j= \mathsf {start} \wedge \bigwedge _{\mathsf {i}\in \text {N}} (\lnot bid_{\mathsf {i}, j} \wedge trade_{\mathsf {i}, j} = 0)\). Thus, no good was sold, that is, \(\text {M}_{sa}, \delta , 0 \models \bigwedge _{j\in \text {G}}\lnot sold_j\). Let \(\mathsf {i}\) and \(\mathsf {r}\) be two distinct agents in \(\text {N}\) with \(\mathsf {i}\ne \mathsf {r}\). From the definition of \(\text {L}\), \(\text {L}(\delta [0], \mathsf {i})= \text {L}(\delta [0], \mathsf {r})\) and \((p_1, \dots , p_\mathsf {m}) \in \text {L}(\delta [0], \mathsf {i})\) if \(p_j= 0\) or \(p_j= \text {sum}(\mathsf {start},\mathsf {inc})\) for each good \(j\).

Let us assume \(\text {M}_{sa}, \delta , 0 \models does(\varvec{\upbeta })\) for \(\varvec{\upbeta } \in \mathcal {B}^\mathsf {n}\) such that \(\upbeta _\mathsf {i}=\upbeta _\mathsf {r}= (\mathsf {start}+\mathsf {inc}, 0, \dots , 0)\) and \(\upbeta _\mathsf {s}=(0, \dots , 0)\) for each \(\mathsf {s}\in \text {N}{\setminus }\{\mathsf {i}, \mathsf {r}\}\). Since \(\upbeta _\mathsf {i}\in \text {L}(\delta [0], \mathsf {i})\), \(\upbeta _\mathsf {r}\in \text {L}(\delta [0], \mathsf {r})\) and \(\upbeta _\mathsf {s}\in \text {L}(\delta [0], \mathsf {s})\), there exists such path in \(\text {M}_{sa}\). Thus, \(\text {M}_{sa}, \delta , 1 \models bid_{\mathsf {i}, 1} \wedge bid_{\mathsf {r}, 1}\). Notice \(bid_{\mathsf {i}', j}\) does not hold in \(\delta [1]\) for any other pair \((\mathsf {i}', j) \ne (\mathsf {i}, 1)\) and \((\mathsf {i}', j) \ne (\mathsf {s}, 1)\). From Rules 4 and 5, we have \(\text {M}_{sa}, \delta , 1 \models \bigwedge _{\mathsf {i}' \in \text {N}, j\in \text {G}} trade_{\mathsf {i}', j} = 0\).

Recall the valuation of each agent \(\mathsf {i}'\) is \(v_\mathsf {i}' ((p_1, \ldots , p_\mathsf {m}), \varvec{\uplambda }) = \sum _{j\in \text {G}} \uplambda _{\mathsf {i}', j} \cdot p_j\) for a trade \(\varvec{\uplambda }\in \text {I}^{\mathsf {n}\mathsf {m}}\) and a bid \((p_1, \ldots , p_\mathsf {m}) \in \mathcal {B}\). Since each trade has the value 0 in \(\delta [1]\), it follows that \(\text {M}_{sa}, \delta , 1 \models \text {sum}_{\mathsf {i}\in \text {N}}(v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{(trade_{j})}_{j\in \text {G}})) =0\).

However, let \(\varvec{\uplambda }\in \text {I}^{\mathsf {n}\mathsf {m}}\) be a trade such that \(\uplambda _{\mathsf {i}, 1}=1\) and \(\uplambda _{\mathsf {i}', j}=0\) for all other pair \((\mathsf {i}', j) \ne (\mathsf {i},1)\). It is easy to see that \(\varvec{\uplambda }\in \Uplambda \). The value of this trade for \(\mathsf {i}\) is \(v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{\uplambda }) = \mathsf {start}+\mathsf {inc}\) and \(v_\mathsf {i}'(\upbeta _\mathsf {i}', \varvec{\uplambda }) = 0\) for each \(\mathsf {i}'\ne \mathsf {i}\). Thus, we have \(\sum _{\mathsf {i}\in \text {N}}(v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{\uplambda })) = \mathsf {start}+\mathsf {inc}\), \(\text {M}_{sa}, \delta , 1 \models \lnot \text {sum}_{\mathsf {i}\in \text {N}}(v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{(trade_{j})}_{j\in \text {G}})) =\max _{\varvec{\uplambda }\in \Uplambda }(\text {sum}_{\mathsf {i}\in \text {N}}(v_\mathsf {i}(\upbeta _\mathsf {i}\), \(\varvec{\uplambda })))\) and \(\text {M}_{sa}, \delta , 0 \models \lnot \bigcirc e\textit{f}(\varvec{\upbeta })\).

For Statement 2, let \(\varvec{\upbeta } \in \mathcal {B}^\mathsf {n}\) be a joint action and \(t\ge 0\) be a stage of \(\delta \). From the definition of \(\text {M}_{sa}\) we have that each trade can be only 0 or 1. That is, if \(\varvec{\uplambda }\in \Uplambda \) then \(\uplambda _{\mathsf {i}, j} \in \{0,1\}\) for each agent \(\mathsf {i}\) and good \(j\). Assume \(\text {M}_{sa} \models does(\varvec{\upbeta }) \) and \(\text {M}_{sa}, \delta , t\models \bigcirc terminal\). We intend to show that \(\text {M}_{sa} \models \bigcirc e\textit{f}(\varvec{\upbeta })\), i.e., \(\text {M}_{sa}, \delta , t\models \bigcirc \text {sum}_{\mathsf {i}\in \text {N}}(v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{(trade_{j})}_{j\in \text {G}})) = \max _{\varvec{\uplambda }\in \Uplambda }(\text {sum}_{\mathsf {i}\in \text {N}}(v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{\uplambda }))))\).

We focus on the case where \(\delta [t] \not \in \text {T}\). Let \(\mathsf {i}\) be an agent in \(\text {N}\) and let \((p_1, \dots , p_\mathsf {m})\) denote \(\mathsf {i}\)’s action in \(\varvec{\upbeta }\). Recall function \(v_{\mathsf {i}}((p_1, \dots , p_\mathsf {m}), \varvec{\uplambda }) = \sum _{j\in \text {G}} p_j\cdot \uplambda _{\mathsf {i}, j}\), for a trade \(\varvec{\uplambda }\in \text {I}^{\mathsf {n}\mathsf {m}}\). Since the value for each good in \(v_\mathsf {i}\) depends only on its reported value in \(\mathsf {i}\)’s bid and its trade for \(\mathsf {i}\), we show that the part of \(v_{\mathsf {i}}((p_1, \dots , p_\mathsf {m}), \varvec{\uplambda })\) corresponding to each good \(j\) (i.e., \(p_j\cdot \uplambda _{\mathsf {i},j}\)) is maximized when \(\uplambda _{\mathsf {i}, j} = \uppi _{\text {Y}}(\delta [t], trade_{\mathsf {i}, j})\).

From the definition of \(\mathcal {B}\), we have that the reported value for \(j\) in \(\mathsf {i}\)’s bid is at least zero, i.e., \(p_j\ge 0\). We check for two cases:

  1. 1.

    If \(p_j= 0\), then \(\uplambda _{\mathsf {i}j}\cdot p_j= 0\), for any trade \(\varvec{\uplambda }\in \Uplambda \). Thus, \(\text {M}_{sa}, \delta , t+1 \models \text {times}(p_j, trade_{\mathsf {i}, j}) = \max ( \text {times}(p_j, 0), \text {times}(p_j, 1) )\);

  2. 2.

    If \(p_j> 0\), then \(\text {M}_{sa}, \delta , t+1 \models bid_{\mathsf {i}, j}\). Since \(\delta [t+1]\in \text {T}\), it should be the case that \(\text {M}_{sa}, \delta , t+1 \models sold_j\). From Rule 2, we know the trade for good \(j\) is one for some agent, i.e., \(\text {M}_{sa}, \delta , t+1 \models \bigvee _{\mathsf {r}\in \text {N}} trade_{\mathsf {r}, j} = 1\). Because \(\text {M}_{sa}, \delta , t+1 \models bid_{\mathsf {i}, j}\), it should be the case that the agent who have a trade for \(j\) is \(\mathsf {i}\) (see Rules 4 and 5), that is, \(\text {M}_{sa}, \delta , t+1 \models trade_{\mathsf {i}, j}=1\). Hence, \(\text {M}_{sa}, \delta , t+1 \models \text {times}(p_j, 1) = \max (\text {times}(p_j, 0), \text {times}(p_j, 1))\).

It follows that

$$\begin{aligned}\text {M}_{sa}, \delta , t+1 \models \text {sum}_{\mathsf {i}\in \text {N}}(v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{(trade_{j})}_{j\in \text {G}})) = \max _{\varvec{\uplambda }\in \Uplambda }(\text {sum}_{\mathsf {i}\in \text {N}}(v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{\uplambda }))))\end{aligned}$$

or simply, \(\text {M}_{sa}, \delta , t\models \bigcirc ef(\varvec{\upbeta })\).

The case where \(\delta [t] \in \text {T}\), follows from the loop on the path definition.

Proposition 5

\(\text {M}_{sa}\) is strategyproof.

Proof

Given a path \(\delta \) in \(\text {M}_{sa}\) and a stage \(t\ge 0\) in \(\delta \), such that \(\text {L}(\delta [t], \mathsf {i}) \approx _\mathsf {i}V_\mathsf {i}\). Let \(\varvec{\vartheta } \in \prod _{\mathsf {i}\in \text {N}}V_\mathsf {i}\) be a preference profile and \(\delta _{\varvec{\vartheta }}\) denote a path such that \(\delta [0,t] = \delta _{\varvec{\vartheta }}[0,t]\) and \(\theta (\delta _{\varvec{\vartheta }}, t) = \varvec{\upbeta _\vartheta }\). We let \(\vartheta '_{\mathsf {i}} \in V_\mathsf {i}\) denote a preference of agent \(\mathsf {i}\), \(\varvec{\vartheta '} = (\vartheta _\mathsf {i}', \vartheta _{-\mathsf {i}})\) and \(\delta _{\varvec{\vartheta '}}\) be a path such that \(\delta [0,t] = \delta _{\varvec{\vartheta '}}[0,t]\), \(\theta _\mathsf {i}(\delta _{\varvec{\vartheta '}}, t) = \upbeta _{\vartheta '_\mathsf {i}}\) and \(\theta _\mathsf {r}(\delta _{\varvec{\vartheta '}}, t) = \upbeta _{\vartheta _\mathsf {r}}\) for each agent \(\mathsf {r}\ne \mathsf {i}\).

In the stage \(t\) of \(\delta _{{\varvec{\vartheta }}}\), the agents report their (truthful) preferences \(\varvec{\vartheta }\), i.e., \(\text {M}_{sa}, \delta _{\varvec{\vartheta }}, t\models does(\varvec{\upbeta _\vartheta })\). On the other hand, in the stage \(t\) of \(\delta _{\varvec{\vartheta '}}\), the agent \(\mathsf {i}\) reports her (untruthful) preference \(\vartheta '_\mathsf {i}\) and each agent \(\mathsf {r}\ne \mathsf {i}\) reports \(\vartheta _\mathsf {r}\), i.e., \(\text {M}_{sa}, \delta _{\varvec{\vartheta '}}, t\models does_\mathsf {i}(\upbeta _{\vartheta _\mathsf {r}'}) \wedge \bigwedge _{\mathsf {r}\in \text {N}{\setminus }\{\mathsf {i}\}} does_\mathsf {r}(\upbeta _{\vartheta _\mathsf {r}})\).

For some \(x\in \text {I}\), we have to show \(\text {M}_{sa},\delta _{\varvec{\vartheta }}, t\models \bigcirc \text {sub}(v_{\mathsf {i}}(\upbeta _{\vartheta _\mathsf {i}}, \varvec{(trade_{j})}_{j\in \text {G}})\), \(payment_\mathsf {i}) = x\) and \(\text {M}_{sa},\delta _{\varvec{\vartheta '}}, t\models \bigcirc \text {sub}(v_{\mathsf {i}}(\upbeta _{\vartheta _\mathsf {i}}, \varvec{(trade_{j})}_{j\in \text {G}}), payment_\mathsf {i}) \le x\).

That is, agent \(\mathsf {i}\)’s utility in \(\delta _{\varvec{\vartheta '}}\) is not better than in \(\delta _{\varvec{\vartheta }}\). Remind the legal actions in \(\delta [t]\) represent her preference space, i.e., \(\text {L}(\delta [t], \mathsf {i}) \approx _\mathsf {i}V_\mathsf {i}\). Notice the value of a bid \((p_1, \ldots , p_\mathsf {m})\) given a trade \(\varvec{\uplambda }\) is \(v_\mathsf {i}((p_1, \ldots , p_\mathsf {m}), \varvec{\uplambda }) = \sum _{j\in \text {G}} \uplambda _{\mathsf {i}, j} \cdot p_j\). Similarly, the payment in \(\delta [t]\) is \(\uppi _{\text {Y}}(\delta [t], payment_\mathsf {i}) = \sum _{j\in \text {G}} \uppi _{\text {Y}}(\delta [t], trade_{\mathsf {i}, j}) \cdot \uppi _{\text {Y}}(\delta [t], price_j)\). Since there is no dependence among goods in \(v_\mathsf {i}\) and in \(\mathsf {i}\)’s payment, we consider the part of \(\mathsf {i}\)’s utility corresponding to \(j\) in \(\delta _{\varvec{\vartheta }}\) and \(\delta _{\varvec{\vartheta '}}\). Thus, we need to show that

  1. (i)

    \(\text {M}_{sa}, \delta _{\varvec{\vartheta }}, t\models \bigcirc \text {sub}(\text {times}(trade_{\mathsf {i}, j}, p_j), \text {times}(trade_{\mathsf {i}, j}, price_j)) = x_j\)

  2. (ii)

    \(\text {M}_{sa}, \delta _{\varvec{\vartheta '}}, t\models \bigcirc \text {sub}(\text {times}(trade_{\mathsf {i}, j}, p_j), \text {times}(trade_{\mathsf {i}, j}, price_j)) \le x_j\)

for some \(x_j\in \text {I}\) and each good \(j\in \text {G}\).

We denote \(\upbeta _{\vartheta _{\mathsf {i}}} = (p_1, \dots , p_\mathsf {m})\) and \(\upbeta _{\vartheta '_{\mathsf {i}}} = (p_1', \dots , p_\mathsf {m}')\). According to the legality definition, the values of \(p_j\) and \(p_j'\) can be either the price of \(j\) in \(\delta [t]\), zero, or the price in \(\delta [t]\) incremented by \(\mathsf {inc}>0\). Let us consider each case:

  • Assume \(p_j= \uppi _{\text {Y}}(\delta [t],price_j)\) iff \(\text {M}_{sa}, \delta , t\models trade_{\mathsf {i}, j} = 1\) (w.r.t the definition of \(\text {L}\)). That is, \(p_j= \uppi _{\text {Y}}(\delta [t],price_j)\) when good \(j\) was already bought by agent \(\mathsf {i}\). Thus, it is not legal for \(\mathsf {i}\) to bid any other value for \(j\), i.e., \((p_1', \dots , p_j') \in \text {L}(\delta [t], \mathsf {i})\) iff \(p_j= p_j'\). Thereby, it is easy to see that \(\text {M}_{sa}, \delta _{\varvec{\vartheta }}, t\models \bigcirc \text {sub}(\text {times}(trade_{\mathsf {i}, j}, p_j), \text {times}(trade_{\mathsf {i}, j}, price_j)) = p_j\) and also \(\text {M}_{sa}, \delta _{\varvec{\vartheta '}}, t\models \bigcirc \text {sub}(\text {times}(trade_{\mathsf {i}, j}, p_j), \text {times}(trade_{\mathsf {i}, j}, price_j))= p_j\).

  • Assume agent \(\mathsf {i}\) declines to raise her bid for good \(j\), that is, \(p_j= 0\). By Rules 5 and 9, we have \(\text {M}_{sa}, \delta _{\varvec{\vartheta }}, t\models \bigcirc trade_{\mathsf {i}, j} = 0\) and \(\text {M}_{sa}, \delta _{\varvec{\vartheta }}, t\models \bigcirc \text {sub}(\text {times}(trade_{\mathsf {i}, j}, p_j), \text {times}(trade_{\mathsf {i}, j}, price_j))= 0\). By the legality definition, it should be the case that \(\text {M}_{sa}, \delta , t\models \lnot trade_{\mathsf {i}, j}=0\) and \(p_j'\) is either 0 or \(\uppi _{{\Upphi }}(\delta [t], price)+\mathsf {inc}\). If \(p_j'=0\), then \(\text {M}_{sa}, \delta _{\varvec{\vartheta '}}, t\models \bigcirc \text {sub}(\text {times}(trade_{\mathsf {i}, j}, p_j)\), \(\text {times}(trade_{\mathsf {i}, j}, price_j))= 0\). Otherwise, the value of \(trade_{\mathsf {i}, j}\) in \(\delta _{\varvec{\vartheta '}}[t+1]\) will be either 0 or 1, depending on the joint bid \(\varvec{\upbeta _{\vartheta '}}\).

    • If \(\text {M}_{sa}, \delta _{\varvec{\vartheta '}}, t\models \bigcirc trade_{\mathsf {i}, j} = 1\), then \(\text {M}_{sa}, \delta _{\varvec{\vartheta '}}, t\models \bigcirc \text {sub}(\text {times}(trade_{\mathsf {i}, j}, p_j)\), \(\text {times}(trade_{\mathsf {i}, j}, price_j))= \text {sub}(0, price_j)\). Since \(\uppi _{\text {Y}}(\delta _{\varvec{\vartheta '}}[t+1], price_j)\ge 0\), we have \(\text {sub}(\text {times}(trade_{\mathsf {i}, j}, p_j)\), \(\text {times}(trade_{\mathsf {i}, j}, price_j))\le 0\).

    • Otherwise, the trade for good \(j\) is zero (i.e., \(\text {M}_{sa}, \delta _{\varvec{\vartheta '}}, t\models \bigcirc trade_{\mathsf {i}, j} = 0\)) and \(\text {M}_{sa}, \delta _{\varvec{\vartheta '}}, t\models \bigcirc \text {sub}(\text {times}(trade_{\mathsf {i}, j}, p_j), \text {times}(trade_{\mathsf {i}, j}, price_j))= 0\).

  • The proof for the case \(p_j= \uppi _{\text {Y}}(\delta [t], price)+\mathsf {inc}\) is similar to the previous case.

It follows that \(\text {M}_{sa},\delta _{\varvec{\vartheta }}, t\models \bigcirc \text {sub}(v_{\mathsf {i}}(\upbeta _{\vartheta _\mathsf {i}}, \varvec{(trade_{j})}_{j\in \text {G}})\), \(payment_\mathsf {i}) = x\) and \(\text {M}_{sa},\delta _{\varvec{\vartheta '}}, t\models \bigcirc \text {sub}(v_{\mathsf {i}}(\upbeta _{\vartheta _\mathsf {i}}, \varvec{(trade_{j})}_{j\in \text {G}}), payment_\mathsf {i}) \le x\), where \(x\in \text {I}\).

Lemma 2

For each agent \(\mathsf {i}\in \text {N}\), each bid-tree \(\upbeta \in \mathcal {L}_{\textsf {{TBBL}}}\) and each \(\varvec{\uplambda }\in \text {I}^{\mathsf {n}\mathsf {m}}\), \( v_\mathsf {i}(\text {noop}, \varvec{\uplambda }) = 0\).

Proof

Remind \(\text {noop}\) denotes a leaf bid \(\langle 0,j,0\rangle \), where \(j\in \text {G}\). Thus, \(b_\mathsf {i}(\text {noop}) = 0\). Let \(\varvec{\uplambda }\in \text {I}^{\mathsf {n}\mathsf {m}}\). The value of \(\varvec{\uplambda }\) given \(\text {noop}\), i.e., \(v_\mathsf {i}(\text {noop}, \varvec{\uplambda })\), is the maximal sum of \(b_\mathsf {i}(\upbeta )\cdot \text {sat}_\mathsf {i}(\upbeta )\) in a solution \(\text {sat}_\mathsf {i}\), for all \(\upbeta \in \text {Node}(\text {noop})\). Since \(\text {Node}(\text {noop}) = \{\text {noop}\}\) and \(b_\mathsf {i}(\text {noop})=0\), for any solution \(\text {sat}_\mathsf {i}\), \(v_\mathsf {i}(\text {noop}, \varvec{\uplambda }) = 0\).

Lemma 3

\(\text {M}_{vcg}\) is an ST-model and it is a model of \(\Sigma _{vcg}\).

Proof

(Sketch) It is routine to check that \(\text {M}_{vcg}\) is actually an ST-model. Given a path \(\updelta \) in \(\text {M}_{vcg}\) and a stage t of \(\updelta \), we need to show that \(\text {M}_{vcg},\updelta , t \models \varphi \), for each \(\varphi \in \Sigma _{vcg}\).

Let us verify Rule 1. Assume \(\text {M}_{vcg}, \updelta , t \models initial\), then \(\updelta [t]= \bar{\text {w}}\), i.e., \(\updelta [t]= \langle 1, 0, \ldots , 0, 0, \ldots , 0 \rangle \). By the definitions of \(\uppi _{\text {Y}}\) and \(\uppi _{{\Upphi }}\), \(\uppi _{{\Upphi }}(\bar{\text {w}}) = \{bidRound\}\), \(\uppi _{\text {Y}}(\bar{\text {w}}, payment_\mathsf {i}) = 0\) and \(\uppi _{\text {Y}}(\bar{\text {w}}, trade_{\mathsf {i},j}) = 0\) for all \(\mathsf {i}\in \text {N}\) and \(j\in \text {G}\). Thus, \(\text {M}_{vcg}, \updelta , t \models bidRound\wedge \bigwedge _{\mathsf {i}\in \text {N}} payment_\mathsf {i}= 0 \wedge \bigwedge _{j\in \text {G}} trade_{\mathsf {i},j} = 0\).

Now we verify Rule 4. Assume \(\text {M}_{vcg}, \updelta , t \models initial\), then \(\updelta [t]= \bar{\text {w}}\) and for all \(\mathsf {i}\in \text {N}\) and \(\upbeta \in \mathcal {B}\), \((\bar{\text {w}}, i, \upbeta ) \in \text {L}\). Thus, \(\text {M}_{vcg}, \updelta , t \models legal_\mathsf {i}(\upbeta )\).

Then we consider Rule 5. \(\text {M}_{vcg}, \updelta , t \models does(\varvec{\upbeta }) \wedge initial\), for \(\varvec{\upbeta } \in \mathcal {B}^\mathsf {m}\), i.e., \(\text {M}_{vcg}, \updelta , t \models \bigwedge _{\mathsf {i}\in \text {N}} does(\upbeta _\mathsf {i})\) and \(\text {M}_{vcg}, \updelta , t \models initial\). Thus, \(\uptheta _{\mathsf {i}} (\updelta , t) = \upbeta _\mathsf {i}\) for all \(\mathsf {i}\in \text {N}\). The update function \(\text {U}\) defines \(\updelta [t+1]\) such that \(\uppi _{\text {Y}}(\updelta [t+1], trade_{\mathsf {i},j}) = \text {WD}_{\uplambda _{\mathsf {i},j}}(\varvec{\upbeta }, \mathsf {X})\), for each \(\mathsf {i}\in \text {N}\) and \(j\in \text {G}\). Thus, \(\text {M}_{vcg}, \updelta , t+1 \models \bigwedge _{\mathsf {i}\in \text {N}, j\in \text {G}} trade_{\mathsf {i},j} = \text {WD}_{\uplambda _{\mathsf {i},j}}(\varvec{\upbeta }, \mathsf {X})\) and also \(\text {M}_{vcg}, \updelta , t \models \bigcirc (\bigwedge _{\mathsf {i}\in \text {N}, j\in \text {G}} trade_{\mathsf {i},j} = \text {WD}_{\uplambda _{\mathsf {i},j}}(\varvec{\upbeta }, \mathsf {X} ))\). Using the abbreviation, \(\text {M}_{vcg}, \updelta \), \(t \models \bigcirc (\bigwedge _{\mathsf {i}\in \text {N}} trade_\mathsf {i}= \text {WD}_{\uplambda _{\mathsf {i}}}(\varvec{\upbeta }\), \( \mathsf {X} ))\).

The remaining rules are verified in a similar way.

Lemma 4

For each agent \(\mathsf {i}\in \text {N}\), \(\text {M}_{vcg} \models initial \wedge does_\mathsf {i}(\text {noop}) \rightarrow \bigcirc payment_\mathsf {i}= 0 \wedge \bigwedge _{j\in \text {G}} trade_{\mathsf {i}, j} \ge 0\)

Proof

Straightforward from Lemma 2, Rule 6 from \(\Sigma _{vcg}\) and Rule R2 from the definition of \(b_\mathsf {i}\).

Proposition 6

\(\text {M}_{vcg} \not \models \bigcirc sbb\) and \(\text {M}_{vcg} \not \models \bigcirc wbb\).

Proof

We show \(\text {M}_{vcg} \not \models \bigcirc wbb\) and \(\text {M}_{vcg} \not \models \bigcirc sbb\) by showing a counter example. Given two distinct agents \(\mathsf {i}, \mathsf {r}\) in \(\text {N}\) and a good \(j\) in \(\text {G}\), let \(\updelta \) be a path in \(\text {M}_{vcg}\) such that \(\theta _{\mathsf {i}}(\delta , 0) = \langle 1, j, 5 \rangle \) and \(\theta _{\mathsf {r}}(\delta , 0) = \langle -1, j, -3 \rangle \). For any other agent \(\mathsf {s}\in \text {N}{\setminus }\{\mathsf {i}, \mathsf {r}\}\), \(\theta _{\mathsf {s}}(\delta , 0) = noop\). Since this actions are legal in the initial state \(\delta [0]\), there exists such path.

By Rule 5 and the definition of function \(\text {WD}_{\varvec{\uplambda }}\), we have that \(\text {M}_{vcg}, \delta , 1 \models (trade_{\mathsf {i}, j} = 1 \wedge trade_{\mathsf {r}, j} = -1)\) and \(\text {M}_{vcg}, \delta , 1 \models trade_{\mathsf {s}, j'} = 0\) for all pairs \((\mathsf {s}, j') \ne (\mathsf {i}, j)\) and \((\mathsf {s}, j') \ne (\mathsf {r}, j)\). That is, the good \(j\) is sold by \(\mathsf {r}\) and bought by \(\mathsf {i}\). The social welfare of all agents other than \(\mathsf {i}\) is \(-3\) and the social welfare of all agents other than \(\mathsf {r}\) is 5. If either \(\mathsf {i}\) or \(\mathsf {r}\) did not participate, there would be no trade and the social welfare would be zero. Thus, by Rule 6, the payments for \(\mathsf {i}\) and \(\mathsf {r}\) are 3 and \(-5\), resp., that is, \(\text {M}_{vcg}, \delta , 1 \models payment_{\mathsf {i}} = 3 \wedge payment_{\mathsf {r}} = -5\). The other agents’ do not have payments on \(\delta [1]\), i.e., \(\text {M}_{vcg}, \delta , 1 \models \bigwedge _{\mathsf {s}\in \text {N}{\setminus }\{\mathsf {i}, \mathsf {r}\}}payment_{\mathsf {s}} = 0\). Then, \(\text {M}_{vcg}, \delta , 1 \models \text {sum}_{\mathsf {i}\in \text {N}}(payment_\mathsf {i}) <0\). Thus we have that \(\text {M}_{vcg}, \delta , 0 \not \models \bigcirc sbb\) and \(\text {M}_{vcg}, \delta , 0 \not \models \bigcirc wbb\).

Proposition 7

Given a joint action \(\varvec{\upbeta } \in \mathcal {B}^\mathsf {n}\), \(\text {M}_{vcg} \models does(\varvec{\upbeta }) \rightarrow \bigcirc e\textit{f}(\varvec{\upbeta })\)

Proof

(Sketch) Since \(\text {M}_{vcg} \models initial \rightarrow \bigcirc terminal\) and \(\updelta [t+1] = \updelta [t]\) whenever \(\updelta [t]\in \text {T}\), it suffices to show that \(\text {M}_{vcg}, \delta , 0 \models does(\varvec{\upbeta }) \rightarrow \bigcirc e\textit{f}(\varvec{\upbeta })\), for any joint action \(\varvec{\upbeta } \in \mathcal {B}^\mathsf {n}\). Assume \(\text {M}_{vcg}, \delta , 0 \models does(\varvec{\upbeta })\), by Rule 5 we have that \(\text {M}_{vcg}, \delta , 1 \models \bigwedge _{\mathsf {i}\in \text {N}, j\in \text {G}} trade_{\mathsf {i}, j} = \text {WD}_{\uplambda _{\mathsf {i}, j}}( \varvec{\upbeta }, \mathsf {X})\). By the definition of the winner determination function \(\text {WD}_{\varvec{\uplambda }}(\varvec{\upbeta },\mathsf {X})\) (and consequently function \(\text {WD}_{\uplambda _{\mathsf {i}, j}}\) for each agent \(\mathsf {i}\) and good \(j\)), we have that the trade \((\uppi _{\text {Y}}(\delta [1], trade_{\mathsf {i}, j}))_{j\in \text {G}, \mathsf {i}\in \text {N}}\) maximizes the cumulative value among the agents. That is, \(\text {M}_{vcg}, \delta , 1 \models \text {sum}_{\mathsf {i}\in \text {N}}(v_\mathsf {i}(\upbeta _\mathsf {i}\), \(\varvec{(trade_{j})}_{j\in \text {G}})) = \max _{\varvec{\uplambda }\in \Uplambda }(\text {sum}_{\mathsf {i}\in \text {N}}(v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{\uplambda })))\) and \(\text {M}_{vcg}, \delta , 0 \models does(\varvec{\upbeta }) \rightarrow \bigcirc e\textit{f}(\varvec{\upbeta })\).

Proposition 8

Given a joint action \(\varvec{\upbeta } \in \mathcal {B}^\mathsf {n}\), if \(\vartheta _\mathsf {i}(\varvec{\uplambda }) \ge 0\) for all \(\varvec{\uplambda }\in \text {I}^{\mathsf {n}\mathsf {m}}\), \(\vartheta _\mathsf {i}\in V_\mathsf {i}\) and \(\mathsf {i}\in \text {N}\), then \(\text {M}_{vcg} \models does(\varvec{\upbeta }) \rightarrow \bigcirc ir(\varvec{\upbeta })\).

Proof

Let \(\varvec{\upbeta }\in \mathcal {B}^\mathsf {n}\) be a joint action and \(\delta \) be a path in \(\text {M}_{vcg}\). Since \(\text {M}_{vcg} \models initial \rightarrow \bigcirc terminal\) and \(\updelta [t+1] = \updelta [t]\) whenever \(\updelta [t]\in \text {T}\), it suffices to show that \(\text {M}_{vcg}, \delta , 0 \models does(\varvec{\upbeta }) \rightarrow \bigcirc ir(\varvec{\upbeta })\). Assume \(\text {M}_{vcg}, \delta , 0 \models does(\varvec{\upbeta })\) and that the preferences represented by \(\text {L}(\delta [1], \mathsf {i})\) are non-negative for every agent and possible trade. That is, \(v_{\mathsf {i}}(\upbeta , \varvec{\uplambda }) \ge 0\) for any bid \(\upbeta \), trade \(\varvec{\uplambda }\) and agent \(\mathsf {i}\).

Let \(\varvec{\uplambda }= \varvec{(\uplambda _{j})}_{j\in \text {G}}\) denote the trade performed after the agents report \(\varvec{\upbeta }\), where \(\uplambda _{\mathsf {i}, j} = \uppi _{\text {Y}}(\delta [1], trade_{\mathsf {i}, j}) = \text {WD}_{\uplambda _{\mathsf {i}, j}}(\varvec{\upbeta }, \mathsf {X})\) for each good \(j\) and agent \(\mathsf {i}\). We denote by \(\varvec{\uplambda }^{-\mathsf {i}} = \text {WD}_{\varvec{\uplambda }}^{-\mathsf {i}}(\varvec{\upbeta }, \mathsf {X})\) the trade that would happen if \(\mathsf {i}\) did not participate.

The utility of agent \(\mathsf {i}\) in \(\delta [1]\) is \(u_\mathsf {i}= v(\upbeta _\mathsf {i}, \varvec{\uplambda })- \uppi _{\text {Y}}(\delta [1],payment_\mathsf {i})\). According to the payment definition (Rule 6), agent \(\mathsf {i}\)’s utility in \(\delta [1]\) is

$$\begin{aligned}u_\mathsf {i}= v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{\uplambda })- \big ( \sum _{\mathsf {r}\in \text {N}{\setminus }\{\mathsf {i}\}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda }^{-\mathsf {i}}) - \sum _{\mathsf {r}\in \text {N}{\setminus }\{\mathsf {i}\}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda })\big )\end{aligned}$$

or

$$\begin{aligned}u_\mathsf {i}= v_\mathsf {i}(\upbeta _\mathsf {i}, \varvec{\uplambda })- \sum _{\mathsf {r}\in \text {N}{\setminus }\{\mathsf {i}\}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda }^{-\mathsf {i}}) + \sum _{\mathsf {r}\in \text {N}{\setminus }\{\mathsf {i}\}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda }) \end{aligned}$$

or simply

$$\begin{aligned}u_\mathsf {i}= \sum _{\mathsf {r}\in \text {N}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda }) - \sum _{\mathsf {r}\in \text {N}{\setminus }\{\mathsf {i}\}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda }^{-\mathsf {i}}) \end{aligned}$$

Thus, agent \(\mathsf {i}\)’s utility is non-negative if

$$\begin{aligned}\sum _{\mathsf {r}\in \text {N}{\setminus }\{\mathsf {i}\}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda }) \ge \sum _{\mathsf {r}\in \text {N}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda }^{-\mathsf {i}}) \end{aligned}$$

Assume for contradiction that this is not the case, that is,

$$\begin{aligned}\sum _{\mathsf {r}\in \text {N}{\setminus }\{\mathsf {i}\}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda }^{-\mathsf {i}}) > \sum _{\mathsf {r}\in \text {N}{\setminus }\{\mathsf {i}\}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda })\end{aligned}$$

Since \(v_{\mathsf {r}}(\upbeta _\mathsf {r}, \varvec{\uplambda }^{-\mathsf {i}})\ge 0\), then we have

$$\begin{aligned}\sum _{\mathsf {r}\in \text {N}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda }^{-\mathsf {i}}) \ge \sum _{\mathsf {r}\in \text {N}{\setminus }\{\mathsf {i}\}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda }^{-\mathsf {i}}) > \sum _{\mathsf {r}\in \text {N}{\setminus }\{\mathsf {i}\}} v_\mathsf {r}(\upbeta _\mathsf {r}, \varvec{\uplambda })\end{aligned}$$

which is a contradiction since \(\varvec{\uplambda }\) is the efficient trade (see Proposition 7). Thus, \(\text {M}_{vcg}, \delta , 1 \models \bigwedge _{\mathsf {r}\in \text {N}} \text {sub}(v_{\mathsf {r}}(\upbeta _\mathsf {r}, \varvec{(trade_{j})}_{j\in \text {G}}), payment_\mathsf {r})\ge 0\) and \(\text {M}_{vcg}, \delta , 0 \models \bigcirc ir(\varvec{\upbeta })\).

Lemma 5

\(\text {M}_{ice}\) is an ST-model and it is a model of \(\Sigma \).

Proof

The proof is similar to those for Lemmas 1 and 3.

Proposition 9

\(\text {M}_{ice}\not \models \bigcirc sbb\) and \(\text {M}_{ice} \models \bigcirc wbb\).

Proof

(Sketch) Considering strong budget-balance, notice the path \(\delta \) illustrated at Fig. 7 is a counterexample. For instance, in the last stage we have \(\text {M}_{ice}, \delta , 3 \models \text {sum}_{\mathsf {i}\in \text {N}} (payment_\mathsf {i})= 3\) and thus \(\text {M}_{ice} \not \models \bigcirc \text {sum}_{\mathsf {i}\in \text {N}}(payment_\mathsf {i}) = 0\) and \(\text {M}_{ice} \not \models \bigcirc sbb\).

Now we consider weak budget-balance. Let \(\delta \) be a path in \(\text {M}_{ice}\), \(t\ge 0\) a stage in \(\delta \) and \(\mathsf {i}\in \text {N}\). By the definition of \(v_\mathsf {i}\), we have that an empty trade is valuated zero, i.e., \(v_\mathsf {i}(\theta _\mathsf {i}(\delta , 0), (0, \dots , 0)) = 0\). Thus, \(\sum _{\mathsf {r}\in \text {N}}v_\mathsf {r}(\theta _\mathsf {r}(\delta , 0), (0, \dots , 0)) = 0\). Notice the empty trade \((0, \cdots , 0)\) satisfies Constraints C1C4 from the winner determination. Among the trades satisfying those constraints, \(\text {WD}^\varepsilon \) selects the trade \(\varvec{(\uplambda _{j})}_{j\in \text {G}}\) that maximizes the cumulative value among all agents, Thus, the cumulative value cannot be smaller than zero. Since the agents’ pay the value of their bids, it follows that \(\text {M}_{ice}, \delta , t\models \bigcirc \text {sub}_{\mathsf {i}\in \text {N}}(payment_\mathsf {i}) \ge 0\).

Proposition 10

Given a joint action \(\varvec{\upbeta } \in \mathcal {B}^\mathsf {n}\), \(\text {M}_{ice}\models does(\varvec{\upbeta }) \rightarrow \bigcirc ir(\varvec{\upbeta })\).

Proof

The proof is straightforward since \(\text {M}_{ice} \models does_\mathsf {i}(\upbeta _\mathsf {i}) \rightarrow \bigcirc payment_\mathsf {i}= v_\mathsf {i}(\upbeta _\mathsf {i}\), \(\varvec{(trade_{j})}_{j\in \text {G}})\), for each \(\mathsf {i}\in \text {N}\) and \(\upbeta _\mathsf {i}\in \mathcal {B}\).

Proposition 11

Given a joint action \(\varvec{\upbeta } \in \mathcal {B}^\mathsf {n}\), \(\text {M}_{ice}\models does(\varvec{\upbeta }) \rightarrow \bigcirc e\textit{f}(\varvec{\upbeta })\)

Proof

(Sketch) The proof is similar to the proof for Proposition 11.

Proposition 12

\(\text {M}_{ice}\) is not strategyproof.

Proof

(Sketch) We show \(\text {M}_{ice}\) is not strategyproof with a counterexample. Assume the path \(\delta \) illustrated in Fig. 7 and consider stage 2. We have \(\theta _\mathsf {s}(\delta , 2) = \langle 1, \mathsf {a}, 18, 18 \rangle \). Since the agents pay their reported valuation, in \(\delta [3]\), the utility of agent \(\mathsf {s}\) given her bid is zero, i.e., \(\text {M}_{ice}, \delta , 3 \models \text {sub}(v_\mathsf {s}(\langle 1, \mathsf {a}, 18, 18 \rangle , \varvec{(trade_{j})}_{j\in \text {G}}), payment_\mathsf {s}) = 0\). Let \(\delta '\) be a path in \(\text {M}_{ice}\) defined exactly like \(\delta \), except by the actions performed by \(\mathsf {s}\) in each stage \(t\ge 2\), which is defined as \(\theta _\mathsf {s}(\delta , t) = \langle 1, \mathsf {a}, 16, 16 \rangle \). Then, \(\text {M},\delta ', 3 \models \bigcirc \text {sub}(v_{\mathsf {i}}(\langle 1, \mathsf {a}, 18, 18 \rangle , \varvec{(trade_{j})}_{j\in \text {G}}), payment_\mathsf {s}) =2\) and \(\text {M},\delta ', 3 \not \models \bigcirc \text {sub}(v_{\mathsf {s}}(\langle 1, \mathsf {a}, 18, 18 \rangle , \varvec{(trade_{j})}_{j\in \text {G}}), payment_\mathsf {s}) \le 0\).

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Mittelmann, M., Bouveret, S. & Perrussel, L. Representing and reasoning about auctions. Auton Agent Multi-Agent Syst 36, 20 (2022). https://doi.org/10.1007/s10458-022-09547-9

Download citation

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s10458-022-09547-9

Keywords

Navigation