Speech: Decoupling Social Logic via Action Language Semantics

Run-Time Semantics of a Language for Programming Social Processes

2009-01-01
Juan Manuel Serrano, Sergio Saugar
Summary
Problem
Method
Results
Takeaways
Abstract

The paper introduces "Speech," a specialized programming language for social processes (business processes, social networks, etc.) based on the C+ action description language. It formally defines the run-time semantics of a social middleware that manages interactions, agents, and social actions as first-class software connectors.

TL;DR

Is it possible to program "social behavior" as strictly as we program a CPU? This paper presents Speech, a programming language aimed at social processes. By leveraging the C+ action language, the authors formalize a social middleware that manages agents and interactions as modular, reusable components, effectively separating "how we interact" from "what we are."

The "Interaction vs. Computation" Conflict

In the world of Multi-Agent Systems (MAS), there is a classic struggle: Autonomy vs. Order.

Previous approaches often embedded social rules (norms, roles, hierarchies) directly into the agent's brain (e.g., BDI architectures). This creates a "leaky abstraction" where the social structure is hostage to the internal code of the software components. If you want to change the social rule (e.g., a new deadline for a conference), you shouldn't have to rewrite every agent's internal logic.

The authors argue that social processes should be first-class software connectors. Just as a pipe connects two processes in Unix, a "Social Interaction" should connect human and software agents, governed by an independent middleware.

Methodology: The C+ Backbone

The heart of this research lies in the Run-Time Semantics defined using the C+ action language. C+ is powerful because it handles causality rather than just state transitions.

1. Hierarchical Interactions (I)

The system views society as a tree. The "Research Community" is the root; "Conferences" are sub-interactions, and "Reviewing" is a leaf.

  • The Intuition: When a parent interaction (a conference) closes, the C+ causal laws automatically ripple down to close all sub-interactions (reviews). This is known as a ramification effect.

2. Role-Playing Agents (A)

Agents are not just "users"; they are roles within a context. A researcher plays the role of an "Author" in one interaction and a "PC Member" in another. Model Architecture Figure 1: A snapshot of the social entities—Interactions, Agents, and Resources.

3. Empowerment vs. Permission

This is a critical distinction in the methodology:

  • Empowerment: Can you physically/institutionally perform the action? (e.g., Is r1 an Author?)
  • Permission: Is it legally allowed at this moment? (e.g., Is the submission deadline passed?)

Formalizing the Middleware

The paper translates these concepts into C+ code. For example, the initiate action for an interaction ensures that the context is open, while the join action manages an agent's entry into a role.

The execution flow follows this logic:

  1. Exogenous Attempt: A software component tries to execute an action.
  2. Middleware Filter: The middleware checks for Empowerment.
  3. Result:
    • If unempowered: Action is ignored.
    • If empowered but not permitted: Action is marked as forbidden.
    • If both: Action is executed.

Experimental Validation: Conference Management

The authors tested their semantics using a conference management example. By defining specific subsorts for "Submitters" and "Reviews," they showed how complex social workflows can be built on top of the generic "Speech" core.

Experimental Results Figure 2: A transition system trace showing agents joining sessions and the resulting state changes.

Using the Causal Calculator (CCalc), the authors could query the system: "Is there a sequence of actions that leads to a paper being accepted?" This turns the social specification into a verifiable, searchable model.

Critical Insight & Future Outlook

While the formalization is rigorous, the authors admit a significant hurdle: Performance. CCalc relies on SAT solvers and grounding mechanisms that don't scale well to massive societies with thousands of agents.

However, the modular design is the true winner here. By organizing social rules into sub-interactions and subsorts, they've created a template for "Elaboration Tolerance"—the ability to add or change rules without breaking the entire system.

Conclusion: This paper moves us closer to a future where "Social Middleware" acts as the operating system for human-agent collaboration, providing a clean, logical API for the messy world of human social protocols.

References

  • Giunchiglia, E., et al. (2004). Nonmonotonic causal theories.
  • Serrano, J.M., & Saugar, S. (2007). Operational semantics of multiagent interactions.

Find Similar Papers

Try Our Examples

  • Search for recent papers that extend the C+ action description language or use CCalc for modeling normative multi-agent systems (NorMAS).
  • Which paper first proposed the concept of "Social Connectors" in software architecture, and how does the Speech language implementation compare to traditional connector taxonomies?
  • Explore research applying the principles of RESTful social middleware to modern decentralized social networks or Web 3.0 governance models.
Contents
Speech: Decoupling Social Logic via Action Language Semantics
1. TL;DR
2. The "Interaction vs. Computation" Conflict
3. Methodology: The C+ Backbone
3.1. 1. Hierarchical Interactions (I)
3.2. 2. Role-Playing Agents (A)
3.3. 3. Empowerment vs. Permission
4. Formalizing the Middleware
5. Experimental Validation: Conference Management
6. Critical Insight & Future Outlook
7. References