* Lindell et al. (2017) Marina Lindell, André Bächtiger, Kimmo Grönlund, Kaisa Herne, Maija Setälä, and Dominik Wyss. 2017.  What drives the polarisation and moderation of opinions? Evidence from a Finnish citizen deliberation experiment on immigration.  _European Journal of Political Research_ 56, 1 (2017), 23–45.
  * López-Pintado (2008) Dunia López-Pintado. 2008.  Diffusion in complex social networks.  _Games and Economic Behavior_ 62, 2 (2008), 573–590.
  * Lord et al. (1979) Charles G Lord, Lee Ross, and Mark R Lepper. 1979.  Biased assimilation and attitude polarization: The effects of prior theories on subsequently considered evidence.  _Journal of personality and social psychology_ 37, 11 (1979), 2098.
  * Lorenz (2006) Jan Lorenz. 2006.  Consensus strikes back in the Hegselmann-Krause model of continuous opinion dynamics under bounded confidence.  _Journal of Artificial Societies and Social Simulation_ 9, 1 (2006).
  * Lorenz (2017) Jan Lorenz. 2017.  Modeling the evolution of ideological landscapes through opinion dynamics. In _Advances in social simulation 2015_. Springer, 255–266.
  * Lorenz-Spreen et al. (2020) Philipp Lorenz-Spreen, Stephan Lewandowsky, Cass R Sunstein, and Ralph Hertwig. 2020.  How behavioural sciences can promote truth, autonomy and democratic discourse online.  _Nature human behaviour_ 4, 11 (2020), 1102–1109.
  * Lorenz-Spreen et al. (2023) Philipp Lorenz-Spreen, Lisa Oswald, Stephan Lewandowsky, and Ralph Hertwig. 2023.  A systematic review of worldwide causal and correlational evidence on digital media and democracy.  _Nature human behaviour_ 7, 1 (2023), 74–101.
  * Macy et al. (2003) Michael W Macy, James A Kitts, Andreas Flache, and Steve Benard. 2003.  Polarization in dynamic networks: A Hopfield model of emergent structure.  (2003).
  * Maio et al. (2018) Gregory R Maio, Bas Verplanken, and Geoffrey Haddock. 2018.  _The psychology of attitudes and attitude change_.  Sage.
  * Mäs and Flache (2013) Michael Mäs and Andreas Flache. 2013.  Differentiation without distancing. Explaining bi-polarization of opinions without negative influence.  _PloS one_ 8, 11 (2013), e74516.
  * Mason et al. (2007) Winter A Mason, Frederica R Conrey, and Eliot R Smith. 2007.  Situating social influence processes: Dynamic, multidirectional flows of influence within social networks.  _Personality and social psychology review_ 11, 3 (2007), 279–300.
  * Matt and Toni (2008) Paul-Amaury Matt and Francesca Toni. 2008.  A game-theoretic measure of argument strength for abstract argumentation. In _European Workshop on Logics in Artificial Intelligence_. Springer, 285–297.
  * McPherson et al. (2001) Miller McPherson, Lynn Smith-Lovin, and James M Cook. 2001.  Birds of a feather: Homophily in social networks.  _Annual review of sociology_ 27, 1 (2001), 415–444.
  * Meder et al. (2022) Björn Meder, Vincenzo Crupi, Jonathan D Nelson, et al. 2022\.  What Makes a Good Query?  _The Drive for Knowledge: The Science of Human Information Seeking_ (2022), 101.
  * Merdes et al. (2021) Christoph Merdes, Momme Von Sydow, and Ulrike Hahn. 2021.  Formal models of source reliability.  _Synthese_ 198, 23 (2021), 5773–5801.
  * Moore-Berg et al. (2020) Samantha L Moore-Berg, Boaz Hameiri, and Emile Bruneau. 2020.  The prime psychological suspects of toxic political polarization.  _Current Opinion in Behavioral Sciences_ 34 (2020), 199–204.
  * Moya et al. (2017) Ignacio Moya, Manuel Chica, Jose L Saez-Lozano, and Oscar Cordon. 2017.  An agent-based model for understanding the influence of the 11-M terrorist attacks on the 2004 Spanish elections.  _Knowledge-Based Systems_ 123 (2017), 200–216.
  * Myers and Lamm (1976) David G Myers and Helmut Lamm. 1976.  The group polarization phenomenon.  _Psychological bulletin_ 83, 4 (1976), 602.
  * Naveed et al. (2011) Nasir Naveed, Thomas Gottron, Jérôme Kunegis, and Arifah Che Alhadi. 2011.  Bad news travel fast: A content-based analysis of interestingness on twitter. In _Proceedings of the 3rd international web science conference_. 1–7.
  * Neapolitan (1990) Richard E Neapolitan. 1990.  _Probabilistic reasoning in expert systems: theory and algorithms_.  John Wiley & Sons, Inc.
  * Ng and Jordan (2002) Andrew Y Ng and Michael I Jordan. 2002.  On discriminative vs. generative classifiers: A comparison of logistic regression and naive bayes. In _Advances in neural information processing systems_. 841–848.
  * Nielsen and Parsons (2007) Søren Holbech Nielsen and Simon Parsons. 2007.  An application of formal argumentation: Fusing Bayesian networks in multi-agent systems.  _Artificial Intelligence_ 171, 10-15 (2007), 754–775.
  * Nussbaum (2011) E Michael Nussbaum. 2011.  Argumentation, dialogue theory, and probability modeling: Alternative frameworks for argumentation research in education.  _Educational Psychologist_ 46, 2 (2011), 84–106.
  * Oaksford and Chater (2009) Mike Oaksford and Nick Chater. 2009.  Précis of Bayesian rationality: The probabilistic approach to human reasoning.  _Behavioral and Brain Sciences_ 32, 1 (2009), 69–84.
  * Olsson (2005) Erik J Olsson. 2005.  _Against coherence: Truth, probability, and justification_.  Oxford University Press.
  * Olsson (2011) Erik J Olsson. 2011.  A simulation approach to veritistic social epistemology.  _Episteme_ 8, 2 (2011), 127–143.
  * Olsson (2013) Erik J Olsson. 2013.  A Bayesian simulation model of group deliberation and polarization.  In _Bayesian argumentation_. Springer, 113–133.
  * Olsson (2020) Erik J Olsson. 2020.  Why Bayesian agents polarize.  In _The Epistemology of Group Disagreement_. Routledge, 211–229.
  * Olsson and Schubert (2007) Erik J Olsson and Stefan Schubert. 2007.  Reliability conducive measures of coherence.  _Synthese_ 157 (2007), 297–308.
  * Olsson and Vallinder (2013) Erik J. Olsson and Aron Vallinder. 2013.  Norms of assertion and communication in social networks.  _Synthese_ 190, 13 (2013), 2557–2571.  https://doi.org/10.1007/s11229-013-0313-1
  * O’Connor and Weatherall (2018) Cailin O’Connor and James Owen Weatherall. 2018.  Scientific polarization.  _European Journal for Philosophy of Science_ 8, 3 (2018), 855–875.
  * Pallavicini et al. (2021) Josefine Pallavicini, Bjørn Hallsson, and Klemens Kappel. 2021.  Polarization in groups of Bayesian agents.  _Synthese_ 198 (2021), 1–55.
  * Pearl (1988) Judea Pearl. 1988.  _Probabilistic reasoning in intelligent systems: Networks of plausible inference_.  San Francisco, CA: Morgan Kauffman.
  * Pearl (2000) Judea Pearl. 2000.  _Causality: models, reasoning and inference_. Vol. 29.  Springer.
  * Peterson and Beach (1967) Cameron R Peterson and Lee Roy Beach. 1967.  Man as an intuitive statistician.  _Psychological bulletin_ 68, 1 (1967), 29.
  * Pettigrew (2016) Richard Pettigrew. 2016.  _Accuracy and the Laws of Credence_.  Oxford University Press.
  * Pinto and Pinto (2018) Manuela Fernández Pinto and Daniel Fernández Pinto. 2018.  Epistemic landscapes reloaded: An examination of agent-based models in social epistemology.  _Historical Social Research/Historische Sozialforschung_ 43, 1 (163 (2018), 48–71.
  * Prakken and Vreeswijk (2001) Henry Prakken and Gerard Vreeswijk. 2001.  Logics for defeasible argumentation.  _Handbook of philosophical logic_ (2001), 219–318.
  * Rahwan and Larson (2009) Iyad Rahwan and Kate Larson. 2009.  Argumentation and game theory.  _Argumentation in artificial intelligence_ (2009), 321–339.
  * Rahwan et al. (2003) Iyad Rahwan, Sarvapali D Ramchurn, Nicholas R Jennings, Peter McBurney, Simon Parsons, and Liz Sonenberg. 2003.  Argumentation-based negotiation.  _The Knowledge Engineering Review_ 18, 4 (2003), 343–375.
  * Rahwan and Simari (2009) Iyad Rahwan and Guillermo R Simari. 2009.  _Argumentation in artificial intelligence_. Vol. 47.  Springer.
  * Railsback et al. (2017) Steven Railsback, Daniel Ayllón, Uta Berger, Volker Grimm, Steven Lytinen, Colin Sheppard, and Jan Christoph Thiele. 2017.  Improving execution speed of models implemented in NetLogo.  (2017).
  * Ravasz and Barabási (2003) Erzsébet Ravasz and Albert-László Barabási. 2003.  Hierarchical organization in complex networks.  _Physical review E_ 67, 2 (2003), 026112.
  * Rescher (1977) Nicholas Rescher. 1977.  _Dialectics: A controversy-oriented approach to the theory of knowledge_.  Suny Press.
  * Roth et al. (2007) Bram Roth, Régis Riveret, Antonino Rotolo, and Guido Governatori. 2007.  Strategic argumentation: a game theoretical investigation. In _Proceedings of the 11th international conference on artificial intelligence and law_. 81–90.
  * Saha and Sen (2004) Sabyasachi Saha and Sandip Sen. 2004.  A Bayes net approach to argumentation based negotiation. In _International Workshop on Argumentation in Multi-Agent Systems_. Springer, 208–222.
  * Salecker et al. (2019) Jan Salecker, Marco Sciaini, Katrin M Meyer, and Kerstin Wiegand. 2019.  The nlrx r package: A next-generation framework for reproducible NetLogo model analyses.  _Methods in Ecology and Evolution_ 10, 11 (2019), 1854–1863.
  * Salini and Kenett (2009) Silvia Salini and Ron S Kenett. 2009.  Bayesian networks of customer satisfaction survey data.  _Journal of Applied Statistics_ 36, 11 (2009), 1177–1189.
  * Sanders and Baron (1977) Glenn S Sanders and Robert S Baron. 1977.  Is social comparison irrelevant for producing choice shifts?  _Journal of Experimental Social Psychology_ 13, 4 (1977), 303–314.
  * Scutari (2009) Marco Scutari. 2009.  Learning Bayesian networks with the bnlearn R package.  _arXiv preprint arXiv:0908.3817_ (2009).
  * Scutari (2010) Marco Scutari. 2010.  Learning Bayesian Networks with the bnlearn R Package.  _Journal of Statistical Software_ 35, 3 (2010), 1–22.  https://doi.org/10.18637/jss.v035.i03
  * Scutari and Denis (2021) Marco Scutari and Jean-Baptiste Denis. 2021.  _Bayesian networks: with examples in R_.  CRC press.
  * Sekara et al. (2016) Vedran Sekara, Arkadiusz Stopczynski, and Sune Lehmann. 2016.  Fundamental structures of dynamic social networks.  _Proceedings of the national academy of sciences_ 113, 36 (2016), 9977–9982.
  * Shafto et al. (2012) Patrick Shafto, Baxter Eaves, Daniel J Navarro, and Andrew Perfors. 2012.  Epistemic trust: Modeling children’s reasoning about others’ knowledge and intent.  _Developmental science_ 15, 3 (2012), 436–447.
  * Slivkins et al. (2019) Aleksandrs Slivkins et al. 2019\.  Introduction to multi-armed bandits.  _Foundations and Trends® in Machine Learning_ 12, 1-2 (2019), 1–286.
  * Sperber and Wilson (1986) Dan Sperber and Deirdre Wilson. 1986.  _Relevance: Communication and cognition_. Vol. 142.  Citeseer.
  * Stanovich and West (2000) KE Stanovich and RF West. 2000.  Individual differences in reasoning: Implications for the rationality debate?  _Behavioral and Brain Sciences_ 23, 5 (2000), 645–665.
  * Stoner (1968) James AF Stoner. 1968.  Risky and cautious shifts in group decisions: The influence of widely held values.  _Journal of Experimental Social Psychology_ 4, 4 (1968), 442–459.
  * Storey and O’Leary (2022) Veda C Storey and Daniel E O’Leary. 2022.  Text analysis of evolving emotions and sentiments in COVID-19 Twitter communication.  _Cognitive Computation_ (2022), 1–24.
  * Suh et al. (2010) Bongwon Suh, Lichan Hong, Peter Pirolli, and Ed H Chi. 2010.  Want to be retweeted? large scale analytics on factors impacting retweet in twitter network. In _2010 IEEE second international conference on social computing_. IEEE, 177–184.
  * Sunstein (2018) Cass Sunstein. 2018.  _# Republic: Divided democracy in the age of social media_.  Princeton university press.
  * Ten Thij et al. (2014) Marijn Ten Thij, Tanneke Ouboter, Daniël Worm, Nelly Litvak, Hans van den Berg, and Sandjai Bhulai. 2014.  Modelling of trends in twitter using retweet graph dynamics. In _Algorithms and Models for the Web Graph: 11th International Workshop, WAW 2014, Beijing, China, December 17-18, 2014, Proceedings 11_. Springer, 132–147.
  * Thiele and Grimm (2010) Jan C Thiele and Volker Grimm. 2010.  NetLogo meets R: Linking agent-based models with a toolbox for their analysis.  _Environmental Modelling & Software_ 25, 8 (2010), 972–974.
  * Thiele et al. (2012) Jan C Thiele, Winfried Kurth, and Volker Grimm. 2012.  Agent-based modelling: Tools for linking NetLogo and R.  _Journal of Artificial Societies and Social Simulation_ 15, 3 (2012), 8.
  * Timmer et al. (2015) Sjoerd T Timmer, John-Jules Ch Meyer, Henry Prakken, Silja Renooij, and Bart Verheij. 2015.  Explaining Bayesian networks using argumentation. In _Symbolic and Quantitative Approaches to Reasoning with Uncertainty: 13th European Conference, ECSQARU 2015, Compiègne, France, July 15-17, 2015. Proceedings 13_. Springer, 83–92.
  * Tisue and Wilensky (2004) Seth Tisue and Uri Wilensky. 2004.  Netlogo: A simple environment for modeling complexity. In _International conference on complex systems_ , Vol. 21. Citeseer, 16–21.
  * Törnberg (2018) Petter Törnberg. 2018.  Echo chambers and viral misinformation: Modeling fake news as complex contagion.  _PLoS one_ 13, 9 (2018), e0203958.
  * Toulmin (2003) Stephen E Toulmin. 1958/2003.  _The uses of argument_.  Cambridge university press.
  * Van der Hoek and Wooldridge (2008) Wiebe Van der Hoek and Michael Wooldridge. 2008.  Multi-agent systems.  _Foundations of Artificial Intelligence_ 3 (2008), 887–928.
  * Van Eemeren et al. (2004) Frans H Van Eemeren, Robert Grootendorst, and Rob Grootendorst. 2004.  _A systematic theory of argumentation: The pragma-dialectical approach_.  Cambridge University Press.
  * Van Eemeren et al. (2013) Frans H Van Eemeren, Rob Grootendorst, Ralph H Johnson, Christian Plantin, and Charles A Willard. 2013.  _Fundamentals of argumentation theory: A handbook of historical backgrounds and contemporary developments_.  Routledge.
  * Van Eemeren and Houtlosser (2003) Frans H Van Eemeren and Peter Houtlosser. 2003.  The development of the pragma-dialectical approach to argumentation.  _Argumentation_ 17, 4 (2003), 387–403.
  * Van Eemeren et al. (2015) Frans H Van Eemeren, Sally Jackson, and Scott Jacobs. 2015.  Argumentation.  In _Argumentation Library_. Springer, 3–25.
  * Vasconcelos et al. (2019) Vítor V Vasconcelos, Simon A Levin, and Flávio L Pinheiro. 2019.  Consensus and polarization in competing complex contagion processes.  _Journal of the Royal Society Interface_ 16, 155 (2019), 20190196.
  * Vinokur and Burnstein (1978) Amiram Vinokur and Eugene Burnstein. 1978.  Depolarization of attitudes in groups.  _Journal of Personality and Social Psychology_ 36, 8 (1978), 872.
  * Visser et al. (2020) Jacky Visser, John Lawrence, and Chris Reed. 2020.  Reason-checking fake news.  _Commun. ACM_ 63, 11 (2020), 38–40.
  * Von Aufschnaiter et al. (2008) Claudia Von Aufschnaiter, Sibel Erduran, Jonathan Osborne, and Shirley Simon. 2008.  Arguing to learn and learning to argue: Case studies of how students’ argumentation relates to their scientific knowledge.  _Journal of Research in Science Teaching: The Official Journal of the National Association for Research in Science Teaching_ 45, 1 (2008), 101–131.
  * Vreeswijk (2004) Gerard AW Vreeswijk. 2004.  Argumentation in Bayesian belief networks. In _International Workshop on Argumentation in Multi-Agent Systems_. Springer, 111–129.
  * Walton (2004) Douglas Walton. 2004.  _Relevance in argumentation_.  Routledge.
  * Walton (2009) Douglas Walton. 2009.  Argumentation theory: A very short introduction.  In _Argumentation in artificial intelligence_. Springer, 1–22.
  * Walton and Godden (2007) Douglas Walton and David M Godden. 2007.  Informal logic and the dialectical approach to argument.  _Reason reclaimed_ (2007), 3–17.
  * Walton et al. (2008) Douglas Walton, Christopher Reed, and Fabrizio Macagno. 2008.  _Argumentation schemes_.  Cambridge University Press.
  * Walton (1998) Douglas N Walton. 1998.  _The new dialectic: Conversational contexts of argument_.  University of Toronto Press.
  * Wang et al. (2022) Sheng-Wen Wang, Chung-Yuan Huang, and Chuen-Tsai Sun. 2022.  Multiagent Diffusion and Opinion Dynamics Model Interaction Effects on Controversial Products.  _IEEE Access_ 10 (2022), 115252–115270.
  * Watts and Strogatz (1998) Duncan J Watts and Steven H Strogatz. 1998.  Collective dynamics of ‘small-world’networks.  _Nature_ 393, 6684 (1998), 440.
  * Weisberg and Muldoon (2009) Michael Weisberg and Ryan Muldoon. 2009.  Epistemic landscapes and the division of cognitive labor.  _Philosophy of science_ 76, 2 (2009), 225–252.
  * White (2019) Roger White. 2019.  Epistemic permissiveness.  _Contemporary Epistemology: An Anthology_ (2019), 267–276.
  * Wilensky (1999) Uri Wilensky. 1999.  _NetLogo_.  http://ccl.northwestern.edu/netlogo/. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL.  http://ccl.northwestern.edu/netlogo/
  * Wilensky (2005) U Wilensky. 2005.  NetLogo small worlds model.  _Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL_ (2005).
  * Wilensky and Rand (2015) Uri Wilensky and William Rand. 2015.  _An introduction to agent-based modeling: modeling natural, social, and engineered complex systems with NetLogo_.  Mit Press.
  * Woods ([n. d.]) J Woods. [n. d.].  _Irvine, A.–Walton, D. 2004. Argument: Critical Thinking, Logic and the Fallacies_.  Toronto, Pearson-PrenticeHall.
  * Xu et al. (2023) Han Xu, Xiao Xiao, Minghua Xu, and Bang Wang. 2023.  How Does Persuasion Happen? A Novel Bounded Confidence Opinion Dynamics Model Based on Social Judgment Theory.  _IEEE Systems Journal_ 17, 1 (2023), 708–719.  https://doi.org/10.1109/JSYST.2022.3205724
  * Youngblood (2020) Mason Youngblood. 2020.  Extremist ideology as a complex contagion: the spread of far-right radicalization in the United States between 2005 and 2017.  _Humanities and Social Sciences Communications_ 7, 1 (2020), 1–10.
  * Zenker (2012) Frank Zenker. 2012.  Bayesian argumentation: The practical side of probability.  In _Bayesian argumentation: The practical side of probability_. Springer, 1–11.
  * Zhao et al. (2011) Wayne Xin Zhao, Jing Jiang, Jianshu Weng, Jing He, Ee-Peng Lim, Hongfei Yan, and Xiaoming Li. 2011.  Comparing twitter and traditional media using topic models. In _Advances in Information Retrieval: 33rd European Conference on IR Research, ECIR 2011, Dublin, Ireland, April 18-21, 2011. Proceedings 33_. Springer, 338–349.
  * Zollman (2007) Kevin JS Zollman. 2007.  The communication structure of epistemic communities.  _Philosophy of Science_ 74, 5 (2007), 574–587.
  * Zollman (2010) Kevin JS Zollman. 2010.  The epistemic benefit of transient diversity.  _Erkenntnis_ 72, 1 (2010), 17–35.
  * Zukerman et al. (1998) Ingrid Zukerman, Richard McConachy, and Kevin B. Korb. 1998.  Bayesian reasoning in an abductive mechanism for argument generation and analysis. In _AAAI/IAAI_. 833–838.
  * Zukerman et al. (1999) Ingrid Zukerman, Richard McConachy, Kevin B. Korb, and Deborah Pickett. 1999.  Exploratory interaction with a Bayesian argumentation system. In _IJCAI_. 1294–1299.

Entity | Variable | Value range/Type | Description
---|---|---|---
World | causal-structure | Bayesian network | Determines relation between evidence and hypothesis,
|  |  | used by agents and world model to compute probabilities.
| hypothesis | Variable |  The hypothesis proposition (truth values: true or false).
| hypothesis-probability | $0-1$ | Probability that hypothesis node is true.
| evidence-propositions | List |  The evidence propositions (truth values: true or false).
| evidence-probabilities-list | List | The marginal probabilities of the individual pieces of evidence,
|  |  | given the truth/falsity of the hypothesis.
| evidence-list | List | Stores truth values of evidence nodes.
| optimal-posterior | $0-1$ | Stores the probability of the hypothesis conditional on the truth
|  |  |  values of all pieces of evidence (i.e., evidence-list).
Agents | agent-evidence-list | List | Stores truth values of evidence encountered by agents.
| agent-belief | 0 - 1 | Belief in the hypothesis.
| update-list | List | Stores update magnitude on evidence reception.
| recency-list | List | Basis for the recency sharing rule.
| chattiness | $0-1$ | Probability of communication.
| curiosity | $0-1$ | Probability of inquiry (evidence gathering).
| conviction-threshold | $0-1$ | Co-determines conviction in claim agent requires to join debate.
| initial-belief | $0-1$ | Stores the unconditional prior belief in the hypothesis.
| max-draws | Integer | Determines the maximal number of evidence collections.
| initial-draws | Integer | Number of evidence collections performed before the model run.
| share | Chooser | Determines agents’ communication rule:
|  |  | Selective, Random, Recent.
Network | number-of-agents | 1 - 1000 | Determines the size of the network.
| social-network | Chooser | Selects network type: Wheel, Complete, Small-world, Null.
| rewiring-probability | $0-1$ | Co-determines small-world network.
| k | $0-10$ | Co-determines small-world network.
Simulation |  |  |
(variables in the user interface) | ticks | Integer | Counts discrete time steps (NetLogo primitive).
| setup | Button | Initializes a new simulation run.
| go | Button | Starts a model run.
| reset-world-? | On/Off |  Determines if world model is reset when setup is pressed.
| reset-social-network-? | On/Off |  Determines if the social network is reset when setup is pressed.
| reset-agents-initial-evidence-? | On/Off | Determines if the initial evidence
|  |  |  of agents is reset when setup is pressed.
| max-ticks | Integer | Determines the length of the model run.
| stop-at-max-ticks-? | On/Off |  Determines if simulation stops when ticks= max-ticks.
| stop-at-full-information-? | On/Off | Determines if simulation stops when all agents know all
|  |  |  evidence (i.e., agent-evidence-list= evidence-list).
| show-me-? | On/Off | Optionally prints the agents’ protocols in NetLogo’s monitor.
| plotting-type | Chooser |  Values: {$uttered$, $sent-to$, $received-as-novel$}.
|  |  | Determines the type of argument graph plotted in the interface.
| approximation | Chooser |  Values: {seed, repeater, received-as-novel}.
|  |  |  Type of approximation used when performing any cpquery().
| seed | Integer |  Input for set-seed() used in the seed approximation.
| repeater | Integer |  Determines the repetitions used by the $repeater$ approximation.
| evidence-nodes |  Output (List) | Outputs the chosen evidence node from the Bayesian network.
| hypothesis-node | Output | Outputs the chosen hypothesis node from the Bayesian network.
| causal-structure | Chooser |  Takes as values the preset BNs and custom.
| path-to-custom-DAG | Input |  File path to bnlearn file (causal-structure= $custom$).
| evidence-nodes-custom-DAG |  Input (List) | Determines evidence nodes in customized BN.
| hypothesis-node-custom-DAG |  Input (List) | Determines hypothesis node in customized BN.
| custom-evidence-and-hypothesis-? | On/Off | Activates custom evidence and hypothesis nodes
|  |  | (overriding presets).
Table 2. Full list of model parameters implemented in NormAN version 1.0.

##  Appendix A ODD Protocol (Full)

This section follows ‘The ODD protocol: a review and first update’ (Grimm et
al., 2010).

###  A.1. Purpose

The purpose of the NormAN 1.0 model is to introduce a flexible framework for
modelling argument exchange across social networks. NormAN 1.0 is an agent-
based model in which agents discuss a central hypothesis by exchanging
distinct pieces of evidence (i.e., argumentation). It consists of a world
model that includes the hypothesis (the claim at issue), evidence, and the
causal structure of the world. It consists further of agents within a social
network. And it consists of rules that govern the deliberation dynamics.
NormAN was developed to meet the following requirements:

  * •

Capture a ground truth world

  * •

Represent evidence as linked to the ground truth world, i.e., a principled
evidence distribution

  * •

Agents who are rational with respect to belief formation

  * •

Facilitation of easy extension and usage

The questions that can be addressed with the NormAN framework are diverse and
include issues such as polarization and the emergence of consensus, argument
dynamics across social networks, the truth-tracking potential of deliberative
bodies and many more.

###  A.2. Entities, State Variables and Scales

The model features three different kinds of entities: agents, the world model,
which specifies the deliberation ‘environment’, and the social network, which
specifies the social environment. A list of the specific state variables can
be found in Table 2. We divide this section into three subsections: the world,
the agents, and the networks.

####  A.2.1. The World

The world model consists of a Bayesian network. Formally, a Bayesian Network
(BN) $B=\langle G,P\rangle$ is a directed acyclic graph $G=\langle
V,E\rangle$, with a set of nodes (variables) $V$ and edges $E$, and a joint
probability distribution $P$ over $V$ such that $G$ satisfies the parental
Markov condition together with $P$. Each node $\in V$ has a set of possible
truth values. (In the networks we deal with in this paper, most nodes are
Boolean. So their truth values are true and false.) NormAN 1.0 provides a
number of BNs (some well-known, others novel) as presets. They are described
in detail in Section B of this Appendix.

In this network, the modeller identifies one variable as the hypothesis, or H
for short (e.g., ‘lung cancer’ in the well-known ‘asia’ network), and chooses
a subset of the other nodes as evidence nodes
$\texttt{E}_{1},\texttt{E}_{2},\ldots,\texttt{E}_{n}$. In NormAN 1.0, the
evidence nodes and the hypothesis node must be Boolean—although other nodes in
the BN may be many-valued. NormAN assigns a truth value to the hypothesis
(manually or probabilistically). This value is used to determine the values of
the evidence nodes: The marginal conditional probability of each evidence
(conditional on the value of the hypothesis node) is calculated; and on
initialisation, this chance stochastically determines the truth value of the
evidence. For example, if it is true that the patient has lung cancer, and
$P(bronchitis|lungcancer)=0.2$, then there is a 20% chance that the value of
$bronchitis$ is true. If the evidence nodes are Boolean, this procedure yields
a chain of evidence in the form of $\neg E_{1},E_{2},E_{3},\ldots,\neg E_{n}$
(where $E_{i}$ denotes ‘$\texttt{E}_{i}$ is true’, and $\neg E_{i}$ denotes
‘$\texttt{E}_{i}$’ is false). Whenever an agent encounters a piece of
evidence, they receive information about its truth value. Therefore, in the
remainder of this model description, we will speak of agents receiving pieces
of evidence such as $\neg E_{3}$.

These features are captured by the following variables: causal-structure
determines the chosen BN, evidence-list stores the list of the evidence nodes’
truth values. The two are mediated by evidence-probabilities-list, which
stores the marginal probabilities of the evidence given the actual value of
the hypothesis (which is stochastically determined by hypothesis-probability).
Finally, the world model computes and stores the so-called ‘optimal
posterior’, the posterior degree of belief an agent would compute if they
maintained causal-structure and knew all the evidence (formally, this is the
case for an agent whenever their agent-evidence-list is the same list as
evidence-list). In model runs of NormAN, the convergence of agent-belief
variables to optimal-posterior is a common result of certain sharing rules.

####  A.2.2. The Agents

Each agent is characterised by (i) their degree of belief in the hypothesis
(variable agent-belief), (ii) their representation of the causal structure of
the world, and (iii) a list of evidence they have already encountered
(variable agent-evidence-list). First, each agent assigns a degree of belief
to the hypothesis (agent-belief). Second, they use a Bayesian network that
connects the evidence and the hypothesis and acts as their representation of
the world. Third, they store the truth values of all encountered evidence in
their agent-evidence-list. These three aspects are related in a dynamic,
straightforward way. Suppose an agent $A$ stores the following chain of
evidence at time $t$: $\texttt{agent-evidence-list}_{A}^{t}=\\{E_{1},\neg
E_{3}\\}$.131313Technically, this is implemented in the NormAN code by a
personalised list of values as long as the list of evidence of the world
model. The agent’s agent-evidence-list stores the truth value of evidence they
have already encountered, leaving empty list items for evidence they have not
yet encountered. For example, if the world’s evidence list is
$\\{E_{1},E_{2},\neg E_{3},E_{4}\\}$, agent $A$’s agent-evidence-list list
could be $\\{E_{1},-,\neg E_{3},-\\}$. In that case, they will use their
Bayesian network to compute $\texttt{agent-belief}_{A}^{t}=P(H|E_{1},\neg
E_{3})$. Whenever agents encounter a new piece of evidence (e.g., $E_{2}$),
they update their degree of belief (e.g., $\texttt{agent-
belief}_{A}^{t+1}=P(H|E_{1},E_{2},\neg E_{3})$). We call this updating
procedure of agent-belief through conditionalization on the agents’ agent-
evidence-list ‘COMPUTE-POSTERIOR’. When the agent’s agent-evidence-list is
empty, that is, when they have not yet encountered any evidence, their agent-
belief is simply the base rate (marginal probability) of the hypothesis node
in their BN. This prior value is stored in an agent-variable initial-belief.

In the first version of NormAN presented here, we assume that each agent’s
Bayesian network simply corresponds to the world model’s network, causal-
structure: that is, we assume that agents represent the world correctly.
Furthermore, three agent variables characterize agents in their deliberation
procedure: their chattiness, their curiosity and their conviction-threshold.
The nature and function of these variables are explained in the next
subsection (A.3), for they govern the model’s dynamics.

####  A.2.3. The Social Network

The model places number-of-agents (slider in the interface) agents on a grid
and then specifies who is connected to whom via undirected communication
links. Agents can only communicate with their link neighbours. NormAN provides
four different network structures that the modeller can select before
initialization: complete network, ‘wheel’ (cf. (Zollman, 2010; Frey and
Šešelja, 2020)), a ‘null’ network (i.e., all agents are disconnected) and
small-world networks (also known as Watts-Strogatz networks (Watts and
Strogatz, 1998), implemented in NetLogo using (Wilensky, 2005)). Which network
is used is determined by the variable social-network (chooser in the
interface). The specific form of the Watts-Strogatz networks is
(stochastically) determined by two variables: rewiring-probability and k,
which are determined by the modeller.

Figure 9. Flowchart for the update performed by each agent $i$ and induced
updates for out-link-neighbours $j$ called by $i$ during sharing.

###  A.3. Process Overview and Scheduling

The model evolves in discrete time steps. In each step, agents have the
opportunity to inquire, that is, to collect evidence and to
communicate/receive communication from their link neighbours. Collecting
evidence facilitates the flow of information into the network, and
communication facilitates the flow of information through the network.
Whenever an agent learns a new piece of evidence, they re-compute their belief
(COMPUTE-POSTERIOR). The dynamics of the model are entirely determined by the
behaviour of the agents. Simply put, each simulation step has the following
schedule:

  1. (1)

Collect evidence: The agents collect a new piece of evidence.

  2. (2)

Communication: The agents share a piece of evidence they have already
encountered with their link neighbours.

However, agents only collect and only communicate if certain conditions are
met; and communication may be determined by different rules. This subsection
explains the agents’ schedule in detail.

First, in each round, agents may inquire by collecting evidence. To do so,
they add the truth value of one random evidence node from evidence-list, which
they have not yet encountered, to their agent-evidence-list.141414As an
example, suppose that at time $t$, agent $A$ stores the truth values
$\texttt{agent-evidence-list}_{A}^{t}=\\{E_{1},\neg E_{3}\\}$. Through
inquiry, they may find that $E_{2}$ is indeed true, thus extending their list
to $\texttt{agent-evidence-list}_{A}^{t+1}=\\{E_{1},E_{2},\neg E_{3}\\}$.
Inquiry is therefore modelled by ‘drawing’ from the world model’s evidence-
list. Two agent variables govern inquiry. First, agents have a fixed maximum
number of inquiries, max-draws: they can only collect a limited amount of
times. Hence, if max-draws is smaller than the number of evidence, agents in
NormAN have limited access to the evidence: if they do not communicate with
their peers, they will not learn the entirety of the evidence on their own.
Second, agents have a curiosity score (between 0 and 1), which determines the
probability they will inquire in any given round. The values of curiosity and
max-draws are currently determined globally (i.e. they are the same for each
agent). Agents only draw from the evidence-list if they are curious
(stochastically determined), and if they still have draws. Meeting these two
conditions is noted as the condition ‘SHOULD-INVESTIGATE-?’ in the flowchart
(9). We call the triggered collection procedure COLLECT-EVIDENCE.

Second, in each round, agents may communicate and receive evidence via
communication. In this first version of NormAN, communication is modelled via
a simple transmission (‘passing the parcel’) mechanism: the communicating
agent $A$ chooses which piece of evidence (i.e., which truth value) to
transmit to their link neighbours. If the recipient has not yet heard this
piece of evidence, they add it to their agent-evidence-list and compute a new
agent-belief. If they have heard it, their agent-evidence-list list remains
unchanged. Hence, NormAN’s agents recognize indexed, distinct pieces of
evidence and never ‘double count’. 151515For instance, if $A$’s evidence list
is $\texttt{agent-evidence-list}_{A}^{i}=\\{E_{1},\neg E_{3}\\}$, and $B$’s
evidence list is $\texttt{agent-evidence-list}_{B}^{i}=\\{\neg E_{3}\\}$, then
$A$’s sharing $E_{1}$ will enrich agent $B$’s evidence list to $\texttt{agent-
evidence-list}_{B}^{i+1}=\\{E_{1},\neg E_{3}\\}$. Had $A$ chosen $\neg E_{3}$,
$B$’s list would have remained unchanged; hence agents recognize evidence, and
never ‘double count’ a piece.

Although this mechanism of ‘passing parcels’ is simple in that it avoids the
complexity of testimony, it can still be used to capture distinct, complex
styles of communication. This is because it is non-trivial what evidence the
agent chooses to transmit. In this first version of NormAN, three sharing
rules are implemented:

  * •

RANDOM-SHARE: Communicating agents share a random piece of evidence from their
agent-evidence-list.

  * •

RECENCT-SHARE: Communicating agents (likely) share the piece of evidence they
most recently encountered.

  * •

IMPACT-SHARE: Communicating agents share the piece of evidence that they hold
to be the best piece of evidence in favour of their current positions.

Although RANDOM-SHARE needs no further elaboration, RECENCT-SHARE and IMPACT-
SHARE do. The recency rule (loosely inspired by Maes and Flache’s model of bi-
polarization (Mäs and Flache, 2013)) follows this procedure: agents use an
ordered recency-list that functions as a stack. It stores the order in which
evidence has last been encountered, pushing novel pieces of evidence and
popping previously heard ones. For instance, agent $A$ might entertain the
recency list $\texttt{{recency-list}}_{A}^{t}=\\{E_{3},E_{4},E_{1}\\}$. If
they now hear a new piece of evidence, e.g., $E_{5}$, they extend this list to
$\texttt{{recency-list}}_{A}^{t+1}=\\{E_{3},E_{4},E_{1},E_{5}\\}$. If they
have already accepted a piece of evidence, encountering it again will bring
that piece to the top of the list. For instance, if $A$ encounters $E_{3}$
while entertaining $\texttt{{recency-list}}_{A}^{t}=\\{E_{3},E_{4},E_{1}\\}$,
their new recency list will be $\texttt{{recency-
list}}_{A}^{t+1}=\\{E_{4},E_{1},E_{3}\\}$. The order of the list is crucial
because agents will preferably share what they last encountered (i.e., the
last list item). In NormAN 1.0, this tendency is encoded stochastically: with
a probability of $x$ (in the base model set to $x=0.9$), communicating agents
will choose to share the last item of their recency-list. With a probability
of $1-x$, they will share a random other piece from their list.

The impact-sharing rule captures the following rationale: agents share what
they currently hold to be their best piece of evidence. By best, we mean the
piece of evidence that most supports the agent’s current position on the
hypothesis — the strongest piece. To this end, NormAN agents track the
magnitude of the belief update—the impact— that each piece of evidence
induced. Hence, for each piece of evidence $E_{i}$ received, agents store the
following update magnitude $\in[-1,1]$: $P(H|E_{i})-\texttt{initial-belief}$
(where initial-belief is the agent’s prior belief before receiving any
evidence). This impact is stored in each agent’s own update-list. If the agent
believes the hypothesis to a higher degree than their initial-belief they
choose to communicate the piece of evidence with the highest update value (and
they choose the lowest if they believe the hypothesis to a lower degree). That
is, agents will share evidence for the direction in which their own agent-
belief has been moved over the course of the simulation.

Which sharing rule is used is determined by a global variable share which
takes one of the values
$\\{\textit{random},\textit{recent},\textit{impact}\\}$ (determined by the
modeller in the interface). The value fixes every agent’s sharing rule (there
are no mixed populations). Whenever an agent shares a piece of evidence, they
transmit it to the entirety of their link-neighbours, as determined by the
social network.

Agents communicate (using one of the above rules) given three conditions are
met (SHOULD-SHARE? in the flowchart 9):

  1. (1)

Trivially, agents may only share a piece of evidence if they have previously
encountered one (i.e., agent-evidence-list must not be empty).

  2. (2)

The global value conviction-threshold $\in[0,1]$ determines when an agent-
belief is sufficiently distinct from their initial-belief that they choose to
communicate. The conviction threshold is a percentage value that serves as a
cut-off point for when an agent’s belief departs sufficiently from the
agnostic (pre-evidence) prior (initial-belief) for them to jump into the
discussion. Specifically, passing the threshold requires an agent’s belief to
fulfil the following conditions: either $\texttt{agent-
belief}<(\texttt{initial-belief}-\texttt{initial-
belief}\cdot\texttt{conviction-threshold})$ (i.e., their belief passes below
the lower bound) or $\texttt{agent-belief}>(\texttt{initial-
belief}+(1-\texttt{initial-belief})*\texttt{conviction-threshold})$ (i.e.,
their belief surpasses the upper bound). When either of these conditions is
met, we deem an agent-belief to pass the threshold. Note that if conviction-
threshold is set to $0$, this condition is trivially met in most cases
(specifically, whenever agent-belief $\not=$ initial-belief).

  3. (3)

The global variable chattiness $\in[0,1]$ encodes any agent’s chance that they
will communicate with their link-neighbours on a given round.

The precise protocol is summarized in the following pseudo-code.

### Pseudo-Code

Typesetting for data types:

  * •

variables and lists

  * •

values

  * •

Boolean values (true/false)

  * •

PROCEDURES

  * •

control flow and logic operators

  * •

Agent-index $i$ for variables, e.g. shared-piece($i$) is omitted when there is
no ambiguity.

Special Primitives:

  * •

RANDOM-FLOAT($input$): function that outputs a random real number smaller than
$input$ (number).

  * •

ENQUEUE(value;list): puts value at end (last position) of list.

  * •

DEQUEUE(list): outputs last item from list.

  * •

REMOVE(value;list): removes all occurrences of value from list.

  * •

INSERT(value; list; $index$): inserts value to list at position $index$.

  * •

POSITION(value; list) outputs first such $index$ of value in list.

  * •

POSTERIOR(prior; evidence)) outputs the posterior probability
$P(h|e_{1},...,e_{n})$ for prior (probability value) $h$ and evidence (list)
$e_{1},...,e_{n}$.

