Pub Date : 1993-06-19DOI: 10.1109/LICS.1993.287599
T. Nipkom
The complete development of a unification algorithm for so-called higher-order patterns, a subclass of lambda -terms, is presented. The starting point is a formulation of unification by transformation, and the result a directly executable functional program. In a final development step, the result is adapted to lambda -terms in de Bruijn's (1972) notation. The algorithms work for both simply typed and untyped terms. >
{"title":"Functional unification of higher-order patterns","authors":"T. Nipkom","doi":"10.1109/LICS.1993.287599","DOIUrl":"https://doi.org/10.1109/LICS.1993.287599","url":null,"abstract":"The complete development of a unification algorithm for so-called higher-order patterns, a subclass of lambda -terms, is presented. The starting point is a formulation of unification by transformation, and the result a directly executable functional program. In a final development step, the result is adapted to lambda -terms in de Bruijn's (1972) notation. The algorithms work for both simply typed and untyped terms. >","PeriodicalId":6322,"journal":{"name":"[1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science","volume":"18 1","pages":"64-74"},"PeriodicalIF":0.0,"publicationDate":"1993-06-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"85916378","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1993-06-19DOI: 10.1109/LICS.1993.287580
C. Ong
The pure untyped lambda calculus augmented with an (erratic) choice operator is considered as an idealised nondeterministic functional language. Both the 'may' and the 'must' modalities of convergence are of interest. Following Abramsky's (1991) work on domain theory in logical form, we identify the denotational type that captures the computational situation delta =P(( delta to delta ) perpendicular to ), where P(-) is the Plotkin power-domain functor. We then carry out a systematic programme that hinges on three distinct interpretations of delta , namely process-theoretic, denotational, and logical. The main theme of the programme is the complementarity of the various interpretations of delta . This work may be seen as a step towards a rapprochement between the algebraic theory of processes in concurrency on the one hand, and the lazy lambda calculus as a foundation for functional programming on the other.<>
带(不稳定的)选择运算符的纯无类型lambda演算被认为是一种理想的不确定性函数式语言。趋同的“可能”和“必须”模式都令人感兴趣。根据Abramsky(1991)在逻辑形式的域理论方面的工作,我们确定了表征类型,该类型捕获了计算情况delta =P((delta to delta)垂直于),其中P(-)是Plotkin幂域函子。然后,我们执行一个系统的程序,该程序依赖于对delta的三种不同解释,即过程论、指称和逻辑。该方案的主题是三角洲的各种解释的互补性。这项工作可以被看作是迈向和解的一步,一方面是并发过程的代数理论,另一方面是作为函数式编程基础的懒惰λ演算。
{"title":"Non-determinism in a functional setting","authors":"C. Ong","doi":"10.1109/LICS.1993.287580","DOIUrl":"https://doi.org/10.1109/LICS.1993.287580","url":null,"abstract":"The pure untyped lambda calculus augmented with an (erratic) choice operator is considered as an idealised nondeterministic functional language. Both the 'may' and the 'must' modalities of convergence are of interest. Following Abramsky's (1991) work on domain theory in logical form, we identify the denotational type that captures the computational situation delta =P(( delta to delta ) perpendicular to ), where P(-) is the Plotkin power-domain functor. We then carry out a systematic programme that hinges on three distinct interpretations of delta , namely process-theoretic, denotational, and logical. The main theme of the programme is the complementarity of the various interpretations of delta . This work may be seen as a step towards a rapprochement between the algebraic theory of processes in concurrency on the one hand, and the lazy lambda calculus as a foundation for functional programming on the other.<<ETX>>","PeriodicalId":6322,"journal":{"name":"[1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science","volume":"8 1","pages":"275-286"},"PeriodicalIF":0.0,"publicationDate":"1993-06-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"82565653","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1993-06-19DOI: 10.1109/LICS.1993.287579
W. Phoa
PCF is a simply typed lambda -calculus with ground types iota (natural numbers) and omicron (Booleans); there are no type variables and implies is the only type constructor. There is a natural way to translate any PCF term t into an untyped lambda -expression Lambda (t), such that if t is a program, i.e. a closed term of ground type (say integer type) and t implies /sub N/ n then Lambda (t) implies /sub beta / c/sub n/, where implies /sub N/ denotes call-by-name evaluation and c/sub n/ denotes the nth Church numeral. This paper contains a proof of the converse: if Lambda (t) implies /sub beta / c/sub n/ then t implies /sub N/ n; this tells us that the translation is adequate. The proof is semantic, and uses synthetic domain theory to reduce the question to the original Plotkin/Sazonov adequacy theorem for standard domain models of call-by-name PCF. This argument generalises easily to extensions of PCF which can be translated into the untyped lambda -calculus: we illustrate this by proving an analogous result for a 'second-order' PCF with type quantification. We also discuss how to extend the result to versions of PCF with recursive types and subtyping.<>
{"title":"Adequacy for untyped translations of typed lambda -calculi","authors":"W. Phoa","doi":"10.1109/LICS.1993.287579","DOIUrl":"https://doi.org/10.1109/LICS.1993.287579","url":null,"abstract":"PCF is a simply typed lambda -calculus with ground types iota (natural numbers) and omicron (Booleans); there are no type variables and implies is the only type constructor. There is a natural way to translate any PCF term t into an untyped lambda -expression Lambda (t), such that if t is a program, i.e. a closed term of ground type (say integer type) and t implies /sub N/ n then Lambda (t) implies /sub beta / c/sub n/, where implies /sub N/ denotes call-by-name evaluation and c/sub n/ denotes the nth Church numeral. This paper contains a proof of the converse: if Lambda (t) implies /sub beta / c/sub n/ then t implies /sub N/ n; this tells us that the translation is adequate. The proof is semantic, and uses synthetic domain theory to reduce the question to the original Plotkin/Sazonov adequacy theorem for standard domain models of call-by-name PCF. This argument generalises easily to extensions of PCF which can be translated into the untyped lambda -calculus: we illustrate this by proving an analogous result for a 'second-order' PCF with type quantification. We also discuss how to extend the result to versions of PCF with recursive types and subtyping.<<ETX>>","PeriodicalId":6322,"journal":{"name":"[1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science","volume":"25 1","pages":"287-295"},"PeriodicalIF":0.0,"publicationDate":"1993-06-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"80187907","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1993-06-19DOI: 10.1109/LICS.1993.287603
Kathleen Fisher, F. Honsell, John C. Mitchell
An untyped lambda calculus, extended with object primitives that reflect the capabilities of so-called delegation-based object-oriented languages, is presented. A type inference system allows static detection of errors, such as message not understood, while at the same time allowing the type of an inherited method to be specialized to the type of the inheriting object. Type soundness, in the form of a subject-reduction theorem, is proved, and examples illustrating the expressiveness of the pure calculus are presented.<>
{"title":"A lambda calculus of objects and method specialization","authors":"Kathleen Fisher, F. Honsell, John C. Mitchell","doi":"10.1109/LICS.1993.287603","DOIUrl":"https://doi.org/10.1109/LICS.1993.287603","url":null,"abstract":"An untyped lambda calculus, extended with object primitives that reflect the capabilities of so-called delegation-based object-oriented languages, is presented. A type inference system allows static detection of errors, such as message not understood, while at the same time allowing the type of an inherited method to be specialized to the type of the inheriting object. Type soundness, in the form of a subject-reduction theorem, is proved, and examples illustrating the expressiveness of the pure calculus are presented.<<ETX>>","PeriodicalId":6322,"journal":{"name":"[1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science","volume":"60 1","pages":"26-38"},"PeriodicalIF":0.0,"publicationDate":"1993-06-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"79782055","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1993-06-19DOI: 10.1109/LICS.1993.287586
M. Falaschi, M. Gabbrielli, K. Marriott, C. Palamidessi
A framework for the analysis of concurrent constraint programming (CCP) is proposed. The approach is based on simple denotational semantics that approximate the usual semantics in the sense that they give a superset of the input-output relation of a CCP program. Analyses based on these semantics can be easily and efficiently implemented using standard techniques from the analysis of logic programs.<>
{"title":"Compositional analysis for concurrent constraint programming","authors":"M. Falaschi, M. Gabbrielli, K. Marriott, C. Palamidessi","doi":"10.1109/LICS.1993.287586","DOIUrl":"https://doi.org/10.1109/LICS.1993.287586","url":null,"abstract":"A framework for the analysis of concurrent constraint programming (CCP) is proposed. The approach is based on simple denotational semantics that approximate the usual semantics in the sense that they give a superset of the input-output relation of a CCP program. Analyses based on these semantics can be easily and efficiently implemented using standard techniques from the analysis of logic programs.<<ETX>>","PeriodicalId":6322,"journal":{"name":"[1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science","volume":"320 1","pages":"210-221"},"PeriodicalIF":0.0,"publicationDate":"1993-06-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"75933121","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1993-06-19DOI: 10.1109/LICS.1993.287566
A. Joyal, M. Nielsen, G. Winskel
An abstract definition of bisimulation is presented. It allows a uniform definition of bisimulation across a range of different models for parallel computation presented as categories. As examples, transition systems, synchronization trees, transition systems with independence (an abstraction from Petri nets), and labeled event structures are considered. On transition systems, the abstract definition readily specialises to Milner's (1989) strong bisimulation. On event structures, it explains and leads to a revision of the history-preserving bisimulation of Rabinovitch and Traktenbrot (1988), and Goltz and van Glabeek (1989). A tie-up with open maps in a (pre)topos brings to light a promising new model, presheaves on categories of pomsets, into which the usual category of labeled event structures embeds fully and faithfully. As an indication of its promise, this new presheaf model has refinement operators, though further work is required to justify their appropriateness and understand their relation to previous attempts.<>
{"title":"Bisimulation and open maps","authors":"A. Joyal, M. Nielsen, G. Winskel","doi":"10.1109/LICS.1993.287566","DOIUrl":"https://doi.org/10.1109/LICS.1993.287566","url":null,"abstract":"An abstract definition of bisimulation is presented. It allows a uniform definition of bisimulation across a range of different models for parallel computation presented as categories. As examples, transition systems, synchronization trees, transition systems with independence (an abstraction from Petri nets), and labeled event structures are considered. On transition systems, the abstract definition readily specialises to Milner's (1989) strong bisimulation. On event structures, it explains and leads to a revision of the history-preserving bisimulation of Rabinovitch and Traktenbrot (1988), and Goltz and van Glabeek (1989). A tie-up with open maps in a (pre)topos brings to light a promising new model, presheaves on categories of pomsets, into which the usual category of labeled event structures embeds fully and faithfully. As an indication of its promise, this new presheaf model has refinement operators, though further work is required to justify their appropriateness and understand their relation to previous attempts.<<ETX>>","PeriodicalId":6322,"journal":{"name":"[1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science","volume":"1 1","pages":"418-427"},"PeriodicalIF":0.0,"publicationDate":"1993-06-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"73016963","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1993-06-19DOI: 10.1109/LICS.1993.287597
A. Pitts
A mixed induction/coinduction property of relations on recursively defined domains is described, working within a general framework for relations on domains and for actions of type constructors on relations introduced by P.W. O'Hearn and R.D. Tennent (1993), and drawing upon P.J. Freyd's analysis (1991) of recursive types in terms of a simultaneous initiality/finality property. The utility of the mixed induction/coinducton property is demonstrated by deriving a number of families of proof principles from it. One instance of the relational framework yields a family of induction principles for admissible subsets of general recursively defined domains which extends the principle of structural induction for inductively defined sets. Another instance of the framework yields the coinduction principle studied elsewhere by the author, by which equalities between elements of recursively defined domains may be proved via bisimulations.<>
{"title":"Relational properties of recursively defined domains","authors":"A. Pitts","doi":"10.1109/LICS.1993.287597","DOIUrl":"https://doi.org/10.1109/LICS.1993.287597","url":null,"abstract":"A mixed induction/coinduction property of relations on recursively defined domains is described, working within a general framework for relations on domains and for actions of type constructors on relations introduced by P.W. O'Hearn and R.D. Tennent (1993), and drawing upon P.J. Freyd's analysis (1991) of recursive types in terms of a simultaneous initiality/finality property. The utility of the mixed induction/coinducton property is demonstrated by deriving a number of families of proof principles from it. One instance of the relational framework yields a family of induction principles for admissible subsets of general recursively defined domains which extends the principle of structural induction for inductively defined sets. Another instance of the framework yields the coinduction principle studied elsewhere by the author, by which equalities between elements of recursively defined domains may be proved via bisimulations.<<ETX>>","PeriodicalId":6322,"journal":{"name":"[1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science","volume":"16 1","pages":"86-97"},"PeriodicalIF":0.0,"publicationDate":"1993-06-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"73030772","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1993-06-19DOI: 10.1109/LICS.1993.287592
A. Bouajjani, R. Echahed, J. Sifakis
The verification problem for real-time properties involving duration constraints (predicates) is addressed. The duration of a state property, along an interval of a computation sequence of a real-time system, is the time the property is true. In particular, the global time spent in such an interval is the duration of the formula 'true'. The real-time logic TCTL is extended to a duration logic called SDTL in which duration constraints can be expressed. The problem of the verification of SDTL formulas with respect to a class of timed models of reactive systems is investigated. New model checking procedures are proposed for the most significant properties expressible in SDTL, including eventuality and invariance properties. Such results are provided for the two cases of discrete and dense time.<>
{"title":"On model checking for real-time properties with durations","authors":"A. Bouajjani, R. Echahed, J. Sifakis","doi":"10.1109/LICS.1993.287592","DOIUrl":"https://doi.org/10.1109/LICS.1993.287592","url":null,"abstract":"The verification problem for real-time properties involving duration constraints (predicates) is addressed. The duration of a state property, along an interval of a computation sequence of a real-time system, is the time the property is true. In particular, the global time spent in such an interval is the duration of the formula 'true'. The real-time logic TCTL is extended to a duration logic called SDTL in which duration constraints can be expressed. The problem of the verification of SDTL formulas with respect to a class of timed models of reactive systems is investigated. New model checking procedures are proposed for the most significant properties expressible in SDTL, including eventuality and invariance properties. Such results are provided for the two cases of discrete and dense time.<<ETX>>","PeriodicalId":6322,"journal":{"name":"[1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science","volume":"1 1","pages":"147-159"},"PeriodicalIF":0.0,"publicationDate":"1993-06-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"90403320","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1993-06-19DOI: 10.1109/LICS.1993.287596
S. Brookes
Gives a new denotational semantics for a shared variable parallel programming language and proves full abstraction. The semantics gives identical meanings to commands if and only if they induce the same partial correctness behavior in all program contexts. The meaning of a command is a set of transition traces, which record the ways in which a command may interact with and be affected by its environment. It is shown how to modify the semantics to incorporate new program constructs, to allow for different levels of granularity or atomicity, and to model fair infinite computation, in each case achieving full abstraction with respect to an appropriate notion of program behavior.<>
{"title":"Full abstraction for a shared variable parallel language","authors":"S. Brookes","doi":"10.1109/LICS.1993.287596","DOIUrl":"https://doi.org/10.1109/LICS.1993.287596","url":null,"abstract":"Gives a new denotational semantics for a shared variable parallel programming language and proves full abstraction. The semantics gives identical meanings to commands if and only if they induce the same partial correctness behavior in all program contexts. The meaning of a command is a set of transition traces, which record the ways in which a command may interact with and be affected by its environment. It is shown how to modify the semantics to incorporate new program constructs, to allow for different levels of granularity or atomicity, and to model fair infinite computation, in each case achieving full abstraction with respect to an appropriate notion of program behavior.<<ETX>>","PeriodicalId":6322,"journal":{"name":"[1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science","volume":"26 1","pages":"98-109"},"PeriodicalIF":0.0,"publicationDate":"1993-06-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"82247994","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1993-06-19DOI: 10.1109/LICS.1993.287569
Søren Christensen, Y. Hirshfeld, F. Moller
The authors prove the decidability of two subclasses of recursive processes involving a parallel composition operator with respect to bisimulation equivalence, namely, the so-called normed and live processes. To accomplish this, the authors first prove a unique decomposition result for (a generalization of) normed processes, in order to deduce a necessary cancellation law. The decidability proof leads to a complete axiomatization for these process classes.<>
{"title":"Decomposability, decidability and axiomatisability for bisimulation equivalence on basic parallel processes","authors":"Søren Christensen, Y. Hirshfeld, F. Moller","doi":"10.1109/LICS.1993.287569","DOIUrl":"https://doi.org/10.1109/LICS.1993.287569","url":null,"abstract":"The authors prove the decidability of two subclasses of recursive processes involving a parallel composition operator with respect to bisimulation equivalence, namely, the so-called normed and live processes. To accomplish this, the authors first prove a unique decomposition result for (a generalization of) normed processes, in order to deduce a necessary cancellation law. The decidability proof leads to a complete axiomatization for these process classes.<<ETX>>","PeriodicalId":6322,"journal":{"name":"[1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science","volume":"4 1","pages":"386-396"},"PeriodicalIF":0.0,"publicationDate":"1993-06-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"85038015","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}