On the construction of multi-valued concurrent dynamic logic

by   Leandro Gomes, et al.

Dynamic logic is a powerful framework for reasoning about imperative programs. An extension with a concurrent operator [18] was introduced to formalise programs running in parallel. In other direction, other authors proposed a systematic method for generating multi-valued propositional dynamic logics to reason about weighted programs [14]. This paper presents the first step of combining these two frameworks to introduce uncertainty in concurrent computations. In the developed framework, a weight is assigned to each branch of the parallel execution, resulting in a (possible) asymmetric parallelism, inherent to fuzzy programming paradigm [21, 2]. By adopting such an approach, a family of logics is obtained, called multi-valued concurrent propositional dynamic logics (CGDL(A)), parametric on an action lattice A specifying a notion of "weight" assigned to program execution. Additionally, the validity of some axioms of CPDL is discussed in the new family of generated logics.



page 1

page 2

page 3

page 4


From Intuitionism to Many-Valued Logics through Kripke Models

Intuitionistic Propositional Logic is proved to be an infinitely many va...

A Separation Logic for Concurrent Randomized Programs

We present a concurrent separation logic with support for probabilistic ...

Disjunctive Axioms and Concurrent λ-Calculi: a Curry-Howard Approach

We add to intuitionistic logic infinitely many classical disjunctive tau...

Resource separation in dynamic logic of propositional assignments

We extend dynamic logic of propositional assignments by adding an operat...

Sequent-Type Calculi for Systems of Nonmonotonic Paraconsistent Logics

Paraconsistent logics constitute an important class of formalisms dealin...

Fuzzy propositional configuration logics

In order to be able to characterize quantitative properties such as the ...

Exploring the bidimensional space: A dynamic logic point of view

We present a family of logics for reasoning about agents' positions and ...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Over time, the different variations of dynamic logics developed went hand-in-hand with the very notion of its object, the program. This resulted in a diverse myriad of dynamic logics tailored to specific programming paradigms. Examples include probabilistic [11], concurrent [18], quantum [1] and continuous [19] computations, and combinations thereof. An example of another non-trivial paradigm is the fuzzy one [21, 2], where the execution of a program differs from both classical and probabilistic scenarios: a conditional statement may act as a concurrent execution with a weight associated to each branch. The formalisation of such behaviour encompasses two non-trivial computational settings: concurrency and uncertainty. An extensive research can be found in the literature on diverse formalisms to reason about programs running in parallel [9, 10] and to deal with uncertainty [11, 5, 20, 4]. However, even when these two components are combined into a single framework [16], the uncertainty models probabilistic nondeterminism. Thus we are still missing a proper semantics to describe the behaviour of the fuzzy paradigm.

Recently, reference [14] initiated a research agenda on the systematic development of multi-valued propositional dynamic logics, parametric on an action lattice, which defines both the computational paradigm where programs live, and the truth space where assertions are evaluated. Following another research line, an extension to propositional dynamic logic (PDL) was introduced in reference [18], called concurrent propositional dynamic logic (CPDL), to reason about concurrent computations. In the models presented for this logic, the programs are interpreted as binary multirelations, to describe a parallel execution from a state to a set of states.

Combining these research lines, this paper takes the first step on the development of a method to generate multi-valued concurrent propositional dynamic logics. As in [14], the logics are parametric on a generic action lattice, to model both the computational domain and a (possible graded) truth space where the assertions about programs are evaluated. First, the semantics of CPDL is adapted to model programs as weighted parallel executions, by introducing the concept of fuzzy multirelations

. That means that a program, in the new logics, is interpreted as a relation between a state and a fuzzy set of states. The intuition is that the weights of the fuzzy set may describe an execution probability of each branch of the program, an asymmetric parallel flow or even the energy/costs associated to each branch. The second step of this paper consists on presenting the actual method of generating (parametric) multi-valued CPDL. The family of the resulting logics is called


This paper is organised as follows. Section 2 presents a brief background overview. Then, Section 3 starts to introduce fuzzy multirelations and defines some operations over them. Such algebra is the mathematical formalism in which programs are interpreted in the generated logics. The same section ends with the study of an axiomatisation for the generated logics. Finally, Section 4 concludes and enumerates topics for future work.

2 Preliminaries

2.1 Semantics for concurrency

The semantics of CPDL is based on the concept of binary multirelation. The relevant definition and some operators are recalled below.

Definition 1 (Binary multirelation [7])

Given a set , a binary multirelation is a subset of the cartesian product