After initialising the model (specifying parameter settings for agents and
loading in the selected DAG), the main procedure (GO) runs until the stopping
condition (when every agent has seen each piece of evidence) is satisfied. The
general procedure looks like this:

  * ——————————————————

  * NormAN: GO

  * while STOPPING-CONDITION = _false_

    * for $i\in$ [0; number-of-agents]

      * UPDATE-AGENT($i$)

    * end for

    * for $i\in$ [0; number-of-agents]

      * COMMUNICATE($i$)

    * end for

  * end while

  * End NormAN: GO

  * ——————————————————

The corresponding simple flow diagram is:

Figure 10. Flowchart for the global GO-Procedure.

We next break down the Updating procedure for each agent (explained in
pseudocode and visualized as a flow chart in Fig. 9 above):

  * ——————————————————

  * Algorithm 0.I: UPDATE-AGENT($i$)

    * SHOULD-INQUIRE?($i$)

    * if SHOULD-INQUIRE?($i$) = true, then

      * COLLECT-EVIDENCE($i$)

      * COMPUTE-POSTERIOR($i$)

    * end if

  * End Algorithm 0.I: UPDATE-AGENT($i$)

  * ——————————————————

  * ——————————————————

  * Algorithm 0.II: COMMUNICATE($i$)

  * if SHOULD-SHARE?($i$) then

    * if sharing = _random_ then

      * shared-piece($i$) $\leftarrow$ RANDOM-SHARE($i$)

    * else if sharing = _impact_ then

      * shared-piece($i$) $\leftarrow$ IMPACT-SHARE($i$)

    * else if sharing = _recency_ then

      * shared-piece($i$) $\leftarrow$ RECENCY-SHARE($i$)

    * end if

    * for $j\in$ outlink-neighbors

      * RECEIVE-SHARE($j$)

      * if shared-piece($i$) $\not\in$ agent-evidence-list($j$) then

      * COMPUTE-POSTERIOR($j$)

      * end if

    * end for

  * end if

  * End Algorithm 0.II: COMMUNICATE($i$)

  * ——————————————————

  * ——————————————————

  * Algorithm 1: SHOULD-INQUIRE?($i$)

    * if draws ¿ 0 and curiosity ¿ RANDOM-FLOAT(1) and —agent-evidence-list— ¡ —evidence-list— then

      * output true

    * else

      * output false

    * end if

  * End Algorithm 1: SHOULD-INQUIRE?($i$)

  * ——————————————————

  * ——————————————————

  * Algorithm 2: COLLECT-EVIDENCE($i$)

    * $e\leftarrow$ RANDOM-SELECT(1, evidence-list)

    * if $e\not\in$ agent-evidence-list then

      * agent-evidence-list $\leftarrow$ INSERT($e$; agent-evidence-list; POSITION($e$; evidence-list))

  * End Algorithm 2: COLLECT-EVIDENCE($i$)

  * ——————————————————

  * ——————————————————

  * Algorithm 3: COMPUTE-POSTERIOR($i$)

    * singular $\leftarrow$ POSTERIOR(initial-belief; $e$)

    * agent-belief $\leftarrow$ POSTERIOR(agent-belief;agent-evidence-list)

    * update $\leftarrow$ singular $-$ initial-belief

    * update-list $\leftarrow$ ENQUEUE(update; update-list)

  * End Algorithm 3: COMPUTE-POSTERIOR($i$)

  * ——————————————————

  * ——————————————————

  * Algorithm 4: SHOULD-SHARE?($i$)

  * —agent-evidence-list— ¿ 0 and chattiness ¿ RANDOM-FLOAT(1) and agent-belief $\in$ conviction then

    * output true

  * else

    * output false

  * end if

  * End Algorithm 4: SHOULD-SHARE?($i$)

  * ——————————————————

  * ——————————————————

  * Algorithm 5a: RANDOM-SHARE($i$)

    * shared-piece $\leftarrow$ RANDOM-SELECT(1,agent-evidence-list)

  * End Algorithm 5a: RANDOM-SHARE($i$)

  * ——————————————————

  * ——————————————————

  * Algorithm 5b: IMPACT-SHARE($i$)

    * if agent-belief ¿ initial-belief then

      * shared-piece $\leftarrow$ $\max$ update-list

