skip to main content
10.1145/2370776.2370797acmotherconferencesArticle/Chapter ViewAbstractPublication PagesppdpConference Proceedingsconference-collections
research-article

From the π-calculus to flat GHC

Published: 19 September 2012 Publication History

Abstract

We formalize a translation of an asynchronous Pi-calculus into Flat GHC which does not disrupt too much the intuitive correspondence between them, specially in which regards names vs. logical variables. However, our approach depends on the introduction of some artifacts, namely channel managers. Contrasting other studies, here the communication between managers and other processes is asynchronous. Although this approach is justified by a relaxed notion of compositionality for process algebras, we still need some methodology that allows us to reason about programs in the presence of managers. We show how techniques from program transformation and a form of dynamic search strategy can cope with this. The encoding has been implemented in Haskell and executable programs are obtained from asynchronous Pi-calculus specifications by means of the KLIC compiler. Alternatively, we have developed in Prolog an interpreter for Flat GHC that has proven useful to analyze aspects of the translation.

Supplementary Material

ZIP File (ppdp45.zip)
File proofs.pdf is an appendix to the paper "From the Pi-calculus to Flat GHC" by Ruben Monjaraz and Julio Mariño, presented at PPDP2012. This appendix contains the main proofs of the theorems in the work above.

References

[1]
K. R. Apt. From logic programming to Prolog. Prentice-Hall, Inc., 1996. 2
[2]
G. Boudol. Asynchrony and the π-calculus (note). Technical Report 1702, INRIA Sophia-Antipolis, May 1992. 1, 3
[3]
T. Chikayama, T. Fujise, and D. Sekita. A portable and efficient implementation of kl1. In PLILP '94: Proceedings of the 6th International Symposium on Programming Language Implementation and Logic Programming, pages 25--39. Springer-Verlag, 1994. 2, 9
[4]
F. S. de Boer and C. Palamidessi. On the asynchronous nature of communication in concurrent logic languages: A fully abstract model based on sequences. In J. Baeten and J. Klop, editors, CONCUR 1990 Theories of Concurrency: Unification and Extension, volume 458 of LNCS, pages 99--114. Springer-Verlag, 1990. 1, 2
[5]
F. S. de Boer and C. Palamidessi. From concurrent logic programming to concurrent constraint programming. In Advances in logic programming theory, pages 55--113, NY, USA, 1994. Oxford University Press, Inc. 1, 2, 9
[6]
I. Foster and S. Taylor. Strand: a practical parallel programming tool. In Proc. North American Symp. on Logic Programming, pages 497--512. MIT Press, 1989. 9
[7]
J. H. Gallier. Logic for Computer Science: Foundations of Automatic Theorem Proving. Revised on-line version http://www.cis.upenn.edu/~jean/gbooks/logic.html, 2003. 4
[8]
J.-Y. Girard. Linear logic. Theoretical Computer Science, 50(1):1--102, 1987. 1
[9]
D. Gorla. Towards a unified approach to encodability and separation results for process calculi. In CONCUR 2008 - Concurrency Theory, volume 5201 of LNCS, pages 492--507. Springer-Verlag, 2008. 1, 2, 7
[10]
K. Hirata. π-calculus semantics of Moded Flat GHC. Technical Report ISRL-95-3, NTT Basic Research Laboratories, 1995. 1
[11]
K. Honda and M. Tokoro. An object calculus for asynchronous communication. In ECOOP '91: Proc. of the European Conference on Object-Oriented Programming, pages 133--147. Springer-Verlag, 1991. 1, 3
[12]
F. Knabe. A distributed protocol for channel-based communication with choice. Computers and Artificial Intelligence, 12(5):475--490, 1993. 2, 3
[13]
L. Leth and B. Thomsen. Some facile chemistry. Formal Aspects of Computing, 7(3):314--328, 1995. 2, 3
[14]
J.W. Lloyd. Foundations of logic programming. Springer-Verlag New York, Inc., New York, NY, USA, 1984. 2
[15]
R. Milner. Communication and concurrency. Prentice-Hall, 1989. 2
[16]
R. Milner. Communicating and Mobile Systems. Cambridge University Press, 1999. 1, 3
[17]
R. Monjaraz. From the π-calculus to Flat GHC. Master's thesis, Facultad de Informática, Universidad Politecnica de Madrid, Spain, 2010. 2
[18]
U. Nestmann. What is a "good" encoding of guarded choice? Inf.Comput., 156(1-2):287--319, 2000. 1, 3
[19]
U. Nestmann and B. C. Pierce. Decoding choice encodings. In CONCUR 1996: Concurrency Theory, number 119 in LNCS, pages 179--194. Springer-Verlag, 1996. 3
[20]
C. Palamidessi. Comparing the expressive power of the synchronous and asynchronous π-calculi. Mathematical. Structures in Comp. Sci., 13(5):685--719, 2003. 1, 7
[21]
C. Palamidessi, V. Saraswat, F. D. Valencia, and B. Victor. On the expressiveness of linearity vs persistence in the asynchronous π-calculus. In LICS '06: Proceedings of the 21st Annual IEEE Symposium on Logic in Computer Science, pages 59--68. IEEE Computer Society, 2006. 1, 9
[22]
J. Parrow. An introduction to the π-calculus. In J. Bergstra, A. Ponse, and S. Smolka, editors, Handbook of Process Algebra, pages 479--543. Elsevier, 2001. 1
[23]
A. Pettorossi and M. Proietti. Transformation of logic programs. In C. J. Hogger, D. M. Gabbay, and J. A. Robinson, editors, Handbook of Logic in Artificial Intelligence and Logic Programming, volume 5, pages 697--787. Oxford University Press, 1998. 7, 8
[24]
D. Sangiorgi and D. Walker. The π-calculus: A theory of mobile processes. Cambridge University Press, 2001. 3
[25]
V. Saraswat and P. Lincoln. Higher-order, linear, concurrent constraint programming. Technical report, Xerox PARC, 1992. 1, 9
[26]
V. A. Saraswat. Concurrent Constraint Programming. The MIT Press, 1993. 1, 9
[27]
E. Shapiro. The family of concurrent logic programming languages. ACM Comput. Surv., 21(3):413--510, 1989. 2, 4
[28]
E. Shapiro and C. Mierowsky. Fair, biased, and self-balancing merge operators: Their specification and implementation in Concurrent Prolog. In Concurrent Prolog: collected papers, volume 1, pages 392--413, Cambridge, MA, USA, 1987. MIT Press. 2, 4
[29]
P. Thati, K. Sen, and N. Martí-Oliet. An executable specification of asynchronous pi-calculus semantics and may testing in Maude 2.0. Electronic Notes in Theoretical Computer Science, 71:261--281, 2004. WRLA 2002, Rewriting Logic and Its Applications. 2
[30]
E. Tick. Parallel logic programming. MIT Press, Cambridge, MA, USA, 1991. 2
[31]
K. Ueda. Guarded horn clauses. In E. Wada, editor, Proc. Logic Programming '85, volume 221 of LNCS, pages 168--179. Springer- Verlag, 1986. 1, 2
[32]
K. Ueda. Resource-passing concurrent programming. In N. Kobayashi and B. C. Pierce, editors, Theoretical Aspects of Computer Software 2001, volume 2215 of LNCS, pages 95--126. Springer-Verlag, 2001. 1
[33]
K. Ueda. Constraint-based concurrency and beyond. In L. Aceto and A. Gordon, editors, Algebraic Process Calculi: The First Twenty Five Years and Beyond, number NS-05-3 in BRICS Notes Series, pages 168--179. BRICS, Department of Computer Science, University of Aarhus, 2005. 1
[34]
K. Ueda and K. Furukawa. Transformation rules for GHC programs. In Proc. of the Int'l Conf. on Fifth Generation Computer Systems 1988, Tokyo, Japan, pages 582--591. Springer-Verlag, 1988. 7
[35]
B. Victor and J. Parrow. Constraints as processes. In U. Montanari and V. Sassone, editors, Proc. of CONCUR 1996, volume 1119 of LNCS, pages 389--405. Springer-Verlag, 1996. 1
[36]
P. Viry. A rewriting implementation of pi-calculus. Technical report, University of Pisa, 1996. 2
[37]
P. Yang, C. R. Ramakrishnan, and S. A. Smolka. A logical encoding of the π-calculus: Model checking mobile processes using tabled resolution. In VMCAI 2003: Proceedings of the 4th International Conference on Verification, Model Checking, and Abstract Interpretation, volume 2575 of LNCS, pages 116--131. Springer-Verlag, 2003. 2