, i.e. a set of ordered pairs

, where and . The following operations over multirelations are defined:

  • as the union of and ;

  • the Peleg sequential composition

  • the parallel composition .

Note that the union of binary multirelations is just the set union. The sequential composition operator is rather more complex. A pair belongs to the sequential composition of multirelations and if and only if is related with some intermediate set of states and every must be related with some subset of such that the union of all those subsets is . Finally, an element indicates a parallel execution of a program from a state to a set of states in , “combining” the arriving states of and into . Note that such composition is dual to , where and correspond to distinct executions. The first kind of choice in commonly called demonic, while the latter is known as angelic.

2.2 Concurrent propositional dynamic logic

Concurrent propositional dynamic logic (CPDL), as introduced in [18], is an extension of PDL with a parallel operator added to the syntax of programs.The semantics interprets programs as binary multirelations , where composed programs are interpreted according to the operators of Definition 1. Intuitively, an element of a binary multirelation expresses that the a program executed from a state ends in all states of in parallel. Models of CPDL consist of tuples where is a set of states, is a valuation function which attributes a subset of to each atomic formula, and attributes a subset of to each atomic program. For instance, the formula holds in a state if and only if s.t. and . For more details about the semantics of CPDL see [18]. The axiom system of CPDL is that of PDL with the additional axiom and restricting to atomic programs.

2.3 Parametric construction of multi-valued dynamic logics

Thus subsection provides a short review of the dynamisation method introduced in [14]. Let us start by revisiting the following definition:

Definition 2 ([12])

An action lattice is a tuple , that is a residuated lattice with order induced by : iff , plus the axioms and .

An action lattice is called a -action lattice when the identity of the operator coincides with the greatest element of the residuated lattice, i.e. . Moreover, an action lattice is complete when every subset of has both supremum and infimum. Since operators and are associative, we can generalise them to -ary operators and use the notation and to represent their iterated versions, respectively. The generation of dynamic logics illustrated in the Section 3 will be parametric on the class of complete action lattices, since completeness is required to ensure the existence of arbitrary suprema. The general construction of multi-valued dynamic logics is revisited bellow.

Signatures. Signatures of are pairs corresponding to the denotations of atomic programs and propositions, respectively.

Formulæ. The set of composed programs, denoted by , contains all expressions generated by for . Given a signature , the -formulæ  for are the ones generated by the grammar for and .

Semantics. The space where the computations of are interpreted is given by the algebra where is the space of -matrices over , the operators , are the usual matrix sum and multiplication, respectively, ,

are the zero matrix and the identity matrix, respectively, and

* is the operator defined as in [3, 13]. The matrix representation of a program expresses, for each pair of states , , the weight (e.g. probability, cost, uncertainty) of the program going from to .

-models for a signature (,), denoted by , consists of tuples where is a finite set (of states), is a valuation function, and , with standing for the cardinality of .

The interpretation of a program in a model
is recursively defined, from the set of atomic programs , as .

Satisfaction. The (graded) satisfaction relation, for a model
, with complete, consists of a function
recursively defined as follows:

  • , for any

The (graded) satisfaction in a given state gives the degree of certainty of a formula in such state. For instance gives the certainty that is achieved from state through the execution of . It is relevant to note that is a generalisation of PDL, for each action lattice . In particular, by considering the Boolean lattice, the generated logic coincides with PDL.

3 Multi-valued concurrent dynamic logic

Before presenting the construction of the logic, we introduce the mathematical formalism to define the model where the programs will be interpreted.

3.1 Fuzzy binary multirelations

Definition 3 (Fuzzy set [22])

Given a set and a complete residuated lattice , a fuzzy subset of is a function ; defines the membership degree of in . The set of all fuzzy subsets of is denote as . The support of is a fuzzy subset such that , .

Since an action lattice is an extension of a residuated lattice, the concept of fuzzy set can be defined as well for the former. Such is the case for all the remaining formalisms introduced in this paper.

Definition 4 (Fuzzy binary multirelation)

Given a set and a complete action lattice over carrier , a fuzzy binary multirelation over is a set . The following operations for fuzzy binary multirelations are defined:

  • as the union of and ;

  • , where is the union of fuzzy sets and , as defined in [22];

  • .

We denote by the set of all fuzzy binary multirelations over .

