1 Introduction

1.1 Aim of the paper

Functionalism (Abrahamson 1978; Turner and Mryanski 1979; Giddens 1976) is the approach to social analysis that takes the concept of social function as its core concept. The nonexistence of a widely accepted operational account of such concept has often led social scientists to refrain from directly tackling the study of the most important domain of social functions, namely, the macro-level organization of societies, where general functions are performed for the society as whole Parsons (1951). Robert Merton’s proposal for the abandonment of “grand theories” directly dealing with such macro-level issues, in favor of “middle-level” theories dealing with micro and meso-level interactions (i.e., interactions among individuals and interactions among organizations), was an important drive toward the dismissal of functionalism, as a methodological dead end, in social sciences.

However, the Artificial Intelligence area of Multiagent Systems has been producing, since the late 1970’s, a series of operational models that attempt to capture, in computational terms, formal aspects of social systems in general, and of human societies in particular Wooldridge (2011). In particular, the formal model of agent society that we have been developing since Costa and Demazeau (1996) and Demazeau and Costa (1996) is one of the attempts to leverage the notion of multiagent system to the level of a general concept of society, applicable to the modeling of both natural and artificial systems.Footnote 1

Accordingly, this paper aims to show that a formal concept of agent society, defined along the lines we have been proposing, can provide a suitable basis for a direct operational treatment of the macro-level functional aspects of artificial and natural societies.

1.2 The conceptual framework adopted in the paper

The conceptual framework adopted in the present paper considers any social function performed in a society to be operationally supported by some social processes executed by components of the society (individuals, organizations, etc.).

In other words, we propose that theories and models of social functions should be grounded on theories and models of social processes.

