Formalizing synthesis in TLA

This report proposes a TLA+ definition for the problem of constructing a strategy that implements a temporal property. It is based on a note by Lamport [1] that outlines a formalization of realizability in TLA. The modified definition proposed here is expressed axiomatically in TLA+. Specifying what function is acceptable as a strategy requires care, so that a function with empty domain be avoided, while ensuring that the strategy will not need to have a domain too large to be a set. We prove that initial conditions should appear in assumptions only, unless an initial predicate is added to the definition of a realization. We show that a specification should include an assumption about a set of initial values to ensure that realizability does not become unprovable. We discuss what form of open-system properties expressed with the “while- plus” operator -+-> are realizable. We formalize the notions of interleaving and disjoint-state behaviors, based on definitions given by Lamport and Abadi, and consider the notion of interleaving for an open-system property. We give examples of expressing different forms of games in TLA+ using the proposed definition, including games with partial information.

[1]  Martín Abadi An Axiomatization of Lamport's Temporal Logic of Actions , 1990, CONCUR.

[2]  T. Chow A beginner's guide to forcing , 2007, 0712.1320.

[3]  Lawrence Charles Paulson,et al.  Isabelle/HOL: A Proof Assistant for Higher-Order Logic , 2002 .

[4]  Hernán Vanzetto Proof automation and type synthesis for set theory in the context of TLA+. (Automatisation de preuves et synthèse de types pour la théorie des ensembles dans le contexte de TLA+) , 2014 .

[5]  Amir Pnueli,et al.  Bridging the gap between fair simulation and trace inclusion , 2005, Inf. Comput..

[6]  L. Lamport How to write a 21st century proof , 2012 .

[7]  Martín Abadi,et al.  Realizable and Unrealizable Specifications of Reactive Systems , 1989, ICALP.

[8]  Leslie Lamport,et al.  The temporal logic of actions , 1994, TOPL.

[9]  A. Leisenring Mathematical logic and Hilbert's ε-symbol , 1971 .

[10]  Leslie Lamport,et al.  Should your specification language be typed , 1999, TOPL.

[11]  Martín Abadi,et al.  An old-fashioned recipe for real time , 1994, TOPL.

[12]  Amir Pnueli,et al.  Synthesis of programs from temporal property specifications , 2009, 2009 7th IEEE/ACM International Conference on Formal Methods and Models for Co-Design.

[13]  Martín Abadi,et al.  Conjoining specifications , 1995, TOPL.

[14]  Stephan Merz,et al.  The Specification Language TLA , 2008 .

[15]  Amir Pnueli,et al.  Synthesis of Reactive(1) designs , 2006, J. Comput. Syst. Sci..

[16]  J. C. H.,et al.  Miscellany , 1888, Nature.

[17]  F. Stephan,et al.  Set theory , 2018, Mathematical Statistics with Applications in R.

[18]  Kenneth Kunen,et al.  Set Theory: An Introduction to Independence Proofs , 2010 .

[19]  Amir Pnueli,et al.  Synthesis of Reactive(1) Designs , 2006, VMCAI.