else

      * shared-piece $\leftarrow$ $\min$ update-list

    * end if

  * End Algorithm 5b: IMPACT-SHARE($i$)

  * ——————————————————

  * ——————————————————

  * Algorithm 5c: RECENCY-SHARE($i$)

    * shared-piece $\leftarrow$ DEQUEUE(recency-list)

  * End Algorithm 5c: RECENCY-SHARE($i$)

  * ——————————————————

  * ——————————————————

  * Algorithm 6: RECEIVE-SHARE($j$)

    * recency-list($j$) $\leftarrow$ REMOVE(recency-list($j$); shared-piece($i$))

    * recency-list($j$) $\leftarrow$ ENQUEUE(shared-piece($i$); recency-list($j$))

    * agent-evidence-list($j$) $\leftarrow$ INSERT(agent-evidence-list($j$); shared-piece($i$); POSITION(shared-piece($i$); evidence))

  * End Algorithm 6: RECEIVE-SHARE($j$)

  * ——————————————————

###  A.4. Design Concepts

####  A.4.1. Basic Principles

The NormAN 1.0 model introduces a new framework for modelling the exchange of
multiple arguments across agents in a social network: Normative Argument
Exchange across Networks. The model is composed of two submodels (elaborated
in section ‘Sub-Models’ A.7). The way agents update their beliefs with respect
to new evidence is handled by a purely Bayesian framework. This encompasses
the revisions of the agents’ agent-belief and update-list. Similarly, the
values of the global variables evidence-list and optimal-posterior are
computed based on Bayesian conditionalization. The values of these variables
then co-determine the agents’ behaviour.