Note, particularly, how this definition generalises the concept of binary multirelations, particularly to the role of lattice . This structure supports a set of truth values beyond the classical true and false, which are associated to the elements of the second component of . By using such formalisation we are able to model a program as an execution with multiple “arrows” leaving a state to a set of states in parallel, with a (possible different) fuzziness degree associated with each “arrow”.Note that if is the Boolean lattice , any fuzzy multirelation is a binary multirelation. Since the goal is still to model programs as binary input-output relations, only the binary case is considered, and thus the remaining of this paper refers to fuzzy binary multirelations simply as fuzzy multirelations. Another aspect that is relevant for the formalisation of the logics is the restriction to fuzzy multirelations where the fuzzy set in is defined such that , . In other words, we take only the support of fuzzy sets for the fuzzy multirelations considered in this paper.

The operations for fuzzy multirelations are interpreted buying intuitions from the classic definition. One such case is the operator , which corresponds to the classical set union. Regarding the sequential composition, the expression for computes the weight of an execution that starts from a state , arrives at a set of intermediate states and ends in a set of states . The parallel composition considers the union of fuzzy sets for computing the external choice, which is just a generalisation of the set union used for CPDL.

3.2 Parametric construction of multi-valued concurrent dynamic logics

Each complete action lattice induces a multi-valued, concurrent propositional dynamic logic , with weighted computations interpreted over . Its signature, formulæ, semantics and satisfacton are presented below.

Signatures. Signatures of are pairs corresponding to the denotations of atomic programs and propositions, respectively.

Formulæ. The set of composed programs, denoted by , consists of all expressions generated by , for . Given a signature , the -formulæ  for , denoted by
, are the ones generated by the grammar
, for and .

Semantics. The space where the programs are interpreted is given by the set of all fuzzy multirelations over a set of states , denoted by , and the operations over its elements, as in Definition 4.

-models for a signature are tuples where is a set of states, is a valuation function and attributes a fuzzy multirelation to each atomic program.

The interpretation of a program in a model is recursively defined as:


The satisfaction relation for a model is given by the valuation function recursively defined as:

  • , for any

where . We say that is valid when, for any model , and for each state , .

The satisfaction of formula is given by the weight of some fuzzy set which is related with state by some fuzzy multirelation, and that of for every state of the domain of . Moreover, the satisfaction for the box operator follows [14], where every execution of the program must lead to a set of states all of which satisfy .

As mentioned in Section 2, the axiomatisation of CPDL was presented as being that of PDL, except for one that is restricted to atomic programs, plus an additional axiom for concurrency. Below we study such axiomatisation in the new models presented for .

First, Lemma 1 provides some auxiliary properties used to prove next lemma.

Lemma 1

Let be a complete -action lattice. Then






Analogous to [14].

Lemma 2

Let be a a complete -action lattice. The following are valid formulæ  in any :









The proof uses the satisfaction function and some axioms and properties of action lattices. The technical details are documented in Appendix 0.A.

4 Conclusion

We took, in this paper, the first step in order to develop a rigorous and systematic formalism for the verification of weighted concurrent systems, motivated by the fuzzy case. The approach is based on the combination of some ideas from previous research [15, 18, 8] to characterise both the computational and logical settings on top of which a proper (axiomatic, denotational and operational) semantics for fuzzy programs will be developed, in future work.

There are numerous research lines that were left open and are worth to pursue in the near future. The most obvious is the study of a proper complete axiomatisation for the generated logics. In particular, the validity of the remaining axioms of CPDL, namely the ones involving operators and , will be analysed in the new models. Another relevant path to be followed would be to study the relations between PDL, CPDL and their graded variants. In one direction, we propose to investigate whether CPDL can be obtained from by taking as lattice. Other would be to study if there is a way to obtain multi-valued PDL as special case of , such that there is a correspondence between the operations for fuzzy multirelations and operations on matrices. Additionally, relevant results about decidability and complexity of the logics are naturally in our agenda.

Although we base our definition of sequential composition for fuzzy multirelations in that of Peleg, there are other versions of the operator worth to be analysed. One corresponds to the definition introduced for giving semantics to Parikh’s game logic [17]

It is clearly stronger than Peleg’s, since it requires that every intermediate state must be related with the arriving set of states . Another one, the Kleisli composition, was later studied in [6]. It is our goal to introduce proper generalisations of such operations, with possible applications in scenarios like a graded variant of game logics, as well as the development of axiomatic systems for each variation.

