Flow Logic
Flow networks have attracted a lot of research in computer science. Indeed, many questions in numerous application areas can be reduced to questions about flow networks. Many of these applications would benefit from a framework in which one can formally reason about properties of flow networks that go beyond their maximal flow. We introduce Flow Logics: modal logics that treat flow functions as explicit first-order objects and enable the specification of rich properties of flow networks. The syntax of our logic (Branching Flow Logic) is similar to the syntax of the temporal logic , except that atomic assertions may be flow propositions, like > γ or ≥γ, for γ∈, which refer to the value of the flow in a vertex, and that first-order quantification can be applied both to paths and to flow functions. We present an exhaustive study of the theoretical and practical aspects of , as well as extensions and fragments of it. Our extensions include flow quantifications that range over non-integral flow functions or over maximal flow functions, path quantification that ranges over paths along which non-zero flow travels, past operators, and first-order quantification of flow values. We focus on the model-checking problem and show that it is PSPACE-complete, as it is for . Handling of flow quantifiers, however, increases the complexity in terms of the network to P^ NP, even for the LFL and BFL fragments, which are the flow-counterparts of LTL and CTL. We are still able to point to a useful fragment of for which the model-checking problem can be solved in polynomial time. Finally, we introduce and study the query-checking problem for , where under-specified formulas are used for network exploration.
READ FULL TEXT