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 条
  • [1] A confluent calculus for concurrent constraint programming
    Marriott, K
    Odersky, M
    THEORETICAL COMPUTER SCIENCE, 1997, 173 (01) : 209 - 233
  • [2] Integrating efficient records into concurrent constraint programming
    Van, Roy, Peter
    Mehl, Michael
    Scheidhauer, Ralf
    Lecture Notes in Computer Science, 1140
  • [3] Algorithms and Constraint Programming
    Grandoni, Fabrizio
    Italiano, Giuseppe F.
    PRINCIPLES AND PRACTICE OF CONSTRAINT PROGRAMMING - CP 2006, 2006, 4204 : 2 - 14
  • [4] Truly concurrent constraint programming
    Gupta, V
    Jagadeesan, R
    Saraswat, VA
    THEORETICAL COMPUTER SCIENCE, 2002, 278 (1-2) : 223 - 255
  • [5] Soft concurrent constraint programming
    Bistarelli, Stefano
    Montanari, Ugo
    Rossi, Francesca
    ACM TRANSACTIONS ON COMPUTATIONAL LOGIC, 2006, 7 (03) : 563 - 589
  • [6] Confluence in concurrent constraint programming
    Falaschi, M
    Gabbrielli, M
    Marriott, K
    Palamidessi, C
    ALGEBRAIC METHODOLOGY AND SOFTWARE TECHNOLOGY, 1995, 936 : 531 - 545
  • [7] Confluence in concurrent constraint programming
    Falaschi, M
    Gabbrielli, M
    Marriott, K
    Palamidessi, C
    THEORETICAL COMPUTER SCIENCE, 1997, 183 (02) : 281 - 315
  • [8] Models for concurrent constraint programming
    Gupta, Vineet
    Jagadeesan, Radha
    Saraswat, Vijay
    Lecture Notes in Computer Science, 1996, 1119
  • [9] Mobile concurrent constraint programming
    Romero, N
    PARALLEL PROCESSING APPLIED MATHEMATICS, 2002, 2328 : 811 - 818
  • [10] Stochastic Concurrent Constraint Programming
    Bortolussi, Luca
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2006, 164 (03) : 65 - 80