All other factors co-determining agent behaviour, that is, inquiry and
sharing, are handled by a second submodel, which encompasses the social-
network and the agents’ sharing and inquiring behaviour (e.g. max-draws and
the share variable). These features fall outside the purely Bayesian
framework. Their design has either been taken from (or inspired by) the
literature or constitutes an initial suggestion on our part for the purposes
of exploration in NormAN. Among the former (derived from the literature) we
count the network structures embedded via social-network (the Watts-Strogatz
network (Watts and Strogatz, 1998), the wheel network (Zollman, 2007)), and
the recency sharing rule embedded in share (loosely inspired by Maes and
Flache’s model of bi-polarization (Mäs and Flache, 2013)).

####  A.4.2. Emergence

The behaviour of NormAN is determined by changes in the agents’ doxastic
states, that is, their agent-beliefs and their agent-evidence-list. As the
case studies C.1 and C.2 show, this means that the main emergence of interest
is the trajectory of the group’s beliefs. Since NormAN is a flexible
framework, this paper does seek to demarcate the set of possibly emergent
phenomena; rather, its case studies showcase that known social phenomena can
be captured by the model. In particular, the case studies capture the shift to
extremity, belief divergence, polarization and convergence to consensus (all
measured via agent-beliefs). Additionally, NormAN provides insights into the
relative sharing frequencies of arguments (individual pieces of evidence drawn
from evidence-list) across the social network.

