🤖 AI Summary
The decoupling of development and formal verification in multi-agent systems (MAS) hinders rigorous reliability assurance. Method: This paper introduces Soda—a dual-backend programming language supporting higher-order functional and object-oriented modeling, which compiles simultaneously to Scala (for engineering deployment) and Lean (for formal verification of interaction protocols). Contribution/Results: Soda enables co-development of MAS modeling, implementation, and mathematical proof within a unified linguistic framework—the first such integration. Leveraging Soda, we establish an end-to-end verifiable workflow for interaction protocols and mechanize machine-checkable proofs of critical properties—including protocol consistency—in Lean. Experimental evaluation identifies core challenges in industrial-scale MAS formal verification and delivers a novel language infrastructure that jointly ensures expressiveness and formal verifiability for trustworthy multi-agent systems.
📝 Abstract
This paper presents the Soda language for verifying multi-agent systems. Soda is a high-level functional and object-oriented language that supports the compilation of its code not only to Scala, a strongly statically typed high-level programming language, but also to Lean, a proof assistant and programming language. Given these capabilities, Soda can implement multi-agent systems, or parts thereof, that can then be integrated into a mainstream software ecosystem on the one hand and formally verified with state-of-the-art tools on the other hand. We provide a brief and informal introduction to Soda and the aforementioned interoperability capabilities, as well as a simple demonstration of how interaction protocols can be designed and verified with Soda. In the course of the demonstration, we highlight challenges with respect to real-world applicability.