Cited By

View all
  • (2021)Session-based concurrency, declarativelyActa Informatica10.1007/s00236-021-00395-w59:1(1-87)Online publication date: 18-Mar-2021
  • (2015)Declarative interpretations of session-based concurrencyProceedings of the 17th International Symposium on Principles and Practice of Declarative Programming10.1145/2790449.2790513(67-78)Online publication date: 14-Jul-2015

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
PPDP '12: Proceedings of the 14th symposium on Principles and practice of declarative programming
September 2012
226 pages
ISBN:9781450315227
DOI:10.1145/2370776
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

  • Kuleuven Belgium: Kuleuven Belgium

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 19 September 2012

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. concurrent constraint programming
  2. concurrent logic programming
  3. encodability
  4. process algebra
  5. program transformation

Qualifiers

  • Research-article

Conference

PPDP'12
Sponsor:
  • Kuleuven Belgium

Acceptance Rates

Overall Acceptance Rate 230 of 486 submissions, 47%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 14 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2021)Session-based concurrency, declarativelyActa Informatica10.1007/s00236-021-00395-w59:1(1-87)Online publication date: 18-Mar-2021
  • (2015)Declarative interpretations of session-based concurrencyProceedings of the 17th International Symposium on Principles and Practice of Declarative Programming10.1145/2790449.2790513(67-78)Online publication date: 14-Jul-2015

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media