####  A.4.3. Sensing

Agents have no direct access to the truth value of the hypothesis node and
only limited access to evidence-list. Agents fill in their own agent-evidence-
list as they encounter evidence through inquiry or communication.

Agents have full access to their own variables determining their doxastic
states, that is agent-evidence-list, agent-belief, update-list and recency-
list, which form the basis for the agents’ communications. However, agents
have no insights into their link-neighbours’ variables. Hence, in NormAN 1.0,
the content of communication is exclusively governed by the agent variables of
the sender, and sharing is not tailored to the recipients’ current beliefs or
evidence lists (i.e., no strategic communication).

####  A.4.4. Interaction

Agents interact by sharing pieces of evidence which they store in their agent-
evidence-list lists, as described in the process overview (A.3).

####  A.4.5. Stochasticity

Many processes and variables are subject to stochasticity. In the world model,
the truth of the hypothesis is determined stochastically via hypothesis-
probability, and the truth values of each piece of evidence (stored in
evidence-list) are stochastically determined by their marginal probabilities
(determined by the Bayesian network and stored in evidence-probabilities-
list). For the social network, the creation and form of the Watts-Strogatz
social network are subject to stochasticity ((Watts and Strogatz, 1998)).
Lastly, the agent’s behaviour and the deliberation dynamics are also subject
to randomness: curiosity determines the chance that an agent will inquire. The
variable chattiness determines the probability of sharing a piece of evidence.