In particular, we propose that the classical theories and models of computational processes developed in the area of Theoretical Computer Science (that is, those inspired by the pioneering works of Hoare (1985), Milner (1980) and Petri (1980) are strong enough to theoretically ground adequate operational accounts of social functions.

1.3 A caveat

This paper deals strictly with a conceptual analysis of social functions and a proposal for their formal grounding on computational process theories, and it presents two case studies to illustrate the proposal.

For that, the paper introduces a simple formalism to illustrate the possibilities allowed by the proposal. However, it does not develop any full-fledged formal theory of social functions, nor does it proves any meta-theorems about the adopted conceptual framework.

As such, the paper is clearly subject to the same type of reproaches that has plagued functionalism in general. For instance, that any result that can be obtained from the analysis of a society on the basis of the concept of social function can be obtained by using just the concept of social process and, so, that any result produced on the basis of the formalism introduced in the paper can be obtained by means of the formalisms of the classical computational process theories. In other words, that the additional conceptual level of social functions is redundant.

But this criticism misses precisely the point of functionalism, which is that of going beyond what can be achieved on the basis of observational data, toward accounts of the reasons and motivations for societies being the way they are. For instance, regarding the second case study presented here (Bourdieu and Passeron’s functional analysis of schooling systems in contemporary societies, Sect. 8), questions like: Why do contemporary societies need schooling systems? What benefit or damage that particular schooling system is bringing to the society where it operates?

We claim that questions like that, involving valuations or aimed results, cannot be answered just on the basis of observational models of extant social processes. They require a level of understanding that only the concept of social function can sustain. And it is such type of understanding that the conceptual framework introduced here purports to formally support.

1.4 Structure of the paper

The paper is structured as follows. Section 2 reviews the concept of agent society adopted in the work and introduces the general concept of social actor of an agent society. Section 3 reviews the concept of exchange process and introduces two qualifications, of horizontal or vertical exchange processes, and of direct or indirect exchange processes.

Section 4 introduces the concept of exchange process-based (EP-based) social mechanism and its possible qualifications, as abstract or implemented.

The EP-based concept of social function, and the way EP-based mechanisms realize EP-based social functions, are examined in Sect. 5. For that, a general concept of systemic function is introduced, and social functions are conceived as a particular type of systemic function. Organizational functions are defined as a particular type of social function.

The macro-level concept of functional system of an agent society is introduced in Sect. 6. Two case studies are developed in the two following sections, Sects. 7 and 8.

Section 9 discusses related work. Sect. 10 is the conclusion.

2 Agent societies and their social actors

We say that the model of agent society, which we define presently, is general in the sense that it encompasses all the three main organizational levels that artificial and natural societies may realize, namely (see, e.g., Turner 2010):

  • A micro-organizational level, constituted by the organizational roles that the agents of the society may perform;

  • A meso-organizational level, constituted by the organizational units, that is, the (possibly recursively structured) sets of organizational roles that can be formed in the society;

  • A macro-organizational level, constituted by the organizational sub-systems, that is, the (possibly recursively structured) sets of organizational units that can be formed in the society.

The model assumes a clear separation between the agents of the society (the society’s population) and the hierarchy formed by the organizational levels just mentioned (the society’s organizational structure).

The hierarchy of levels of the organizational structure is assumed to be formed such that between any two organizational levels, an implementation relation relates the components of each level. Each organizational level, on its turn, is assumed to be structured as a network of components, related by the exchange processes that they perform between each other.

Also, two other components are part of the model:

  • A material environment, constituted by a system of material objects;

  • A symbolic environment, constituted by a system of symbolic objects.

The material and symbolic objects are the objects that agents may use to support their behaviors and interactions. The symbolic objects (possibly associated with material counterparts) are taken to constitute the cultural system of the society.

In addition, we require that concrete agent societies (real or artificial) compatible with the model meet at least the following requirements:

  • Openness, that is, the traditional requirement that the agents be allowed to freely enter and leave the society;

  • Situatedness, that is, the requirement that the agents operate in a combined material and symbolic environment;

  • Persistence, that is, the requirement that the organizational structure persist in time, independently of which agents enter or leave the society (up to a minimal population size);

  • Interoperability, that is, the requirement that agent societies be capable of inter-operating with each other, by means of exchanges of material and/or symbolic objects, and of migrations of agents between them.Footnote 2

Figure 1 pictures, in a general way, the architecture of agent societies. The vertical proximity between the components is intended to reflect the implementation between them. The access relations between them is not shown. In particular, it is not shown that higher-level organizational units may access the material environment.

Let time be the discrete sequence \(T=0,1,2,\ldots\) . For the purposes of the present paper, we formally define an agent society as followsFootnote 3:

Definition 1

An agent society is a time-indexed structure:

$$\begin{aligned} AgSoc ^t=( Pop ^t, Org ^t, MEnv ^t, SEnv ^t, Imp ^t) \end{aligned}$$

where, for any time \(t \in T\):

  • \(Pop ^t=( Ag ^t, EP ^t_ Ag )\) is the populational structure of the society, composed of the set \(Ag ^t\) of agents that inhabit it, together with their agent exchange processes, \(EP ^t_ Ag\);

  • \(Org ^t=( Org ^t_\omega , Org ^t_{\omega \Omega }, Org ^t\Omega )\) is the organizational structure of the society, composed of:

    • \(Org ^t_\omega =( Ro ^t, EP ^t_ Ro )\), the micro-organizational structure, composed of the set \(Ro ^t\) of social roles that the agents perform in the society, together with the set \(EP ^t_ Ro\) of their role exchange processes;

    • \(Org ^t_{\omega \Omega }=( OrgUnit ^t, EP ^t_ OU )\), the meso-organizational structure, composed of the set \(OrgUnit ^t\) of organizational units (i.e., organized sets of social roles), together with the set \(EP ^t_ OU\) of their organizational exchange processes;

    • \(Org ^t_\Omega =( SubSys ^t, EP ^t_ SS )\), the macro-organizational structure, composed of the set \(SubSys ^t\) of organizational sub-systems (i.e., organized sets of organizational units), together with the set \(EP ^t_ SS\) of their sub-system exchange processes.

  • \(MEnv ^t\) is the material environment of the society, composed of the set of material objects (and their relations) that can be involved in the behaviors and interactions occurring at any organizational level;

  • \(SEnv ^t\) is the symbolic environment of the society, composed of the set of symbolic objects (and their relations) that can be involved in the behaviors and interactions occurring at the populational and at any organizational level [see Costa (2015) for more details about the symbolic environment];

  • \(Imp ^t\) is the set of implementation relations, determining which social roles are implemented by which agents, which organizational units are implemented by which social roles, and which organizational sub-systems are implemented by which organizational units. Also, it determines which exchange processes at a certain architectural level are implemented by which exchange processes at the architectural level that is located immediately below it. \(\square\)

For convenience, we keep the two environments, material and symbolic, separate. In more general terms, they can be aggregated as parts of one overall environment \(Env ^t=( MEnv ^t, SEnv ^t)\).

Fig. 1
figure 1

The general architecture of an agent society and its hierarchical implementation

We define the concept of social actor of an agent society as follows:

Definition 2

The set of social actors present in any agent society \(AgSoc\), at the time t, is the set:

$$\begin{aligned} SocAct ^t = Ag ^t \cup Ro ^t \cup OrgUnit ^t \cup SubSys ^t \cup \{ AgSoc ^t\} \end{aligned}$$

\(\square\)

That is, a social actor in \(AgSoc ^t\) is any of its agents, social roles, organizational units or organizational sub-systems, or even (as in the second case study below) the agent society \(SocAct ^t\) itself.

The subset of elements \(OrgAct ^t= Ro ^t \cup OrgUnit ^t \cup SubSys ^t\) is said to be the set of organizational actors of the agent society, so that \(SocAct ^t = Ag ^t \cup OrgAct ^t\cup \{ AgSoc ^t\}\).

For any time t, we let the variable \(sa\) range over \(SocAct ^t\).

3 Exchange processes

Exchange processes are formal models of social exchanges. Their definition attempts to set a basis for the formal treatment of the operational features of social interactions, as they are treated by the various social exchange theories (Homans 1961; Emerson 1991; Cook and Rice 2005). In particular, the full formal model of exchange process that we have adopted in previous works (Dimuro et al. 2005; Costa 2013; Costa and Dimuro 2009) focuses on Jean Piaget’s theory of social exchanges Piaget (1995).

For the purposes of the present paper, however, the following simple definition should suffice. Let \(\mathbf {Act}\) be the universe of actions that the social actors of agent societies may perform.Footnote 4

Definition 3

An exchange process between two social actors \(sa _1\) and \(sa _2\) is any time-indexed sequence of pairs of sets of actionsFootnote 5:

$$\begin{aligned} ep _{ sa _1 sa _2}: T \rightarrow (\wp (\mathbf {Act}) \times \wp (\mathbf {Act})) \end{aligned}$$

with \(ep _{ sa _1 sa _2}(t)\), usually written in the form \(ep ^t_{ sa _1 sa _2}\), denoting the pair of sets of actions that the social actors \(sa _1\) and \(sa _2\) respectively direct to each other, at the time t. \(\square\)

This gives a very general definition of exchange process between social actors. In this paper, we will be particularly interested in exchange processes that support the performance of social functions, as detailed in Sect. 5.

The universe of exchange processes is denoted by \(\mathbf {EP}\).

3.1 Horizontal and vertical exchange processes

For any agent society \(AgSoc ^t\), we call horizontal exchange processes the sets \(EP ^t_ Ag\), \(EP ^t_ Ro\), \(EP ^t_ OU\) and \(EP ^t_ SS\) of exchange processes that are respectively performed among agents, social roles, organizational units and organizational sub-systems.

Also, in any agent society \(AgSoc ^t\), the set \(EP _{X,Y}\) of exchange processes performed among social actors of the different architectural levels X and Y (with \(X,Y \in \{ Ag , Ro , OU , SS \}\)) may be non-empty. That is, social actors of different architectural levels may establish exchange processes between them (for instance, individual agents may perform exchanges with organizations). We call such processes vertical exchange processes.

Notice that, for any \(X \in \{ Ag , Ro , OU , SS \}\), we may take \(EP _X = EP _{X,X}\). That is, horizontal exchange processes may be taken as particular cases of vertical exchange processes.

Thus, at any time t, the set of exchange processes being performed in an agent society is given by \(EP ^t \subseteq \{ EP _{X,Y} \mid X,Y \in \{ Ag , EP _ Ro , EP _ OU , EP _ SS \} \}\).

3.2 Direct and indirect exchange processes

We say that an exchange process between two social actors is direct if there is no intermediary social actor participating in it. Otherwise, we say that the exchange process is indirect. More precisely:

Definition 4

Any exchange process of the form given in Definition 3 is said to be a direct exchange process. Whenever there are exchange processes \(ep _{ sa _1 sa _2}\) and \(ep _{ sa _2 sa _3}\) such that, for any time t, it holds that \(ep ^t_{ sa _1 sa _2} = ( Act _1, Act _2)\) and \(ep ^t_{ sa _2 sa _3} = ( Act '_2, Act _3)\), and it happens that \(A _2 \cap Act '_2 \ne \emptyset\), we say that there is an indirect exchange process between \(sa _1\) and \(sa _3\), supported by \(sa _2\), which we denote by \(ep _{ sa _1[ sa _2] sa _3}\). \(\square\)

In the indirect exchange process \(ep _{ sa _1[ sa _2] sa _3}\), the social actor \(sa _2\) is said to be the intermediary of the indirect exchange process, directly participating in the two direct exchange processes that it interlinks.

It is possible to extend, in a natural way, the concept of indirect exchange process to any number of intermediaries. We denote such extended indirect exchange processes by \(ep _{ sa _1[ sa _2\ldots sa _{n-1}] sa _n}\).

3.3 Binary and n-ary exchange processes

Regarding the number of social actors involved in an exchange process, the exchange processes of the type just defined involve just two social actors. We call them binary exchange processes. Exchange processes involving n social actors, called n-ary exchange processes, may be defined, but we do not need that here.

4 EP-based social mechanisms

The concept of social mechanism has a long tradition in social sciences, in particular in the structural functionalist perspective (Malinowski 1944; Radcliffe-Brown 1965) and in social models inspired in theories of economic behavior (Schelling 2006; Borgers et al. 2015).

The general idea of these approaches to social analysis is that the performance of any social function, in a society, should be ascribed to an underlying social mechanism. But, typically, the earlier works (such as the ones mentioned above) tended to adopt ad hoc forms of social mechanisms, specially conceived for their particular purposes. It was only in the early 1990’s, with the so-called analytical approach to social sciences, the proposal has been raised for principled approaches to the structure and operation of social mechanisms, specially when searching for systematic causal explanations of social phenomena (Hedström and Swedberg 1998; Hedström 2005; Hedström and Ylikoski 2010).

In this section, we give an exchange process-based (EP-based) definition of social mechanisms. We first review Mario Bunge’s general concept of system Bunge (2014), which we take as the basis our general concept of mechanism. Following, we define the concept of EP-based social mechanism, distinguishing between abstract and implemented EP-based social mechanisms.

The definition of the corresponding concept of EP-based social function is given in the next section.

4.1 Bunge’s concept of system

Mario Bunge’s general concept of system is formally given by his CESM model, introduced in Bunge (2014).

Definition 5

A system that conforms to Bunge’s \(CESM\) model is a structure \(Sys =(C,E,S,M)\) where:

  • C is the composition of the system, that is, the set of components of the system;

  • E is the environment of the system, that is, the set of objects that are external to the system;

  • S is the structure of the system, that is, the set of relations that interconnect the components of the system;

  • M is the mechanism of the system, that is, the operational part of the system, which determines the way the system works. \(\square\)

One can naturally see agent societies as \(CESM\) systems. It is enough to interpret the generic structural elements of the \(CESM\) model in terms of the structural elements of agent societies, as follows. At any time t:

  • \(C^t \rightsquigarrow SocAct ^t\), that is, the systemic components of the agent society are its social actors;

  • \(E^t \rightsquigarrow ( MEnv ^t, SEnv ^t)\), that is, the systemic environment of the agent society is constituted by its material and symbolic environment;

  • \(S^t \rightsquigarrow \mathrm {Strct}[ FuncSys ^t]\), that is, the systemic structure of the agent society is the structure constituted by its organizational sub-systems (see Sect. 6);

  • \(M^t \rightsquigarrow EP ^t\), that is, the systemic mechanism of the agent society is its operational structure, that is, the set of exchange processes that specify how the social actors interact with each other, and how they operate with the objects of the symbolic and material environments, in the context of those exchange processes.

In this paper, however, we are not interested in this view of an agent society as one single \(CESM\) system (a view that, on the other hand, is indispensable when dealing with inter-societal agent systems ). We are primarily interested in the \(CESM\) view of some elements of the lower architectural levels of agent societies (more specifically, the \(CESM\) view of the organizational sub-systems and their components, as well as of the organizational units and their components).

More specifically, we are interested here in the EP-based social mechanisms, and corresponding EP-based social functions, that are constituted, and performed inside the micro (\(Org _\omega\)), meso (\(Org _\mu\)) and macro (\(Org _\Omega\)) organizational levels of agent societies.

To allow for the proper treatment of those issues we need, however, to distinguish between abstract and concrete EP-based social mechanisms.

4.2 Abstract EP-based social mechanisms

We define abstract EP-based social mechanisms in terms of an extended version of Bunge’s \(CESM\) model: we extend the model with the concept of an interface of an EP-based social mechanism.Footnote 6 The extension with the concept of interface is convenient to make explicit the set of components of the EP-based social mechanisms that are the direct responsible for the EP-based social functions that those mechanisms perform.

Let \(SocMech ^t\) be the set of all possible EP-based social mechanisms of the agent society \(AgSoc\), at the time t.

Definition 6

An abstract EP-based social mechanism in the agent society \(AgSoc ^t\), is a time-indexed structure \(absSocMech ^t = (C^t,E^t,S^t,M^t,I^t)\) where:

  • \(C^t \in \wp ( OrgAct ^t)\);

  • That is, the components of \(absSocMech ^t\) are organizational actors; \(C^t\) is required to be non-empty, at any time t;

  • \(E^t = ( OrgAct ^t \backslash C^t, SocMech ^t - \{ absSocMech ^t\}, MEnv ^t, SEnv ^t)\);

  • That is, the environment of \(absSocMech ^t\) is a structure composed of all the other organizational actors of \(AgSoc ^t\), all the other EP-based social mechanisms of \(AgSoc ^t\), and the material and symbolic environments of \(AgSoc ^t\);

  • \(S^t\) is a set of relations of a variety of types (acquaintance, trust, power, dependence, etc.) among the components of \(absSocMech ^t\), whose details are not relevant for the present work;

  • \(M^t \in \wp ( EP ^t)\) such that for every exchange process \(ep \in M^t\) it happens that \(ep\) involves (horizontally or vertically) at least one of the components \(c \in C^t\) of \(absSocMech ^t\);

  • \(I^t \in \wp (C)\), the interface of \(absSocMech ^t\), is the subset of components of \(C^t\) that realize at least one exchange process with at least one social actor of \(AgSoc ^t\) that is not a component of \(absSocMech ^t\). \(\square\)

4.3 Implemented EP-based social mechanisms

The definition of EP-based social mechanism, given in Definition 6, is said to define the notion of EP-based social mechanisms in an abstract way because the agents that are involved in it, as implementors of the components of the EP-based social mechanisms, are not taken into account in the definition.

Thus, abstract EP-based social mechanisms exist only in conceptual terms, at the organizational levels of agent societies. Clearly, to implement an EP-based social mechanism what is required is to indicate which agents implement which components of that mechanism, and how they should do that.

We define implemented EP-based social mechanisms on the basis of a further extension, to the already extended \(CESM\) model that allowed the definition of abstract EP-based social mechanisms:

Definition 7

An implemented EP-based social mechanism in the agent society \(AgSoc ^t\) is a structure \(impSocMech ^t = ( absSocMech ^t, impStr ^t)\) where:

  • \(absSocMech ^t=(C^t,E^t,S^t,M^t,I^t)\) is an abstract EP-based social mechanism, as defined above;

  • \(impStr ^t=( PA ^t, EP ^t, IR ^t)\) is the implementation structure of \(impSocMech ^t\), where:

    • \(PA ^t\) is a non-empty set of agents of \(AgSoc ^t\), said to be the implementors of \(impSocMech ^t\);

    • \(EP ^t\) is the set of exchange process that happen, in \(AgSoc ^t\), between the implementors in \(PA ^t\);

    • \(IR ^t\) is the implementation relation of the social mechanism, which determines, for each social role that occurs in \(C^t\), the agent in \(PA ^t\) which implements it, and for each role exchange process in \(M^t\) the exchange process in \(EP ^t\) that implements it. \(\square\)

For any agent society \(AgSoc ^t\), we denote:

  • The set of all its abstract social mechanisms by \(AbsSocMech ^t\);

  • The set of all its implemented social mechanisms by \(ImpSocMech ^t\);

  • The set of all its (abstract or implemented) social mechanisms by \(SocMech ^t = AbsSocMech ^t \cup ImpSocMech ^t\).

4.4 An example: abstract and implemented EP-based social mechanisms

Fig. 2
figure 2

An EP-based social mechanism in an agent society

As an illustration, consider the agent society that, at a certain time t, may be pictured as in Fig. 2. The picture shows an organizational unit (\(iSM\)) that operates as and EP-based social mechanism within an agent society (\(AgSoc\)). The agents from \(ag _1\) to \(ag _4\) are shown to play corresponding organizational roles in the society.

Formally, that agent society may be given by the structure \(AgSoc ^{t}=( Pop ^{t}, Org ^{t}, MEnv ^{t}, SEnv ^{t}, Imp ^{t})\) where:

  • \(Pop ^{t}=(\{ ag _1, ag _2, ag _3, ag _4\},\{ ep _1, ep _2, ep _3\})\);

  • \(Org ^{t}=( Org ^{t}_\omega , Org ^{t}_{\omega \Omega }, Org ^{t}_\Omega )\) with:

    • \(Org ^{t}_\omega =(\{ ro _1, ro _2, ro _3, ro _4\},\{ ep _4, ep _5, ep _6\})\);

    • \(Org ^{t}_{\omega \Omega }=(\{ aSM ^{t}\},\emptyset )\), where \(aSM\) is the abstract EP-based social mechanism corresponding to the implemented EP-based social mechanism \(iSM\);

    • \(Org ^{t}_\Omega =(\emptyset ,\emptyset )\)

  • \(MEnv ^{t} = \bot\), that is, there is no material environmentFootnote 7;

  • \(SEnv ^{t} = \bot\), that is, there is no symbolic environment;

  • \(Imp ^{t} = ( ro_1, ag_1),( ro_2, ag_2),( ro_3, ag_3),( ro_4, ag_4),( ep_4, ep_1), ( ep_5, ep_2),( ep_6, ep_3).\)

Notice that no organizational sub-system has been identified in \(AgSoc\), and just one organizational unit was determined, \(aSM\), the organizational unit that is seen as an abstract EP-based social mechanism.Footnote 8

The organizational unit \(aSM\), seen at the time t as an abstract EP-based social mechanism, can be given by:

  • \(aSM ^{t} = (C^{t},E^{t},S^{t},M^{t},I^{t})\) where:

    • \(C^{t} = \{ ro _2, ro _3\}\);

    • \(E^{t} = (\{ ro _1, ro _4\},\emptyset ,\bot ,\bot )\);

    • \(S^{t} = \emptyset\);

    • \(M^{t} = \{ ep _5\}\);

    • \(I^{t} = \{ ro _2, ro _3\}\).

Notice that there is no structure \(S^{t}\) in \(aSM ^{t}\), and that all of the components of \(aSM ^{t}\) are interface components. Notice also that \(aSM ^{t}\) is an EP-based social mechanism that has been identified in \(AgSoc\), and that it happens to be an organizational unit of \(AgSoc\).Footnote 9

Finally, it should be clear from Fig. 2 that the implementation of the abstract EP-based social mechanism \(aSM ^{t}\) is determined by:

  • \(PA ^{t}=\{ ag _2, ag _3\}\);

  • \(EP ^{t}=\{ ep _2\}\);

  • \(IR ^{t} = \{( ro _2, ag _2),( ro _3, ag _3),( ep _5, ep _2)\}\).

Clearly, the abstract EP-based social mechanism \(aSM ^{t}\) of Fig. 2 is implemented by the agents \(ag _2\) and \(ag _3\), resulting in the implemented EP-based social mechanism \(iSM ^{t}\).

Notice that \(IR ^{t} \subseteq Imp ^{t}\).

4.5 Higher-level EP-based social mechanisms

The concept of implementation of EP-based social mechanisms given in Definition 7 concerns just the implementation of EP-based social mechanism constituted at the organizational level \(Org _\omega\), of organizational roles.

EP-based social mechanisms can be defined at the \(Org _\mu\) and \(Org _\Omega\) organizational levels, and the conditions for the implementation of each by the immediately lower organizational level can be formulated, giving rise to higher-level EP-based social mechanisms.

Such elaboration would produce a recursive formal model for EP-based social mechanisms, of any organizational level, in both abstract and implemented versions. We do not present such elaboration here, however. We just illustrate the idea, informally, in the second case study (see Sect. 8).

5 EP-based social functions and their realization by EP-based social mechanisms

In this section, we consider the concept of EP-based social function and the way EP-based social functions are realized by EP-based social mechanisms. For that, we present the basic elements of the general account of systemic functions on which the concept of EP-based social function is built.

First, however, we have to discuss the important issue of the difference between the concepts of process, service and systemic function. It is such difference that justifies the appropriateness of the adoption of functional approaches to systems in general (and to social systems, in particular) as methodological complements to the usual process-theoretical approaches that have been developed in theoretical computer science, starting with the pioneer works of Hoare (1985) and Milner (1980).

5.1 Processes, services and systemic functions

We take processes, services and systemic functions to be different forms of behaviors and interactions between system components.

5.1.1 Processes

By a process, we mean a time-indexed sequence of tuples of sets of actions, in the form \(p : T \rightarrow \wp (\mathbf {Act}) \times \cdots \times \wp (\mathbf {Act})\), where each component of the tuple is performed by one of the components of the system that is involved in the process.

Exchange processes, as defined above, are processes involving two system components. The simplest case of process is what may be called behavior, a process performed by a single component, in the form \(b : T \rightarrow \wp (\mathbf {Act})\). The simplest form of behavior is that of a process that involves only single action at each time, in form \(b : T \rightarrow \mathbf {Act}\).

5.1.2 Systemic functions and services

The general concept of systemic function is considered below. Here, we only consider it as far as necessary to distinguish systemic functions from services [see Costa and Dimuro (2008, 2010), for further details].

We take a systemic function to be an activity performed by a system component on behalf of another system component.Footnote 10

In general, in a systemic function, there is no particularly required form of coordination between the behavior performed by the provider of the function and the behavior performed the beneficiary of the function. A service, in contrast, is commonly seen as an activity where a particular form of coordination is required, between those two behaviors, namely, the server, the provider of the service, is required to operate on demand, that is, as requested by the client, the beneficiary of the service.

Clearly, a service is a particular form of systemic function.

5.1.3 Functional and processual approaches to systems

By the functional features of a system we understand the particular aspects involved in the performance of a systemic function, namely: the activity in question, the exchange process by means of which that activity is provided by the provider to the beneficiary, the directionality of the function (from the provider to the beneficiary), etc.

That should be contrasted with the usual way the processual approaches deal with systems of interacting components, abstracting away the structural components of the systems, concentrating on the way their behaviors develop in time and inter-relate with each other.

However, the functional and the processual approaches are not alternative to each other. On the contrary, as can be seen below, the processual approach forms the basis upon which one builds the functional approach.

In other words, the functional approach emphasizes the formal treatment of the functional features of systems (including services taken as particular types of systemic functions), treating the processes performed by the components of the system at a higher and specialized level of abstraction.

Accordingly, the formalism for systemic functions presented below is explicitly based on the formal processual treatment of the functioning of systems. And it should provide, thus, an operational basis for the treatment of the functional features of systems that the usual verbal forms of functionalism cannot provide.

We proceed, now, to the details of the adopted concept of systemic function and to the concept of social function that it supports.

5.2 Systemic functions

A systemic function may be either elementary or compound.

5.2.1 Elementary systemic functions

Definition 8

An elementary systemic function Footnote 11 performed by a component \(c_1\) (the function provider) for a component \(c_2\) (the function beneficiary), in a given system, is characterized by the existence of an activity executed by \(c_1\), which satisfies an operational requirement \(R_1\), so that such activity contributes to the execution of another activity by \(c_2\), which satisfies an operational requirement \(R_2\), on the basis of the establishment of an exchange process \(ep\) between \(c_1\) and \(c_2\), which satisfies an operational requirement R. \(\square\)

We let the variable \(sf\) range over systemic functions. We denote by the expression \(\langle c_1:R_1\rangle \mathop {\dashrightarrow }\limits ^{ ep :R}\langle c_2:R_2\rangle\) the systemic function that \(c_1\) performs for \(c_2\), through the exchange process \(ep\), such that the corresponding requirements \(R_1\), \(R_2\) and R are satisfied.

Notice that, here, we leave undefined the formal characterization of the activities and operational requirements that constitute systemic functions. Intuitively, activities can be characterized as processes (see Sect. 5.1), while operational requirements are constraints to be satisfied by the corresponding activities. Both activities and operational requirements can be given in any appropriate logical or operational formalism, but we leave such issue open, in this paper (cf. Costa and Dimuro 2010).

Implicit in the definition is the idea that the activity performed by \(c_1\) is appropriately coordinated with that performed by \(c_2\), in accordance with the exchange process \(ep\) established between those two components. We omit the details about such coordination, however, since we are not adopting here any particular formalism for expressing activities.

Finally, notice that an activity performed by one system component may be supported by more than one systemic function performed by one or more of the other components of the system. For instance \(\langle c_2: R_2 \rangle\) may be supported by \(\langle c_1:R_1\rangle \mathop {\dashrightarrow }\limits ^{ ep :R}\langle c_2:R_2\rangle\) and \(\langle c'_1:R'_1\rangle \mathop {\dashrightarrow }\limits ^{ ep ':R'}\langle c_2:R_2\rangle\), performed in conjunction.

5.2.2 Direct and indirect elementary systemic functions

We characterize two types of elementary systemic functions, direct and indirect. Informally, an elementary systemic function is said to be an indirect elementary systemic function whenever it can be characterized as the composition of two other elementary systemic functions. Formally:

Definition 9

An elementary systemic function

$$\begin{aligned} sf _{c_1,c_2} = \langle c_1:R_1\rangle \mathop {\dashrightarrow }\limits ^{ ep _{1,2}:R_{1,2}}\langle c_2:R_2\rangle \end{aligned}$$

is a indirect elementary systemic function if and only if there are:

  • A component \(c_3\) which performs an activity that satisfies an operational requirement \(R_3\);

  • Exchange processes \(ep _{1,3}\) and \(ep _{3,2}\), respectively satisfying \(R_{1,3}\) and \(R_{2,3}\);

such that:

  • \(sf _{c_1,c_3} = \langle c_1:R_1\rangle \mathop {\dashrightarrow }\limits ^{ ep _{1,3}R_{1,3}}\langle c_3:R_3\rangle\), that is, \(c_1\) performs an elementary systemic function \(c_1,c_3\) for \(c_3\);

  • \(sf _{c_3,c_2} = \langle c_3:R_3\rangle \mathop {\dashrightarrow }\limits ^{ ep _{3,2}:R_{3,2}}\langle c_2:R_2\rangle\), that is, \(c_3\) performs an elementary systemic function \(sf _{c_3,c_2}\) for \(c_2\);

  • \(ep _{1,2} = ep _{1,3} \circ ep _{2,3}\), for some appropriate notion of composition of exchange processes.Footnote 12

We also express the fact that the elementary systemic function \(sf _{c_1,c_2}\) is an indirect elementary systemic function, realized by the composition of the elementary systemic functions \(sf _{c_1,c_3}\) and \(sf _{c_3,c_2}\) either by:

$$\begin{aligned} sf _{c_1,c_2} = sf _{c_1,c_3} \circ sf _{c_3,c_2} \end{aligned}$$

or by:

$$\begin{aligned} \langle c_1:R_1\rangle \mathop {\dashrightarrow }\limits ^{ ep _{1,2}:R_{1,2}}\langle c_2:R_2\rangle = \langle c_1:R_1\rangle \mathop {\dashrightarrow }\limits ^{ ep _{1,3}:R_{1,3}}\langle c_3:R_3\rangle \mathop {\dashrightarrow }\limits ^{ ep _{3,2}:R_{3,2}}\langle c_2:R_2\rangle \end{aligned}$$

The elementary systemic function \(\langle c_1:R_1\rangle \mathop {\dashrightarrow }\limits ^{ ep _{1,2}:R_{1,2}}\langle c_2:R_2\rangle\) is said to be a direct elementary systemic function if it is not indirect, that is, if there is no component \(c_3\), or no pair of exchange processes \(ep _{1,3}\) and \(ep _{3,2}\), constituting it as indirect. \(\square\)

Since a component \(c_1\) may perform more than one elementary systemic function for a component \(c_2\), at the same time, we denote by \(Sf ^t_{c_1,c_2}\) the set of (direct and indirect) elementary systemic functions established between the components \(c_1\) and \(c_2\), in a given system, at the time t, where \(c_1\) is the provider and \(c_2\) is the beneficiary of those elementary systemic functions.

5.2.3 Compound systemic functions

Informally, a compound systemic function is a set of elementary systemic functions, namely, the set of all elementary systemic functions performed between two sets of components of a system. We denote by \(csf ^t_{C_1,C_2}\) the compound systemic function performed, at the time t, by the set of providers \(C_1\) for the set of beneficiaries \(C_2\), with \(csf ^t_{C_1,C_2}= \bigcup \{ Sf _{c_1,c_2} \mid c_1 \in C_1, c_2 \in C_2\}\).

5.2.4 Functional relations and their two basic types

Definition 10

A functional relation \(fr _{c_1,c_2}\) between two system components \(c_1\) and \(c_2\) is a non-empty subset of the set of elementary systemic functions that are established between those system components, independently of which is the provider and which is the beneficiary of each function (so that \(fr _{c_1,c_2}= fr _{c_2,c_1}\)):

$$\begin{aligned} fr _{c_1,c_2} \subseteq Sf _{c_1,c_2} \cup Sf _{c_2,c_1} \end{aligned}$$

\(\square\)

The criteria for determining functional relations between system components is application dependent and up to the convenience of the analyst, thus, subjective. That is, functional relations are just instrumental concepts for system analysis, and cannot, as such, have effects on the functioning of the systems to which they are assigned, as elementary systemic functions do (due to their effective existence in the systems).

Only the maximal functional relations, characterized by \(fr _{c_1,c_2} = Sf _{c_1,c_2} \cup Sf _{c_2,c_1}\), can be thought of as having effects on the systems where they are found, for they encompass all the effects of their constituent elementary systemic functions.

We characterize now the two basic types of functional relations: client-server and producer-consumer.

Definition 11

A functional relation \(fr _{c_1,c_2}\) between the system components \(c_1\) and \(c_2\) is said to be of the client-server type if and only if it is a singleton, that is, a set with a single systemic function, of the form:

$$\begin{aligned} fr _{c_1,c_2} = \{ sf _{c_1,c_2}\} \end{aligned}$$

which is assumed to operate on demand, that is, the activity of \(c_1\) is performed only when required by \(c_2\), through the exchange process established between them. \(\square\)

In client-server functional relation \(fr _{c_1,c_2}\), we say that \(c_2\) (which is the beneficiary of the systemic function \(sf _{c_1,c_2}\)) is the client of the functional relation (which is the provider of \(sf _{c_1,c_2}\)), said to be the server of the functional relation. Informally, we say that \(c_2\) is the client of \(c_1\) regarding \(fr _{c_1,c_2}\).

Clearly, the main motivation for the name client-server derives from the aim to capture, in such functional formalization, the idea of a component performing a service for the other (see Sect. 5.1).

Notice, however, that since the functional conceptualization developed here is formal, the notion of service implied in the formalization is abstract, and can thus be interpreted in a variety of ways, in applications. For instance, a client-server functional relation may proceed on the basis of the delivery of goods.

Definition 12

A functional relation \(fr _{c_1,c_2}\) between the system components \(c_1\) and \(c_2\) is said to be of the producer-consumer type if and only if it is an ordered pair of elementary systemic functions, of the form:

$$\begin{aligned} fr _{c_1,c_2} = ( sf _{c_1,c_2}, sf _{c_2,c_1}) \end{aligned}$$

where the two social functions are of the form \(sf _{c_1,c_2} = \langle c_1:R_1\rangle \mathop {\dashrightarrow }\limits ^{ ep :R}\langle c_2:R_2\rangle\) and \(sf _{c_2,c_1} = \langle c_2:R'_2\rangle \mathop {\dashrightarrow }\limits ^{ ep ':R'}\langle c_1:R'_1\rangle\). The first elementary systemic function of the pair is said to be the dominant systemic function of the functional relation, the second elementary systemic function, the complementary one. Contrary to what happens with the client-server type of functional relation, both functions in the producer-consumer type of functional relation are supposed to be operated by the initiative of their respective providers, independently of the activity of the beneficiaries. \(\square\)

In producer-consumer functional relation \(fr _{c_1,c_2}\), the system components participate in the exchange process by reciprocating to each other. That is, each of them acts both as function provider and as function beneficiary, for the other, but in two different systemic functions.

The component that acts as the provider for the dominant systemic function (and, so, as beneficiary for the complementary systemic function) is said to be the producer, while the component that acts as the beneficiary for the dominant systemic function (and, so, as provider for the complementary systemic function) is said to be the consumer.

Clearly, the main motivation for the name producer-consumer derives from the aim to capture, in the functional conceptualization, the idea of two system components exchanging goods that they produce for each other to consume.Footnote 13

As above, however, since the functional conceptualization is formal, the notion of good employed here is abstract, and can thus be interpreted in any way, in applications. For instance, a producer-consumer functional relation may proceed on the basis of the components realizing specific tasks for each other.

On the other hand, the criteria for the ordering of the systemic functions in the pair that constitutes a functional relation is application dependent and up to the convenience of the analyst, thus, subjective. So, the qualification of a system component as the producer or the consumer of a functional relation of the producer-consumer type has no effect, as such, on the functioning of the system.

5.3 Social and organizational functions

In the expression “social function”, we take the term “function” to mean an elementary systemic function. More specifically, we call social function, in an agent society \(AgSoc ^t\), any systemic function \(sf _{c_1,c_2}\) where \(c_1\) and \(c_2\) are social actors of \(AgSoc ^t\).

Notice that social functions:

  • May be direct or indirect;

  • May be horizontal (between social actors of the same architectural level) or vertical (between social actors of different architectural levels).

We call organizational function in \(AgSoc ^t\) any social function in \(AgSoc ^t\) whose social actors are organizational actors of that belong to the same organizational unit. That is, an organizational function is a social function that is internal to some organizational unit.

We denote the set of all social functions of \(AgSoc ^t\) by \(SocFunc ^t\), and the set of all its organizational functions by \(OrgFunc ^t\). Clearly, for any time t, it holds that \(OrgFunc ^t \subseteq SocFunc ^t\).

Any social function whose social actors belong to different organizational units is said to be an inter-organizational social function. The set of all inter-organizational social functions of \(AgSoc ^t\) is denoted by \(InterOrgFunc ^t\). Clearly, at any time t it holds that \(InterOrgFunc ^t \subseteq SocFunc ^t\).

Additional types of social functions may be identified. In particular, social functions performed by agents outside any organizational context, so that, in general, \(OrgFunc ^t \cup InterOrgFunc ^t \ne SocFunc ^t\). However, we do not deal with those other types of social functions in the present paper.

5.4 The realization of social functions by/for EP-based social mechanisms

We may extend the treatment of social functions, to take into account their realization by EP-based social mechanisms. We do that simply by allowing that the components (providers and beneficiaries) that participate in the performance of social functions be EP-based social mechanisms.

Definition 13

Let the social function \(sf _{c_1,c_2}\) in \(AgSoc ^t\) be such that:

$$\begin{aligned} sf _{c_1,c_2} = \langle c_1:R_1\rangle \mathop {\dashrightarrow }\limits ^{ ep :R}\langle c_2:R_2\rangle \end{aligned}$$

We say that:

  1. 1.

    \(sf _{c_1,c_2}\) is a social function performed by the EP-based social mechanism \(c_1\) for the social actor \(c_2\) if \(c_1=(C_1,E_1,S_1,M_1,I_1)\) is an (implemented or abstract) EP-based social mechanism and there is a component \(c'_1 \in I_1\) in the interface of \(c_1\) that performs a social function \(\langle c'_1:R'_1\rangle \mathop {\dashrightarrow }\limits ^{ ep :R}\langle c_2:R_2\rangle\) for \(c_2\), through the exchange process \(ep\);

  2. 2.

    \(sf _{c_1,c_2}\) is a social function performed by the social actor \(c_1\) for the EP-based social mechanism \(c_2\) if \(c_2=(C_2,E_2,S_2,M_2,I_2)\) is an (implemented or abstract) EP-based social mechanism and there is a component \(c'_2 \in I_2\) in the interface of \(c_2\) such that \(c_1\) performs a social function \(\langle c_1:R_1\rangle \mathop {\dashrightarrow }\limits ^{ ep :R}\langle c'_2:R'_2\rangle\) for \(c_2'\), through the exchange process \(ep\);

  3. 3.

    \(sf _{c_1,c_2}\) is a social function performed by the EP-based social mechanism \(c_1\) for the EP-based social mechanism \(c_2\) if \(c_1=(C_1,E_1,S_1,M_1,I_1)\) and \(c_2=(C_2,E_2,S_2,M_2,I_2)\) are (both implemented or both abstract) EP-based social mechanisms, and there are components \(c'_1 \in I_1\) and \(c'_2 \in I_2\) such that \(c'_1\) performs a social function \(\langle c'_1:R'_1\rangle \mathop {\dashrightarrow }\limits ^{ ep :R}\langle c'_2:R'_2\rangle\) for \(c_2'\), through the exchange process \(ep\). \(\square\)

A social function performed by/for EP-based social mechanisms is said to be implemented if the EP-based social mechanisms and/or single social actors that are involved in its performance are implemented. Otherwise, it is said to be an abstract social function.

For instance, if in the agent society of Fig. 2 suitable operational requirements are imposed on social roles \(ro _1\), \(ro _2\), \(ro _3\) and \(ro _4\), and on the exchange processes \(ep _4\) and \(ep _6\), and the other conditions are met, we may say that in that society the social role \(ro _1\) is performing an abstract social function for the abstract EP-based social mechanism \(aSM\) and that the abstract EP-based social mechanism \(aSM\) is performing an abstract social function for the social role \(ro _4\).

In consequence, if the social roles \(ro _1\), \(ro _2\), \(ro _3\) and \(ro _4\) are respectively implemented, in an appropriate way, by the agents \(ag _1\), \(ag _2\), \(ag _3\) and \(ag _4\), and the exchange processes \(ep _4\) and \(ep _6\) are appropriately implemented by the exchange processes \(ep _1\) and \(ep _3\), we may say that the agent \(ag _1\) is performing an implemented social function for the implemented EP-based social mechanism \(iSM\) and that the implemented EP-based social mechanism \(iSM\) is performing an implemented social function for the agent \(ag _4\).

The distinction between implemented and abstract social functions, allows for the realization of functional analyses of the organizational structure of an agent society (with the organizational components taken to be abstract EP-based social mechanisms) separate from functional analyses of the agent society as it is implemented by its population. This should help to determine consonances and discrepancies between the structure and functioning of the organizational structure of agent societies in an abstract way, independently of the way those societies are implemented.

6 Functional systems of agent societies

We proceed now to the direct functional treatment of the higher-level components of agent societies. In particular, we deal with the functional features of the organizational sub-systems that may be constituted at the macro-organizational level of those societies.

By the functional system of an agent society \(AgSoc ^t\) we understand the set of all functional components of \(AgSoc ^t\), that is, the set of all organizational units and organizational sub-systems that are performing social functions in that society, at the time t. More precisely:

Definition 14

The functional system of an agent society \(AgSoc ^t\) is the set \(FuncSsys ^t \subseteq Org ^t_{\omega \Omega } \cup Org ^t_\Omega\) of functional components of \(AgSoc ^t\), given by:

  • \(FuncSys ^t = \{ fc \in Org _{\omega \Omega }^t \cup Org ^t_\Omega \mid \exists sf \in SocFunc ^t [ prfm ^t( fc , sf )]\}\)

where \(prfm ^t( fc , sf )\) denotes that, at the time t, the organizational unit or organizational sub-system \(fc\) is operating as a functional component, performing the social function \(sf\) (for some unspecified social actor \(sa\)). \(\square\)

Every functional component \(fc\) of an agent society \(AgSoc ^t\) is said to be functional for \(AgSoc ^t\), independently of any assessment (positive or negative) that can be made, by any internal or external observer of \(AgSoc ^t\), of the effects that the functions performed by \(fc\) may have on the organization or functioning of \(AgSoc ^t\).

That is, contrary to what is usually taken (see, e.g., Merton 1968), we take that functionality is value-neutral, so that saying that a certain component is functional in an agent society is not the same as saying that the functioning of that component is good for that agent society.

For instance, we say that both rainy weather and drought are functional for the grass of gardens, for both support certain activities of the grass (e.g., rainy weather usually supports growth and spatial expansion, and drought usually supports decrease and spatial reduction).

7 Case study I: the magic box society

Here, and in Sect. 8, we present case studies illustrating the type of functional modeling that can be built on the formal concepts of EP-based social mechanism and social function introduced above.

The thought experiment taken as case study in the present section was selected for its simplicity, serving the purpose of discussing the notions of EP-based social mechanism and EP-baed social function in a simple and immediately understandable social context. The more involved example in the next section was selected for being more realistic.

7.1 The magic box

Consider the thought experiment conveyed by the following toy fable (see Fig. 3):

Fig. 3
figure 3

The magic box and its users

Once upon a time there were two agents, \(ag _1\) and \(ag _2\), that were such that:

  • To be appropriately fed, both agents needed to eat, once each day, one hollow white candy filled with a black candy, of the form ;

  • Agent \(ag _1\), when appropriately fed, was capable of producing at least two black candies of the form , for each filled candy that it ate;

  • Agent \(ag _2\), when appropriately fed, was capable of producing at least two hollow white candies of the form , for each filled candy that it ate.

The agents are supposed to have never the chance to meet, not even to known about the existence of each other.

On a certain day, each agent was informed (separately from the other) of the availability of a magic box \(MB\), which it could use to get, forever, the filled candy it daily needed. The only requirement for the use of \(MB\) was that the agent delivered to \(MB\), once every day, two units of the candy it was capable of producing. The two agents immediately started to use \(MB\), and each got daily, from then on, its indispensable filled candy.

The situation continued in that satisfactory way for many years, until agent \(ag _1\) suddenly died, and \(MB\) stopped working. Agent \(ag _2\), having to move on to search for another source of filled candys, remained the rest of its life without understanding why \(MB\) stopped working.

7.2 Functional modeling

To illustrate the idea of functional modeling, consider a simplified view of the society of the magic box pictured in Fig. 4, which shows a social mechanism-based abstraction of that society (cf. Fig. 3).

Fig. 4
figure 4

A social mechanism-based abstraction of the magic box society

We have abstracted away the magic box \(MB\) itself, and have introduced:

  • An exchange process \(ep _1\) between agents \(ag _1\) and \(ag _2\), which abstracts the indirect exchange process that \(MB\) established covertly between the two agents;

  • An implemented EP-based social mechanism \(iSM\) constituted by:

    • An abstract EP-based social mechanism \(aSM\), with social roles \(ro _1\) and \(ro _2\), and exchange process \(ep _2\);

    • Agents \(ag _1\) and \(ag _2\), and exchange process \(ep _1\);

    • An implementation relation \(IR\) that determines that \(( ro _1, ag _1),( ro _2, ag _2), ( ep _2, ep _1) \in IR\);

The abstract EP-based social mechanism \(aSM\) specifies the social functions:

$$\begin{aligned} sf _{ ro _1, ro _2}=\langle ro _1:R_{ ro _1}\rangle \mathop {\dashrightarrow }\limits ^{ ep _2:R_{ ep _2}} \langle ro _2:R_{ ro _2}\rangle \end{aligned}$$
$$\begin{aligned} sf _{ ro _2, ro _1}=\langle ro _2:R_{ ro _2}\rangle \mathop {\dashrightarrow }\limits ^{ ep _2:R_{ ep _2}} \langle ro _1:R_{ ro _1}\rangle \end{aligned}$$

where the operational requirements \(R_{ ro _1},R_{ ro _2}\) and \(R_{ ep _2}\) are obtained by lifting, to both the exchange process \(ep _2\) and the conducts specified by the social roles \(ro _1\) and \(ro _2\), the operational requirements graphically expressed, in Fig. 3, regarding the exchange process and the conducts executed by the agents \(ag _1\) and \(ag _2\).

We may formally identify, in the following way, the social functions that the agents perform to each other, under the scope of the implemented EP-based social mechanism \(iSM\):

$$\begin{aligned} sf _{ ag _1, ag _2}=\langle ag _1:R_{ ag _1}\rangle \mathop {\dashrightarrow }\limits ^{ ep _1,R_{ ep _1}} \langle ag _2:R_{ ag _2}\rangle \end{aligned}$$
$$\begin{aligned} sf _{ ag _2, ag _1}=\langle ag _2:R_{ ag _2}\rangle \mathop {\dashrightarrow }\limits ^{ ep _1,R_{ ep _1}} \langle ag _1:R_{ ag _1}\rangle \end{aligned}$$

Clearly, the two social functions of the abstract EP-based social mechanism, \(sf _{ ro _1, ro _2}\) and \(sf _{ ro _2, ro _1}\), being reciprocal of each other, establish the functional relation \(fr _{ ro _1, ro _2}\) between \(ro _1\) and \(ro _2\) as a functional relation of the producer-consumer type: the two roles act as producer and consumer, for each other.

However, in the absence of any specific criterion, one cannot determine one of the two social functions \(sf _{ ro _1, ro _2}\) and \(sf _{ ro _2, ro _1}\) as the dominant one, because of the symmetry of the way the two agents participate in the society.

So, the functional relation \(fr =( sf _{ ro _1, ro _2}, sf _{ ro _2, ro _1})\) that one may consider to be in execution in the \(MB\) society, should be taken as identical to its symmetrical \(fr ^{-1}=( sf _{ ro _2, ro _1}, sf _{ ro _1, ro _2})\). And none of the agents can be classified dominantly as a producer or as a consumer. Or, better, both should be taken to be producers and consumers.

7.3 Moral of the fable

The agents would at least be able to suspect how it was possible that they benefited from \(MB\) for such a long time (in spite of their ignorance about the internal functioning of \(MB\) and the existence of each other) if they had some knowledge about exchange process-based social mechanisms and the way such mechanisms perform social functions. Without such knowledge, they could certainly not avoid to consider the box really magic, perhaps operated by an invisible hand.

8 Case Study II: Bourdieu and Passeron’s analysis of the function of school systems in contemporary human societies

In this case study, we use the conceptualization introduced above to formally model the main elements of Bourdieu and Passeron’s analysis of the social function that the school system performs, as an essential functional component, in any contemporary human society.

The present case study is not a thought experiment, as that of the magic box. It is a more realistic case study, based on a classic text of the literature of social theory. Thus, to make justice to the complexity of the concepts involved, a presentation more extensive and detailed than the previous one was required.

8.1 Summary of Bourdieu and Passeron’s analysis of the social function of school systems

In the Preface of Bourdieu and Passeron (1990), Bourdieu and Passeron characterize in the following terms their functional analysis of the school systems:

[…] an involved analysis of the extremely sophisticated mechanisms by which the school system contributes to reproducing the structure of the distribution of cultural capital and, through it, the social structure (and this, only to the extent to which this relational structure itself, as a system of positional differences and distances depends on this distribution) […] (Preface of Bourdieu and Passeron 1990, p. vii)

Their analysis focuses on two subjects: in the first part of the book, the theory of the “symbolic violence” that underlies the way the school systems act on new generations; in the second part of the book, an empirical analysis of the way the French school system, operating through such symbolic violence, contributes to the reproduction of social structure of the French society.

We summarize that the instantiation of the general theory of the book to the school system of a particular society in the following set of structural and functional propositions:

  1. 1.

    The social structure of a contemporary society is a system of positional differences and distances assigned to the individuals of the society.

  2. 2.

    The school system of a contemporary society is part of the functional system of that society.

  3. 3.

    The main social function performed by the school system of a contemporary society is the distribution of the cultural capital of the society over its population, through the inculcation of dispositions in children and young people.

  4. 4.

    The social structure of a contemporary society is dependent on the way the cultural capital of the society is distributed over its population.

  5. 5.

    The school system of a contemporary society distributes the society’s cultural capital over the population of the society in a way that supports the reproduction of the social structure of the society.

8.2 Bourdieu’s concept of cultural capital

For completeness, and to add the understanding of the functional analysis of the school system, we summarize here Bourdieu’s conception of cultural capital (Bourdieu and Passeron 1990; Bourdieu 1979), the object whose distribution in the social structure is reproduced by the school system, as the social function that it performs to support the self-reproduction of that social structure.

Cultural capital concerns “the tools for the appropriation of cultural assets” (in the Abstract of Bourdieu 1979), such as works of art and science, tools and production machines, communication media, etc.

Cultural capital exists in three possible states: incorporated in individuals, objectified in cultural assets, and institutionalized in academic qualifications.

The main social function that a school system performs, for the society to which it belongs, deals with the incorporation of the cultural capital in individuals, in the form of permanent and lasting dispositions [“sous la forme des dispositions durables de l’organisme” (Bourdieu 1979, p. 3)].

By providing the incorporation of dispositions (capabilities, etc.) in individuals, the school system “reproduces” the cultural capital in the new individuals, that is, the young individuals that are entering the society to inhabit it.

Moreover, given that “the [cultural] capital itself is in a sense identified with individuals” (Abstract of Bourdieu 1979), and the school system reproduces the cultural capital in the individuals as they are distributed over the social structure of the society, the reproduction of the cultural capital in the individuals occurs in the context of the social structure, reproducing the cultural capital as it is distributed among the various social strata of the social structure.

And, by reproducing the dispositions typical of the individuals of each stratum of the social structure, it contributes to the reproduction of that very social structure.Footnote 14

8.3 Refining the populational structure of agent societies with a social hierarchy

An important element for any attempt to formally present Bourdieu and Passeron’s functional analysis of school systems is the formal definition of the concept of social structure, since that is the structure which commands the way the school system distributes the cultural capital over a society’s population.

In the model of agent society \(AgSoc ^t\) that we have summarized in Sect. 2, the populational structure \(Pop ^t\) is constituted by the set of agents \(Ag ^t\) and the set of exchange processes \(EP ^t\) that those agents perform, but no additional structure was superimposed on \(Pop ^t\), besides that determined by \(EP ^t\).

For the purpose of this case study, we have, then, to make use of Bourdieu’s concept of social structure, determined to be “a system of positional differences and distances assigned to the individuals of the society”, to refine the structure of \(Pop ^t\).

So, we add a social hierarchy to the populational structure of an agent society, and redefine it to be a structure \(Pop ^t_H=( Ag ^t, EP ^t, SocHier ^t, pos ^t)\) where:

  • The pair \(( Ag ^t, EP ^t)\) is a basic populational structure;

  • \(SocHier ^t=( SocLev ^t, soclev ^t,\le )\) is the social hierarchy of the agent society, that is, a partially ordered set of social levels that are assigned to the social roles \(Ro ^t\) of the agent society, such that:

    • \(SocLev ^t\) is a non-empty set of social levels, that may be assigned to the social roles;

    • \(soclev ^t: Ro ^t \rightarrow SocLev ^t\), is the function through which each social role \(ro \in Ro ^t\) is assigned a social level;

    • \(\le \; \subseteq SocLev ^t \times SocLev ^t\) is the partial ordering of the social levels, so that if \(soclev ^t( ro _1) \le soclev ^t( ro _2)\) we say that, at the time t, any agent \(ag _2\) that implements the social role \(ro _2\) is at least as high in the social hierarchy of the agent society as any agent \(ag _1\) that implements \(ro _1\);

    • In particular, if \(soclev ^t( ro _1) < soclev ^t( ro _2)\), we say that, at the time t, the agent \(ag _2\) has a higher social level than the agent \(ag _1\).

We define the social level of a social role \(ro \in Ro ^t\) as the number of social roles that are below it in the hierarchy of social levels \(SocHier ^t\), that isFootnote 15: \(level ^t( ro )=|\{ ro ' \in Ro ^t \mid soclev ^t( ro ') < soclev ^t( ro )\}|\).

We extend to the agents the social levels of the social roles that they implement: if an agent \(ag \in Ag ^t\) implements a social role \(ro \in Ro ~t\), and \(soclev ^t( ro )= sl \in SocLev ^t\), we say that \(sl\) is the social level of the agent \(ag\), at the time t.

Given a social level \(sl \in SocLev ^t\), we call social stratum of level \(sl\) the set of all agents that implement social roles that have the social level \(sl\). That is, \(socstrat _ sl =\{ ag \in Pop ^t \mid \exists ro \in Ro ^t [ imp ^t( ro , ag ) \wedge soclev ( ro ) = sl ]\}\).

Notice that the lowest possible social level, in a social hierarchy, is assigned the value 0 (zero), and that there is no highest possible social level, although, at any time t, there is one definite highest social level.

Notice also that the notion of social stratum defined above encompasses all the society to which it is applied, in the sense that it covers all the organizational sub-systems of that society. Whenever needed, one may define a limited notion of social stratum, that is, limited to the set of agents that implement a particular organizational sub-system.

For instance, one can formally identify the social strata of the agents that implement the school system. One can, then, relate them to the encompassing set of social strata, which covers all the organizational sub-systems of the society to which the school system belongs.

Finally, notice that, for simplicity, we have omitted, from this refinement of \(Pop ^t\), the stratification associated with the geographical distribution of the population, which Bourdieu’s concept of social structure also takes into account.

8.4 The school system as an EP-based social mechanism

In this and the next sub-sections, we construe school systems as EP-based social mechanisms, constituting core functional components of contemporary human societies.Footnote 16

From the perspective introduced in Sect. 4, the view of school systems as EP-based social mechanisms requires the identification of each of the \(CESM\) parts of their structure. For the functional modeling of school systems, however, only the parts that directly contribute to their relation to other organizational sub-systems, and to the societies as a whole, are relevant. We leave unspecified, then, both the C part (the components of the school system) and the S part (the internal relations through which the components of C relate to each other).

We concentrate, thus, on the E part (the external environment) and the M part (the activities performed by the components C, and the internal and external exchanges that they realize). But, on what concerns the social function performed by school systems, we need to take into account, from M, only the activities and exchanges that are relevant for their interaction with the external environment E. We denote by \(M_E\) the set of such activities and exchanges.

Formally, we take that in a school system of a contemporary society, modeled as an EP-based social mechanism, the following features hold, at each time t:

  • \(E^t\), the external environment of school system at the time t, is constituted just by the social structure \(Pop ^t_H\) of the society and by the cultural capital \(CultCap ^t\) of that society (a part of the symbolic environment \(SEnv ^t\) of the society), so that the external environment may be given in the restricted form \(E^t=( Pop ^t_H, CultCap ^t_H)\);

  • \(M^t_E\), the set of internal activities and external exchanges of the school system, which are most directly related to the social function that it performs, is constituted at the time t by:

    • \(IndInp ^t\) the input of individuals, through which the school system extracts individuals from the social strata of the society, to be inculcated with the cultural capital of the society, according to the social strata from which those individuals were extracted;

    • \(CCInclc ^t\) the inculcation of cultural capital, through which the school system inculcates in the individuals that have been input, the cultural capital of the society, according to the social strata of the society to which those individuals belong;

    • \(IndOut ^t\) the output of individuals, through which individuals that have gone through the inculcation process, inside the school system, are inserted back in the social structure of the society, according to the strata that their schooling allows;

    • \(CCInp ^t\) the input of cultural capital, through which the school system appropriates elements of the cultural capital of the society to inculcate them in the individuals that are being schooled, in accordance with the social strata from which those individuals were extracted, and to the social strata to which they are to be inserted in;

    • \(CCGen ^t\) the generation of cultural capital, through which the school system produces cultural capital, building on the cultural capital it has extracted from the society to inculcate in the individuals being schooled;

    • \(CCOut ^t\) the ouput of cultural capital, through which the school system adds to the cultural capital of the society the cultural elements that it has generated during the schooling process;

    so that:

    $$\begin{aligned} M^t_E=\{ IndInp ^t, CCIncl ^t, IndOut ^t, CCInp ^t, CCGen ^t, CCOut ^t\} \end{aligned}$$

A school system of a society \(AgSoc ^t\) realizes, thus, an EP-based social mechanism formally given by the structure \(SchSys ^t=(C^t,E^t,S^t,M^t_E)\), where:

  • \(C^t\) is the set of components of the school system, which is left undefined here;

  • \(E^t=( Pop ^t_H, CultCap ^t)\) is the environment of the school system, composed of the social structure and the cultural capital of the society;

  • \(S^t\) is the set of internal relations among the components of the school system, which is left undefined here;

  • \(M^t_E=\{ IndInp ^t, CCInclc ^t, IndOut ^t, CCApprp ^t, CCGen ^t, CCOut ^t\}\) is the set of activities and exchange processes defined above.

On the basis of this \(CESM\) model of the EP-based social mechanisms that the school systems realize in contemporary human societies, we may now proceed to give a formal account of the social function that such systems perform in those societies.

8.5 The social function of the school system

Clearly, Bourdieu and Passeron’s analysis determines that the school system of a society performs two social functions for that society, namely, the schooling of individuals and the production of elements of cultural capital.

Also, their analysis determines that a society performs two social functions for its school system. First, the social function involving the activities of selection of the cultural capital to be inculcated in individuals, the delivery of such cultural capital, and the incorporation of the elements of cultural capital that the schooling system produces, into the symbolic environment of the society.

And, second, the social function involving the activities of selection of individuals from the social hierarchy and the delivery of those individuals to the be input and schooled by the school system, as well as the insertion of the schooled individuals that are output by the school system, into appropriate strata of the social structure (that is, in social strata that correspond to the cultural capital that were inculcated in them by the school system).

We take, then, that the school system \(SchlSys ^t\) and its society \(AgSoc ^t\) establish between them two functional relations of the producer-consumer type, one concerning the schooling of individuals, the other concerning the production and use of cultural capital.

These two functional relations are given by:

$$\begin{aligned} frS ^t_{ SchlSys , AgSoc }=( sfS ^t_{ SchlSys , AgSoc }, sfS ^t_{ AgSoc , SchlSys }) \end{aligned}$$

and

$$\begin{aligned} frCC ^t_{ SchlSys , AgSoc }=( sfCC ^t_{ SchlSys , AgSoc }, sfCC ^t_{ AgSoc , SchlSys }) \end{aligned}$$

where:

  • \(frS ^t_{ SchlSys , AgSoc }\) is the functional relation concerned with the schooling of individuals;

  • \(frCC ^t_{ SchlSys , AgSoc }\) is the functional relation concerned with the production and use of cultural capital.

And we state that, at each time t:

  • \(sfS ^t_{ SchlSys , AgSoc }=\langle SchlSys ^t\!:\! CCInclc ^t\rangle \mathop {\dashrightarrow }\limits ^{ IndOut ^t} \langle AgSoc ^t\!:\! IncrpInd ^t\rangle\) so that:

    • The school system \(SchlSys ^t\), by realizing the activity \(CCIncl ^t\) of inculcation of cultural capital in the individuals that have been extracted from the social structure of \(AgSoc ^t\) and input to the school system,

    • Supports, through the exchange process \(IndOut ^t\) of output of schooled individuals to \(AgSoc ^t\),

    • The society \(AgSoc ^t\) in its realization of the activity \(IncrpInd\) of incorporating the schooled individuals into the social structure of the society, according to the cultural capital that have been inculcated in them.

  • \(sfS ^t_{ AgSoc , SchlSys }=\langle AgSoc ^t\!:\! IndSel ^t\rangle \mathop {\dashrightarrow }\limits ^{ IndInp ^t} \langle SchlSys ^t\!:\! CCIncl \rangle\) so that:

    • The society \(AgSoc ^t\), by realizing the activity \(IndSel ^t\) of selection of individuals to be input to the school system \(SchlSys ^t\), according to their distribution over the social structure of the society,

    • Supports, through the exchange process \(IndInp ^t\) of input of individuals to \(SchlSys ^t\),

    • The school system \(SchlSys ^t\) in its realization of the activity \(CCIncl\) of inculcation of cultural capital in the individuals that have been input to it.

  • \(sfCC ^t_{ SchlSys , AgSoc }=\langle SchlSys ^t\!:\! CCGen ^t\rangle \mathop {\dashrightarrow }\limits ^{ CCOut ^t} \langle AgSoc ^t\!:\! IncrpCC \rangle\) so that:

    • The school system \(SchlSys ^t\), by realizing the activity \(CCGen ^t\) of generation of elements of cultural capital during its process of inculcation of cultural capital in the individuals that it has input,

    • supports, through the exchange process \(CCOut ^t\) of output of elements of cultural capital to \(AgSoc ^t\),

    • The society \(AgSoc ^t\) in its realization of the activity \(IncrpCC\) of incorporation of elements of cultural capital that it receives from the school system \(SchlSys ^t\) into the cultural capital of the society;

  • \(sfCC ^t_{ AgSoc , SchlSys }=\langle AgSoc ^t\!:\! CCSel ^t\rangle \mathop {\dashrightarrow }\limits ^{ CCInp ^t} \langle SchlSys ^t\!:\! CCInclc \rangle\) so that:

    • The society \(AgSoc ^t\), by realizing the activity \(CCSel ^t\) of selection of cultural capital to be delivered to the school system,

    • Supports, through the exchange process \(CCInp ^t\) of input of cultural capital to \(SchlSys ^t\),

    • The school system \(SchlSys ^t\) in its realization of the activity \(CCInclc\) of inculcation of cultural capital in individuals input from the social structure of the society \(AgSoc ^t\).

Notice that, as mentioned in Sect. 5.2.1, an activity performed by a component of a system may be supported by more than one systemic function, performed by other components of the system. For instance, at each time t, the activity of inculcation of cultural capital \(CCInc ^t\), performed by the school system, is supported by the two social functions, \(sfS ^t_{ AgSoc , SchlSys }\) and \(sfCC ^t_{ AgSoc , SchlSys }\), performed by the society.

8.6 The architectural location of school systems

By architectural location of a social actor we understand the set of architectural levels ranged over by the implementation of the social actor. For instance, individuals are clearly located at the populational level (\(Pop\)), while families are located at the meso-organizational levels (\(Org _\mu\)), since their implementation encompasses individuals, organizational roles and at least one organizational unit (the family itself).

The formal presentation of Bourdieu and Passeron’s functional analysis of school systems, given above, allows us to make precise both the architectural location of school systems, in the societies to which they belong, and the form of their interaction with those societies.

We show the architectural location of a school system in a society, together with the form of its interaction with that society, as in Fig. 5, where the society is presented as an agent society according to the model defined in Sect. 2. Notice the following:

  • The figure shows the set of architectural levels ranged over by the implementation of the school system (from \(Pop\) to \(Org _\Omega\));

  • From the part of the symbolic environment that corresponds to the school system, the figure shows only the cultural capital, that is, the part that concerns to the content that has to be reproduced and distributed among the population of the society, not the part that corresponds to the symbolic components that are internal of the school system itself (which the components of the school system have to access, to operate the school system properly, like functional norms, educational procedures, etc.);

  • The school system is part of what we call the socialization sub-system of the societyFootnote 17;

  • The school system extends through all three organizational levels of the organizational structure of the society, from the micro-organizational to the macro-organizational levels.

Figure 5 also shows the flow of individuals through the school system as well as the access, by the school system, to the cultural capital part of the symbolic environment of the society (mainly to get cultural capital to inculcate in the individuals that flow through it, but possibly also to produce new cultural capital, e.g., in the case of higher-level education). Also, the figure shows that the individuals of the population make use of the cultural capital of the society, in their activities.

For simplicity, we do not separate in Fig. 5 the output flow of individuals of the school system into its two main components, namely, that of the successful individuals and that of the unsuccessful ones, as is done by  Bourdieu and Passeron (1990).

Also for simplicity, we consider in Fig. 5 only the cultural capital produced by the school system, not that produced by other organizational sub-systems of the society (e.g., religion, morality, artistic system, etc.), which Bourdieu and Passeron show to have a decisive influence on the results of the school system Bourdieu and Passeron (1990).

Fig. 5
figure 5

The flow of individuals and cultural capital, to and from the school system, in a contemporary society, modeled after Bourdieu and Passeron’s functional analysis Bourdieu and Passeron (1990)

Notice that the exchange processes that school systems perform with the other components of agent societies (the exchange of individuals, with the populational structure, and the exchange of elements of cultural capital, with the symbolic environment) are vertical exchange processes, in the sense that they traverse different architectural levels of the agent society.

And notice that it is through such vertical exchange processes, and through the cultural inculcation processes that they realize, that school systems turned out to become the main social mechanisms of reproduction of social hierarchies, according to Bourdieu and Passeron.

9 Related work

9.1 State of the art

To the best of our knowledge, there has been up to now no research dealing with an agent-based approach to the modeling of the functional aspects of either artificial or natural societies. Historically, the research on multiagent systems composed essentially of cognitive agents seems to have developed according to following approximate sequence of stages [see, e.g., the introduction to Costa 2016]:

  • Up to the late 1980’s, the research concentrated mostly on articulated sets of interacting agents: see papers in Weiss (1999);

  • 1990–2000, the research concentrated on systems of agents operating in social groups, implementing social roles: see, e.g., Ferber and Gutknecht (1998);

  • 2000–2010, the research concentrated on systems of agents operating in organizations, under social norms: see, e.g., Dignum (2009) and, more recently, Secchi and Neumann (2016);

  • Starting from 2010: a variety of higher-level social issues (cultural, political, moral, etc.) started to be researched: see, e.g., Dignum et al. (2010) and Acerbi et al. (2012).

The present paper inserts itself in the last tendency, searching for a functional account of those higher-level social issues.

9.2 Relation to Hedström and Swedberg’s typology of social mechanism

Mechanism-based explanations have been gaining momentum in social sciences at least since the 1970’s Hedström and Ylikoski (2010), mainly because mechanisms are the means to formally construe the details of the causal process that produce the phenomenon to be explained.

In the Introductory Essay to Hedström and Swedberg (1998), Hedström & Swedberg proposed a typology of social mechanisms, with three categories determined according to their position in the so-called “Coleman boat”:

  • Situational mechanisms, that allow the individuals, in the micro-level of the social system, to access the situation extant in the macro-level;

  • Action-formation mechanisms, that allow for the formation of actions at the micro-level;

  • Transformational mechanisms, that allow actions formed at the micro-level to affect the macro-level.

The EP-based social mechanisms that we are introducing here, however, are not tied to any specific level of the architectures of the agent societies where they may occur: they are relative to the architectural level at which occurs the exchange processes that constitutes the core of the mechanism. In particular, they can account for macro-macro level changes, for which Hedström and Swedberg’s typology admit no kind of mechanism.

9.3 Relation to social exchange theory

The concept of exchange process has long been a theme in social sciences. In the form we have been using it, the concept goes back at least to the social exchange theories of  Homans (1961) and Piaget (1995).

Combined with the concept of social network, networks of exchange processes Cook and Rice (2006) constitute a kind of social mechanism that, in its formal structure, is also independent of the architectural level at which the exchange processes occur, even though such feature seems not to have been sufficiently exploited, in the literature, which usually concentrates on micro-level exchange processes.

The concept of EP-based social mechanism introduced here, diverging from such more established model of network of exchange processes, is a specialization of Bunge’s \(CESM\) model Bunge (2014) and is rooted in the same type of agent-based system that we have been using in our work to formally account for agent societies.

9.4 Agent societies as semantic models for social sciences

In previous works, we developed a number of experiments in construing agent societies as semantic models to support the development of formal languages for social sciences.

Among the issues, conceptions and theoretical frameworks that we have treated were: Jean Piaget’s model of social exchanges (Costa 2013; Dimuro et al. 2011), ideology-theoretical approaches to religious syncretism  and multiculturalism (Costa 2016), Hans Kelsen’s theory of legal systems Costa (2015), and others.

And among the works we have developed, dealing with exchange process-based approaches to social functions are: Costa (2013), Costa and Dimuro (2008, 2010a, b, 2012), Costa et al. (1993) and Costa (2012).

10 Conclusion

This paper presented an exchange process-based (EP-based) approach to the macro functional aspects of agent societies, aiming to provide core operational elements for a functionalist approach to such societies.

Agent societies were treated as formal models applicable to both artificial and natural ones. The concepts of EP-based social mechanism and EP-base social functions were formally defined. Examples of application of those concepts to the functional modeling of components of agent societies were examined.

Exchange process-based functionalist accounts of social issues have the natural limitations of all functionalist accounts of systems: they concentrate on the normal operation of systems, focusing on the periodic processes that they perform, having no easy provision for dealing with deviations from such regularities. Thus, issues such as the emergence of novelties do not fit easily the presented concepts.

The complexity of the issues dealt with in the paper forced an important limitation, namely, all examples and some of concepts had to be treated schematically. It is hoped that the verbal explanations provided are enough for a good grasp of the ideas presented.

Also, space restricted the paper to the presentation of formal types for the functional structures that were considered, and prevented the presentation of a formal semantics, determining the dynamics of those functional structures. This, however, is work that should be developed in the near future.