Efficient algorithms for program equivalence for confluent concurrent constraint programming

被引:0
|
作者
Pino, Luis F. [1 ,2 ]
Bonchi, Filippo [3 ]
Valencia, Frank [2 ,4 ]
机构
[1] INRIA, DGA, F-91128 Palaiseau, France
[2] Ecole Polytech, CNRS, LIX, UMR X 7161, F-91128 Palaiseau, France
[3] Univ Lyon, ENS Lyon, LIP, UMR 5668,CNRS,ENS Lyon,UCBL,INRIA, F-69364 Lyon, France
[4] Ecole Polytech, CNRS, F-91128 Palaiseau, France
关键词
Concurrent constraint programming; Bisimulation; Partition refinement; Observational equivalence; SEMANTICS; BISIMULATION; CALCULI;
D O I
10.1016/j.scico.2014.12.003
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Concurrent Constraint Programming (CCP) is a well-established declarative framework from concurrency theory. Its foundations and principles e.g., semantics, proof systems, axiomatizations, have been thoroughly studied for over the last two decades. In contrast, the development of algorithms and automatic verification procedures for CCP have hitherto been far too little considered. To the best of our knowledge there is only one existing verification algorithm for the standard notion of CCP program (observational) equivalence. In this paper we first show that this verification algorithm has an exponential-time complexity even for programs from a representative sub-language of CCP; the summation-free fragment (CCP\+). We then significantly improve on the complexity of this algorithm by providing two alternative polynomial-time decision procedures for CCP\+ program equivalence. Each of these two procedures has an advantage over the other. One has a better time complexity. The other can be easily adapted for the full language of CCP to produce significant state space reductions. The relevance of both procedures derives from the importance of CCP\+. This fragment, which has been the subject of many theoretical studies, has strong ties to first-order logic and an elegant denotational semantics, and it can be used to model real-world situations. Its most distinctive feature is that of confluence, a property we exploit to obtain our polynomial procedures. Finally, we also study the congruence issues regarding CCP's program equivalence. (C) 2015 Elsevier B.V. All rights reserved.
引用
收藏
页码:135 / 155
页数:21
相关论文
共 50 条
  • [21] Notes on timed concurrent constraint programming
    Nielsen, M
    Valencia, FD
    LECTURES ON CONCURRENCY AND PETRI NETS: ADVANCES IN PETRI NETS, 2004, 3098 : 702 - 741
  • [22] A Variant of Concurrent Constraint Programming on GPU
    Talbot, Pierre
    Pinel, Frederic
    Bouvry, Pascal
    THIRTY-SIXTH AAAI CONFERENCE ON ARTIFICIAL INTELLIGENCE / THIRTY-FOURTH CONFERENCE ON INNOVATIVE APPLICATIONS OF ARTIFICIAL INTELLIGENCE / THE TWELVETH SYMPOSIUM ON EDUCATIONAL ADVANCES IN ARTIFICIAL INTELLIGENCE, 2022, : 3830 - 3839
  • [23] Constraint programming and graph algorithms
    Mehlhorn, K
    AUTOMATA LANGUAGES AND PROGRAMMING, 2000, 1853 : 571 - 575
  • [24] Concurrent constraint programming with process mobility
    Gilbert, D
    Palamidessi, C
    COMPUTATIONAL LOGIC - CL 2000, 2000, 1861 : 463 - 477
  • [25] SiLCC is linear concurrent constraint programming
    Haemmerlé, M
    LOGIC PROGRAMMING, PROCEEDINGS, 2005, 3668 : 448 - 449
  • [26] Programming deep concurrent constraint combinators
    Schulte, C
    PRACTICAL ASPECTS OF DECLARATIVE LANGUAGES, 2000, 1753 : 215 - 229
  • [27] Dynamic Spaces in Concurrent Constraint Programming
    Olarte, Carlos
    Nigam, Vivek
    Pimentel, Elaine
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2014, 305 : 103 - 121
  • [28] Logical semantics of concurrent constraint programming
    Ruet, Paul
    Lecture Notes in Computer Science, 1118
  • [29] Timed default concurrent constraint programming
    Saraswat, V
    Jagadeesan, R
    Gupta, V
    JOURNAL OF SYMBOLIC COMPUTATION, 1996, 22 (5-6) : 475 - 520
  • [30] Universal timed Concurrent Constraint Programming
    Olarte, Carlos
    Palamidessi, Catuscia
    Valencia, Frank
    LOGIC PROGRAMMING, PROCEEDINGS, 2007, 4670 : 464 - +