###  A.5. Initialisation

The initialisation process consists of three steps: (1) The world model, (2)
the social network and (3) the agents are initialised. Each of these facets is
determined by the modeller’s/user’s choice of parameters and input data (cf.
the complete table of model parameters, Fig. 2).

  * (1)

For the world model, a causal-structure, the Bayesian network, is chosen (see
section B for a detailed description). Next, the modeller sets which of the
propositions (nodes) therein constitutes the hypothesis under discussion and
which nodes are considered evidence (for the pre-defined networks included in
NormAN v. 1.0, this has already been pre-set, but can be modified with toggles
in the UI). The truth values of the hypothesis and the evidence nodes are
determined according to the procedure explained above. The resulting values
are stored in the global evidence-list.

  * (2)

To create the population, NormAN generates number-of-agents agents
($\in[1,1000]$). The social network, consisting of a graph of undirected edges
between agents, is created. The shape of this network (i.e., complete, wheel,
small-world or null) is determined by the modeller’s choice of social-network.

  * (3)

Each agent is then initialized. If not otherwise specified, agents start with
empty agent-evidence-list lists. In this case, their agent-belief is
determined by calculating the unconditional prior degree of belief in the
hypothesis node as determined by the Bayesian network that characterises both
the world and the agents’ perceptions (causal-structure). The value of this
computation is stored by the agents’ initial-belief. Their agent-evidence-list
lists are initialized as empty. However, using the global variable initial-
draws, the user can initialize agents with a number of pieces of evidence,
even before the procedure starts. In that case, the agent inquires initial-
draws times and computes their agent-belief and agent-evidence-list list as
specified above. Hence, if initial-draws is 0, agents start with empty
evidence-lists and therefore identical priors, whereas in the case of initial-
draws $>0$ they may start with different evidence lists and different beliefs.
Note that the agents’ initial-belief is always computed as the unconditional
prior degree of belief in the hypothesis. Hence, initial-belief does not hinge
on the value of initial-draws.

An important note for users of the model: The switches in the NetLogo model’s
user interface determine which parts of the model are reinitialised when the
model is set up again, i.e. whenever setup is pressed. The switch reset-
world-? resets the truth values of the evidence nodes, while reset-social-
network-? resets all agents and the social network that connects them.
Finally, reset-agents-initial-evidence-? resets the set of evidence that each
agent starts with upon initialisation (only relevant if initial-draws¿0).

###  A.6. Input data

The world model’s causal-structure is determined by a Bayesian network
implemented in the R package bnlearn (more on the connections between NetLogo
and R follows in the next subsection below). One key feature of NormAN is its
ability to accommodate a broad range of causal structures in the form of BNs.
Well-known BNs implemented in R can be found in online repositories (such as
the bnlearn repository from which we retrieved the ’Asia’ network, Fig. 2
above). Preset networks available in NormAN 1.0 are described further in
section B below.

###  A.7. Submodels

NormAN uses two main submodels (as anticipated in Section A.4). First, NormAN
is implemented as a NetLogo model (Version 6.2.1, (Wilensky, 1999)). NetLogo
is a programming language and integrated development environment for agent-
based modelling, and as such, NetLogo stores and governs the agents and their
behaviour, the social network, the world, and all other parameters determining
the model’s dynamics (cf. Table 2, Section A.3).

As a second submodel, NormAN draws on the R-package bnlearn (Scutari, 2010) to
handle all Bayesian belief updating and calculation of marginal, objective
evidence probabilities. This submodel consists of a Bayesian network (causal-
structure), i.e., the network structure consisting of nodes and edges and its
corresponding conditional probability distribution, written as bnlearn R code
(embedded in NetLogo, an extension created by (Thiele and Grimm, 2010)).
Whenever an entity computes a probability, it uses an R query to compute a
conditional probability. As an example: to compute their agent-belief based on
their evidence-list$=\\{E_{1},\neg E_{3}\\}$, an agent uses the query
cpquery(bn, event = (H == ’yes’), evidence = (E1 == ’yes’ & E3 == ’no’)). This
R query takes as its input the BN specified in causal-structure (called $bn$
in the code) and the truth values from the agent’s agent-evidence-list. Hence,
bnlearn’s $cpquery()$ estimates the conditional probability of an event given
evidence using the method specified in the method argument. All Bayesian
belief computations are handled by such $cpquery()$ commands, and therefore
use the bnlearn submodel.

A note for users: for technical reasons, the probabilities returned by
$cpquery()$ are approximate estimates. Hence, two identical queries (e.g., by
two agents entertaining the same agent-evidence-list list) may lead to
slightly different values. This is naturally at odds with NormAN 1.0’s
‘uniqueness’ assumption, i.e., that for each set of evidence, there is a
unique rational degree of belief. To circumvent the divergent effect of
estimation errors, our model implements two different methods: R’s
$set.seed()$ function or a ‘repeater’. The modeller can select by choosing a
value for the global interface variable approximation (either $seed$ or
$repeater$). The $seed$ function uses the R $set.seed()$ function to guarantee
that the same random values are produced each time the same code is run. A
global seed is chosen for every $cpquery()$, such that every identical query
outputs the same probability. Of course, this also means that each query
produces the same rounding error. The second method, ‘repeater’, does not fix
a seed but rather calculates $cpquery()$ a fixed number of times (determined
by repeater) and returns the mean result.

##  Appendix B World Models (Bayes’ Nets) Included in NormAN 1.0

We collected a variety of BNs for inclusion. They represent: hypothetical
examples of a simple reasoning problem (‘Wet Grass’); dependencies between
statistical probabilities and base rates (‘Sally Clark’); legal idioms and
complex (circumstantial) evidence structures (‘Vole’); and, medical diagnoses
(‘Asia’). The full (often rather large) conditional probability tables for
these models can be found here:
https://osf.io/treaw/?view_only=7d840891096b4572925420945a52c97e