Finally, we propose to adapt the models of the generated logics in order to allow the introduction of assignments of variables to values in a given data domain. The goal is to develop (parametric) logics for the verification of programs written in a fuzzy imperative programming language, such as [21] or [2].


  • [1] Baltag, A., and Smets, S. The dynamic turn in quantum logic. Synthese 186, 3 (2012), 753–773.
  • [2] Cingolani, P., and Alcalá-Fdez, J. jfuzzylogic: a java library to design fuzzy logic controllers according to the standard for fuzzy control programming. Int. J. Comput. Intell. Syst. 6, sup1 (2013), 61–75.
  • [3] Conway, J. Regular Algebra and Finite Machines. Dover Publications, 1971.
  • [4] den Hartog, J., and de Vink, E. P. Verifying probabilistic programs using a Hoare like logic. Int. J. Found. Comput. Sci. 13, 3 (2002), 315–340.
  • [5] den Hartog, J. I. Probabilistic Extensions of Semantical Models. PhD thesis, Vrije Universiteit, Vrije, 2002.
  • [6] Furusawa, H., Kawahara, Y., Struth, G., and Tsumagari, N. Kleisli, Parikh and Peleg compositions and liftings for multirelations. J. Log. Algebr. Meth. Program. 90 (2017), 84–101.
  • [7] Furusawa, H., and Struth, G. Taming multirelations. ACM Trans. Comput. Log. 17, 4 (2016), 28:1–28:34.
  • [8] Gomes, L., Madeira, A., and Barbosa, L. S. Generalising KAT to verify weighted computations. Tech. rep., HASLab INESC TEC - Univ. of Minho, Portugal, Department of Informatics, 2018.
  • [9] Hoare, C. A. R., Möller, B., Struth, G., and Wehrman, I. Concurrent Kleene algebra. In CONCUR 2009. Proceedings (2009), M. Bravetti and G. Zavattaro, Eds., vol. 5710 of LNCS, Springer, pp. 399–414.
  • [10] Jipsen, P., and Moshier, M. A. Concurrent Kleene algebra with tests and branching automata. J. Log. Algebr. Meth. Program. 85, 4 (2016), 637–652.
  • [11] Kozen, D. A probabilistic PDL, 1985.
  • [12] Kozen, D. On action algebras. In Logic and the Flow of Information (Amsterdam, 1993).
  • [13] Kozen, D. A Completeness Theorem for Kleene Algebras and the Algebra of Regular Events. Information and Computation 110, May 1994 (1994), 366–390.
  • [14] Madeira, A., Neves, R., and Martins, M. A. An exercise on the generation of many-valued dynamic logics. JLAMP 1 (2016), 1–29.
  • [15] Madeira, A., Neves, R., Martins, M. A., and Barbosa, L. S. A dynamic logic for every season. In Formal Methods: Foundations and Applications. Proceedings (2014), C. Braga and N. Martí-Oliet, Eds., vol. 8941 of LNCS, Springer, pp. 130–145.
  • [16] McIver, A., Rabehaja, T. M., and Struth, G. Probabilistic concurrent Kleene algebra. In Proceedings QAPL. (2013), L. Bortolussi and H. Wiklicky, Eds., vol. 117 of EPTCS, pp. 97–115.
  • [17] Parikh, R. Propositional game logic. In 24th Annual Symposium on Foundations of Computer Science (1983), IEEE Computer Society, pp. 195–200.
  • [18] Peleg, D. Concurrent dynamic logic. J. ACM 34, 2 (1987), 450–479.
  • [19] Platzer, A. Logical Analysis of Hybrid Systems - Proving Theorems for Complex Dynamics. Springer, 2010.
  • [20] Qiao, R., Wu, J., Wang, Y., and Gao, X. Operational semantics of probabilistic Kleene algebra with tests. Proceedings - IEEE Symposium on Computers and Communications (2008), 706–713.
  • [21] Vetterlein, T., Mandl, H., and Adlassnig, K. Fuzzy arden syntax: A fuzzy programming language for medicine. Artificial Intelligence in Medicine 49, 1 (2010), 1–10.
  • [22] Zadeh, L. Fuzzy sets. Information and Control 8, 3 (1965), 338 – 353.

Appendix 0.A Appendix

The proofs here presented resort to some axioms of action lattices, enumerated below, and properties stated by Lemma 3.

Lemma 3

The following properties hold for any action lattice :


For finite, we also have


Proof of Lemma 2


Therefore, by Lemma 1, is valid.


Therefore, by Lemma 1, is valid.


Therefore, by Lemma 1, is valid.


Therefore, by Lemma 1, is valid.


Therefore, by Lemma 1, is valid.