The ‘Wet Grass’ (Jessen, 1996) BN model, accessed via ‘agena.ai.modeller’
software (version 9336, www.agena.ai), is a widely used example BN. The target
hypothesis is ‘Sprinkler’, and the event in question is whether or not the
sprinkler was left on. The alternative cause (which cannot be directly
observed or conditioned on) is ‘Rain’. These two potential causes of
(possibly) wet grass in Holmes’s garden (evidence node ’Holmes’) are
independent and not mutually exclusive. The second evidence node is the wet
grass in Watson’s garden (evidence node ‘Watson’), which only has one possible
cause (‘Rain’). This model is commonly used to illustrate a common effect
node, termed ‘collider’ (here ‘Holmes’). Conditioning on the collider, i.e.,
observing the wet grass, creates dependence between the two causes. When
‘Rain’ is made more likely by conditioning on ‘Watson’, i.e., when also
observing that Watson’s grass is wet, ‘Sprinkler’ becomes less likely (and
vice versa). This effect is called ‘explaining away’.

Network properties: Number of nodes = 8, Number of arcs = 3, Number of
parameters = 8, and Average Markov blanket size: 2.

Figure 11. ‘Wet Grass’ (Jessen, 1996) Bayesian network.

‘Wet Grass’ BN network

The ‘Sally Clark’ (Fenton and Neil, 2018; Fenton, 2014) BN model was accessed
via ‘agena.ai.modeller’ software (version 9336, www.agena.ai). This model is
based on a real-world case of wrongful conviction, due to a flawed statistical
analysis of the facts in question. The prosecution argued that the
infinitesimal odds of two infants both dying of Sudden Infant Death Syndrome
(SIDS) was proof of guilt. This critically ignored (a) the dependence between
the two deaths as the infants were related (and therefore both could have an
underlying condition) and (b) the base rate for parental murder of an infant
(as opposed to the base rate for SIDS). It was an important but clear flaw in
the original case that the alternative base rate was not considered; and it
was not recognised that the likelihood of two related infant deaths caused by
SIDS was much greater than the likelihood of two related infant deaths caused
by parental murder (for further discussion see (Fenton, 2014)). The BN model
represents a more appropriate reconstruction of the real-world facts of the
case. The target hypothesis is ‘Guilt’ (whether or not Sally Clark was guilty
of murder), and the four observable evidence nodes are whether or not Child A
and/or Child B had bruising and whether or not Child A and/or Child B had
signs of an underlying disease. This BN illustrates how to correct the
identified errors from the original analysis. Firstly, the structure of the BN
reflects the dependence between the cause of death of Child A and Child B.
Secondly, the conditional probabilities of the cause nodes reflect the base
rate of murder for Child A, and for Child B the probability of murder is
closely aligned to the likelihood of murder for Child A (i.e., this dependence
is reflected in structure and parameterisation). Finally, the ‘Findings’ node
is a deterministic node (states only 1 or 0), meaning its values are derived
from the states of its parent nodes. In this case, the Findings node
represents the three possible conclusions relevant to a guilty finding, either
both infants were murdered, one infant was murdered, or neither was murdered.
The target hypothesis ‘Guilt’ is also a deterministic node and combines the
first two likelihoods of the ‘Findings’ node as both of these states are
probative of a guilty verdict. Note: the states of both cause nodes were
changed from ‘SIDS’ and ‘Murder’ to ‘no’ and ‘yes’ respectively.

Network properties: Number of nodes = 8, Number of arcs = 8, Number of
parameters = 22, and Average Markov blanket size: 2.0.

Figure 12. ‘Sally Clark’ (Fenton and Neil, 2018) Bayesian network.

‘Sally Clark’ BN network.

The ‘Vole’ BN model (Fenton and Neil, 2018) was accessed via
‘agena.ai.modeller’ software (version 9336, www.agena.ai). This model is based
on a fictional case: the Agatha Christie play ‘Witness for the Prosecution’,
where the character Vole is accused of killing French. It is based on
Lagnado’s BN model of that case (see (Lagnado, 2011)), revised by (Fenton et
al., 2013) to incorporate and illustrate how idioms (a small number of basic
causal structures) can be used to present complex legal arguments (e.g., a
murder case) in a BN. Idioms included in this model are evidence idioms
(denoted ‘E’), evidence-accuracy idioms (denoted ‘A’), idioms that deal with
motive (denoted ‘M’) and opportunity (whether Vole was present), an alibi
evidence idiom (in this case E2 and A2) and explaining away idioms (in this
case the constraint node). The target hypothesis is ‘H0’ (whether or not Vole
was guilty) and there are seven observable evidence nodes (all denoted ‘E’):
E1 = Maid testifies that Vole was present; E2 = Vole alibi (testifies that he
was not present); E3 = Blood matches French; E4 = Blood matches Vole; E5 =
Vole shows scar; E6 = Letters as evidence of lover; and, E7 = Romaine
testifies that Vole admitted guilty. In terms of the construction of the CPTs,
a hypothesis of ’guilty’ is supported by E1, E3 and E7 being set to true, and
‘not guilty’ is supported by E2, E4, E5 and E6 being set to true. Finally, the
auxiliary node is another example of a deterministic node and is used here to
enforce the constraint that H2 and H4 are mutually exclusive and one of them
must be true. For a further discussion of the model and the use of idioms see
(Fenton et al., 2013).

Network properties: Number of nodes = 22, Number of arcs = 25, Number of
parameters = 63, and Average Markov blanket size: 2.82.

Figure 13. ‘Vole’ (Fenton and Neil, 2018; Fenton et al., 2013) Bayesian
network.

‘Vole’ Bayesian network.

The ‘alarm’ network is a Bayesian network designed to provide an alarm message
system for patient monitoring. It originates in Beinlich et al.’s “The ALARM
Monitoring System: A Case Study with Two Probabilistic Inference Techniques
for Belief Networks” (Beinlich et al., 1989b). Its bnlearn instantiation is
freely available in the bnlearn Network Repository
https://www.bnlearn.com/bnrepository/discrete-medium.html#alarm.

Network properties: Number of nodes = 37, Number of arcs = 46, Number of
parameters = 509, Average Markov blanket size = 3.51, Average degree = 2.49,
and Maximum in-degree = 4.

Figure 14. ‘Alarm’ (Beinlich et al., 1989a) Bayesian network.

‘Alarm’ BN network.

We also included a hand-crafted network that we found useful for comparison
purposes. The ’Big Net’ is a generic network that represents the following
causal structure: A Boolean hypothesis node A has three direct (Boolean)
descendants (B, C, D), where the truth of B is fairly diagnostic evidence for
A, the truth or falsity of C is non-diagnostic for A, and the truth of D is
evidence against A. Each of these evidence nodes has three children (the
children of B are one, two, three, the children of C are four, five, six and
the children of D are seven, eight, nine). Each piece has a slightly different
diagnostic value in relation to its parents.

Network properties: Number of nodes = 13, Number of arcs = 12. The conditional
probability distribution is:

  * $P(\texttt{A})=0.5$

  * $P(\texttt{B}|\texttt{A})=0.9$; $P(\texttt{B}|\neg\texttt{A})=0.1$

  * $P(\texttt{C}|\texttt{A})=0.5$; $P(\texttt{C}|\neg\texttt{A})=0.5$

  * $P(\texttt{D}|\texttt{A})=0.1$; $P(\texttt{D}|\neg\texttt{A})=0.9$

  * $P(\texttt{one}|\texttt{B})=0.9$; $P(\texttt{one}|\neg\texttt{B})=0.1$

  * $P(\texttt{two}|\texttt{B})=0.8$; $P(\texttt{two}|\neg\texttt{B})=0.2$

  * $P(\texttt{three}|\texttt{B})=0.7$; $P(\texttt{three}|\neg\texttt{B})=0.3$

  * $P(\texttt{four}|\texttt{C})=0.9$; $P(\texttt{four}|\neg\texttt{C})=0.1$

  * $P(\texttt{five}|\texttt{C})=0.8$; $P(\texttt{five}|\neg\texttt{C})=0.2$

  * $P(\texttt{six}|\texttt{C})=0.7$; $P(\texttt{six}|\neg\texttt{C})=0.3$

  * $P(\texttt{seven}|\texttt{D})=0.9$; $P(\texttt{seven}|\neg\texttt{D})=0.1$

  * $P(\texttt{eight}|\texttt{D})=0.8$; $P(\texttt{eight}|\neg\texttt{D})=0.2$

  * $P(\texttt{nine}|\texttt{D})=0.7$; $P(\texttt{nine}|\neg\texttt{D})=0.3$

Figure 15. ‘Big Net’ Bayesian network.

‘Big Net’ BN network.

Lastly, we included a smaller hand-crafted network, which follows the same
rationale as ‘Big Net’, called ‘Small Net’. ‘Small Net’ is a generic network
that represents the following causal structure: A Boolean hypothesis node V
has two direct (Boolean) descendants (CS, VT), where the truth of CS and VT
are both rather diagnostic evidence in for V. Both of these evidence nodes
have two children: the children of CS are I and M; both I and M are evidence
in favour of CS. VT has two children: RS and WHO. Whereas WHO (when true) is
supportive of VT, RS is evidence against VT. We select the leaf nodes as
evidence in our simulations.

Network properties: Number of nodes = 7, Number of arcs = 6. The conditional
probability distribution is:

  * $P(\texttt{V})=0.5$

  * $P(\texttt{CS}|\texttt{V})=0.9$; $P(\texttt{CS}|\neg\texttt{V})=0.1$

  * $P(\texttt{VT}|\texttt{V})=0.8$; $P(\texttt{VT}|\neg\texttt{V})=0.2$

  * $P(\texttt{I}|\texttt{CS})=0.7$; $P(\texttt{I}|\neg\texttt{CS})=0.3$

  * $P(\texttt{M}|\texttt{CS})=0.8$; $P(\texttt{M}|\neg\texttt{CS})=0.2$

  * $P(\texttt{RS}|\texttt{VT})=0.2$; $P(\texttt{RS}|\neg\texttt{VT})=0.8$

  * $P(\texttt{WHO}|\texttt{VT})=0.8$; $P(\texttt{WHO}|\neg\texttt{VT})=0.2$

Figure 16. ‘Small Net’ Bayesian network.

‘Small Net’ Bayesian network.

##  Appendix C Simulation Details

The following contains additional information for the case studies.

###  C.1. Case Study 1

####  C.1.1. Setting Out the Research Question

For our basic simulation, we used the ’Big Net’ network from the Norman
version 1.0 model presets (see 15). To set up the simulation we initialised
800 model runs, up to a maximum time step of 25 (0-25). The mean belief of the
agent population was recorded at each time step, 0 reflecting the pre-
deliberation average degree of belief within the group (given an initial
evidence draw of 1 and a prior of 0.5). There were 8 conditions, 4 (number of
agents: 10,50,100 and 500) X 2 (network type: small world and complete), with
100 runs in each condition. After the simulation was run, groups were
classified as ‘for’ and ‘against’ based on the initial direction of belief at
time step 0, with ‘for’ being ¿0.5 and ‘against’ being ¡0.5. Total group
(N=800) means and standard error range were calculated for the ‘for’ and
‘against’ groups at time steps 0 and 25 to produce a bar chart, shown in
Figure 5. Means and standard error range were calculated for each run, for
each of the 8 conditions, at all time steps (number of time steps =26), shown
in Figure 6.

This simulation was also repeated with the Asia/Lung Cancer BN network, shown
in Figure 2. Again, after the simulation was run, groups were classified as
‘for’ and ‘against’ based on initial direction of belief at time step 0, with
‘for’ being ¿0.5 and ‘against’ being ¡0.5. Means and standard error range were
calculated for each run, for each of the 8 conditions, at all time steps
(number of time steps = 26), shown in Figure 18.

####  C.1.2. Simulation Parameters

The following list specifies the actual parameters used in the simulations
summarised in Figures 5 and 6:

Model variables:[”number-of-agents” 10 50 100 500];[”network” ”complete”
”small-world”];[”causal-structure” ”big net”];[”initial-draws” 1];[”maximum-
draws” 1];[”share” ”random”];[”Seed” 2];[”chattiness” 0.5];[”conviction-
threshold” 0.5];[”curiosity” 0]; [”k” 2];[”rewiring-probability”
0.2];[”hypothesis-probability” 0.5];[”show-me” false];[”stop-at-full-
information” false]; and,[”approximation” ”seed”]. Measures/Reporters:mean
[agent-belief] of turtles; optimal-posterior; and, evidence-list. Repetitions:
100. Time limit: 25.

The actual data produced by these simulation runs can be found on OSF:
https://osf.io/6atr2/?view_only=dadfa771b5de4c86b3408c4bbba40e67.

####  C.1.3. Supplementary Figures

Figure 17 is a further illustration of aspects of the shift to extremity C.1.
Fig. 17 takes the same data as Fig. 6 but rather than the splitting runs by
whether the group initially leaned ‘for’ or ’against’ the target hypothesis,
individual runs are split by whether or not the optimal posterior of a given
run is ‘for’ or ‘against’ the target hypothesis (termed ‘valence’). Cases
where the optimal prior was neutral (exactly equal 0.5) were excluded. Then,
as before, means and standard error range were calculated for each run, for
each of the 8 conditions, at all time steps (number of time steps =26). This
illustrates the connection between the ‘sample’ of arguments present in a
deliberating group, and the underlying structure of the world, which will
determine what evidence could be available in principle.

Figure 17. As in Fig. 6 main text, the Figure plots the trajectories of mean
group beliefs across time (thin lines) and the average of those means (dashed
lines) with standard error (grey shaded area). Again, the top row shows the
simulation results for complete networks of various sizes (10,50,100, and 500
agents) and the bottom row shows the same dynamics in small world networks
with corresponding numbers of agents. Note that the ‘pre-evidence’ neutral
point in these simulations is .5 (base rate of hypothesis), as indicated by
the black dotted line. Runs are split by whether or not the optimal posterior
of a given run is ‘for’ (blue) or ‘against’ (red) the target hypothesis
(termed ‘valence’).

This is the Shift to Extremity

Finally, Fig. 18 examines the shift to extremity seen in Figure 6 above using
the Asia/Lung Cancer Network of Fig. 2 in the main text. For this
supplementary experiment the following model parameters were used: [”number-
of-agents” 10 50 100 500]; [”network” ”complete” ”small-world”]; [”causal-
structure” ”asia”]; [”initial-draws” 1]; [”maximum-draws” 1]; [”share”
”random”]; [”Seed” 2]; [”chattiness” 0.5]; [”conviction-threshold” 0.5];
[”curiosity” 0]; [”k” 2]; [”rewiring-probability” 0.2]; [”hypothesis-
probability” 0.5]; [”show-me” false]; [”stop-at-full-information” false];
and,[”approximation” ”seed”]. Measures or reporters were:mean [agent-belief]
of turtles; optimal-posterior; and, evidence-list. This simulation, again,
used 100 repetitions and a time limit of 25. The actual data produced by these
simulation runs can be found on OSF:
https://osf.io/6atr2/?view_only=dadfa771b5de4c86b3408c4bbba40e67.

Figure 18. Simulation using the Asia/Lung Cancer Network 2. Shown are the
trajectories of mean group beliefs across time (thin lines) and the average of
those means (dashed lines) with standard error (grey shaded area), split by
whether the group initially leaned ‘for’ (blue) or ‘against’ (red). The top
row shows the simulation results for complete networks of various sizes
(10,50,100, and 500 agents). The bottom row shows the same dynamics in small
world networks with corresponding numbers of agents. Note that the ‘pre-
evidence’ neutral point in these simulations is .05 (base rate of hypothesis,
in this instance the base rate of lung cancer), as indicated by the black
dotted line. Note that the ‘pre-evidence’ neutral point in these simulations
is .055 (base rate of lung cancer), not .5. Results could be transformed to a
.5 initial mid-point without loss.

Shift to Extremity, Asia Network

Fig. 18 shows the same ‘shift to extremity’ characteristics described in C.1.
Note that in advance of receiving any evidence about the world, agents have a
prior of .055, so leaning ‘for’ or ‘against’ is determined relative to that.
This is a function of the fact that for NormAN 1.0, agents’ subjective model
of the world is the same as the objective BN. The values shown could be re-
scaled to show what would obtain if agents’ pre-evidence prior was .5, without
affecting anything about the pattern seen.

###  C.2. Case Study 2

####  C.2.1. Research Question and Simulation Parameters

For the second case study, we simply showcased single, representative model
runs using three different sharing rules (RANDOM-SHARE, RECENT-SHARE, IMPACT-
SHARE), as visualized in Figures 8, 7, 19. The purpose was to highlight how
each of these sharing rules may lead to convergence or to scattering of the
agents’ beliefs (agent-belief), as well as to illustrate the sharing frequency
of each piece of evidence.

The simulations’ initial conditions were the same for each run, except for the
social network and the sharing rule. Each agent is initialized as knowing one
piece of evidence, and throughout the simulation, they only learn through
communication. The exact parameter values are: causal-structure= Vole (see
Appendix, Section B for a description), chattiness=0.5, conviction-
threshold=0, curiosity=0, initial-draws=1, max-draws=1, social-
network=complete/small-world, number-of-agents=50. The prior initial-
belief$\approx 0.3$.

####  C.2.2. Supplementary Figures

Supplementary Fig. (19) showcases a model run of each sharing rule, carried
out over a small-world network. The parameters are in the caption.

Figure 19. The beliefs of a population over time, for three sharing rules:
random (top left), recency (top right) and impact (below). This time, the
agents are connected via a small-world network. Parameter values: causal-
structure= Vole (see Appendix, Section B for a description), chattiness=0.5,
conviction-threshold=0, curiosity=0, initial-draws=1, max-draws=1, social-
network=small-world,rewiring-probability=0.2, k=2, number-of-agents=50. The
prior initial-belief$\approx 0.3$.

##  Appendix D Getting Started

For users who want to quickly start the NetLogo model, here are the relevant
steps (all mentioned variables are in the user interface, cf. Fig. 20):

  1. (1)

When first opening the model, make sure reset-world-? and reset-social-
network-? are on.

  2. (2)

The World: choose a causal-structure (chooser).

  3. (3)

The social network: choose a social-network (chooser) and a number-of-agents
(slider).

  4. (4)

Click setup: the social network will appear in the interface, the right bottom
monitor will show a histogram of agent-beliefs and the middle output will show
which pieces of evidence are true

  5. (5)

Press go to start the simulation

  6. (6)

If you would like to monitor what each agent does each round (in the command
center), toggle show-me-? on.

Figure 20. User interface of NormAN 1.0.

##  Appendix E Online Resources

The code for NormAN version 1.0 can be found here: https://github.com/NormAN-
framework/base-model.