We present a multiparty session type (MST) framework with asynchronous mixed choice (MC). We propose a core construct for MC that allows transient inconsistencies in protocol state between distributed participants, but ensures all participants can always eventually reach a mutually consistent state. We prove the correctness of our system by establishing a progress property and an operational correspondence between global types and distributed local type projections. Based on our theory, we implement a practical toolchain for specifying and validating asynchronous MST protocols featuring MC, and programming compliant gen_statem processes in Erlang/OTP. We test our framework by using our toolchain to specify and reimplement part of the amqp_client of the RabbitMQ broker for Erlang.
In this brief response to Tariq Modood's and Thomas Sealy's The New Governance of Religious Diversity, I consider whether it is possible to draw an analogy between the political science of democratisation and the authors' remarks on how religious regimes may change in one direction or another. To be more specific, democratisation theory can be roughly divided into three parts: analyses of democratic transition, consolidation and erosion. I consider whether there may be analogous processes of secular transition, consolidation and erosion which are worthy of investigation. I suggest that an account of such processes would be a valuable extension of the account of the transformations of religious regimes already presented in The New Governance of Religious Diversity.
Session subtyping answers the question of whether a program in a communicating system can be safely substituted for another, when their communication behaviour is described by session types. Asynchronous session subtyping is undecidable, even for two participants, hence the interest in sound, but incomplete, subtyping algorithms. Asynchronous multiparty subtyping can be formulated by decomposing session types into single input and output types which preclude, respectively, external and internal choice. This paper shows how abstract interpretation can sit atop this approach and how it leads to an algorithm that can prove subtyping for intricate communication patterns.
Dependent types provide users with the tools to embody specifications in types, with implementations carrying proofs that the specifications are met. One approach to developing programs in a dependently typed language develops such programs by enriching simply typed programs through a process of refactoring.
This scientific research aims to revolutionise the conventional lending process by providing a thorough framework for the creation of a blockchain-based lending platform. The framework provides improved transparency, automation, and risk assessment capabilities by merging Marlowe smart contracts, data science analytics, and transparent transaction recording on the Cardano blockchain. The article discusses and evaluates in detail the benefits, difficulties, and factors to be taken into account while putting such a framework into practice. In the conclusion, the suggested framework has the potential to expedite loan procedures, enhance decision-making, and promote confidence among financial ecosystem participants.
We present an interpreter for Erlang in Haskell, derived from a formal semantics for Core Erlang mechanised in Coq. The interpreter function is derived from the Coq inductive definitions that make up the semantics by extracting Haskell code from Gallina functions provably equivalent to the inductive definitions, and optimising the result. The semantics is inherently non-deterministic, and it is made deterministic by introducing a scheduler component; we also present a computation graph that shows all the non-deterministic choices that arise during computation. The paper concludes with an evaluation of the work and preliminary performance data.
We present an automated approach to checking whether a change to a repository is a refactoring, that is, it makes no change to the behaviour of the system. This is implemented in the EquivcheckEr tool, which detects the places in which the code has changed, and compares the old and newversions of all functions that are affected by the change, applying the functions to randomly generated inputs. Our tool works for projects written in Erlang, and so needs to deal with effectful as well as pure functions. We aim only to report inequivalence when we have concrete evidence to that effect, avoiding any "false positive" counterexamples.
This research compares and contrasts the capabilities, adoption barriers, and computing processes of the Flow and Cardano blockchains in detail. We investigate environmental sustainability, regulatory compliance, security, and scalability, as well as looking into data analysis, security enhancement, and quantum computing preparedness using computational approaches. Results demonstrate the distinct advantages and room for development of both platforms. Understanding how Flow and Cardano handle these issues is crucial for blockchain stakeholders in a quickly changing blockchain environment. Our study offers information that decision-makers, academics, and developers may use to better understand the trajectory of the blockchain ecosystem. We provide ideas for future study areas, innovations, and tactics to improve blockchain technology by examining the consequences of our analysis.
We present a small-step, frame stack style, semantics for sequential Core Erlang, a dynamically typed, impure functional programming language. The semantics and the properties that we prove are machine-checked with the Coq proof assistant. We improve on previous work by including exceptions and exception handling, as well as built-in data types and functions. Based on the semantics, we define multiple concepts of program equivalence (contextual, CIU equivalence, and equivalence based on logical relations) and prove that the definitions are all equivalent. Using this we are able to give a correctness criterion for refactorings by means of contextually equivalent symbolic expression pairs, which is one of the main motivations of this work.
This paper presents the formal semantics of concurrency in Core Erlang, an intermediate language for Erlang, along with a notion of program equivalence (based on barbed bisimulation) that is able to model equivalence between programs that have different communication structures but the same observable behaviour. The novelty in our formalisation is its extent: it includes semantics for messages and exit and link signals, in addition to most of Core Erlang’s sequential features. Furthermore, unlike previous studies, this work formalises message receipt using primitive operations, consistent with the standard as of Erlang/OTP 23. In this novel formalisation, we show some generally applicable program equivalences (such as process identifier renaming and silent evaluation) and present a practical case study featuring the equivalence of sequential and concurrent list processing.
Our aim in this article is to describe the normative structure of what we call multicultural secularism, and to make a case for this particular conception of state-religion relations. On our account, multicultural secularism is secular since it maintains an appropriate degree of autonomy of the state from religion, and of religion from the state. The state does not interfere unjustifiably in religious matters, and religious communities do not have an excessive influence on the state. At the same time, we believe that such mutual autonomy-and hence secularity-can be maintained even when the state provides religions with a range of forms of recognition and accommodation. It is in this sense that our conception of secularism is multicultural, since it takes multiculturalism's commitment to the positive valuing and recognition of difference and applies this specifically to religion. In this article, we intend to show why it should do so.
In this chapter, I take seriously Tariq Modood’s claim that an idea of recognition – and more particularly a politics of recognition – is key both to understanding multicultural societies and to articulating a normative justification of them. Thus, I ask what he understands by recognition, and I investigate the role that it plays in his thought. I also bring a critical perspective to bear on Modood’s account, questioning the clarity and coherence of his idea of recognition, and suggesting changes he might want to make so that it can play a more productive role in his work. To accomplish all of this, my discussion will revolve around four themes, which I shall refer to as equality, identity, struggle and inclusion. By focusing on these themes, my intention is to explicate Modood’s account of recognition as clearly as possible, to do so in a way which enables me to point to some limitations to his account, and to indicate what he might want to do to overcome these limitations.
A number of controversial aspects of the relationship between religion and the state are located in public space. Although burqa bans, the Swiss minaret ban, and duties to display crucifixes on public buildings are different in various ways, it is significant that they all take place in this particular type of location. However, when normative political theorists have addressed these issues, they have rarely paid sufficient attention to their spatial location, and, as a result, their analyses are lacking a vital dimension. This article shows what can go wrong when these normative analyses do not refer to an account of public space. It then indicates what part of a suitable account would look like by sketching four of its essential elements, referred to as the definition, distinctiveness, differentiation, and dynamism of public space. It is argued that normative political theorists should draw on aspects of such an account in order to achieve a more sophisticated understanding of issues concerning religion in public spaces, as well as to reach more securely grounded normative conclusions about them.
In the context of digital transformation in the financial industry, blockchain technology and smart contracts can play a significant role in streamlining and enhancing business processes. The research plan outlined in this paper aims to investigate the integration of blockchain to improve the digitization of business processes in the financial sector. By leveraging blockchain’s decentralized and secure nature, financial enterprises can increase the transparency and efficiency of their operations. Smart contracts can further enhance this by automating contract execution and eliminating the need for intermediaries, leading to cost savings and reduced processing time. Overall, the integration of blockchain and smart contracts can offer a powerful solution for digital transformation in the financial industry.
We aim to reason about the correctness of behaviour-preserving transformations of Erlang programs. Behaviour preservation is characterised by semantic equivalence. Based upon our existing formal semantics for Core Erlang, we investigate potential definitions of suitable equivalence relations. In particular we adapt a number of existing approaches of expression equivalence to a simple functional programming language that carries the main features of sequential Core Erlang; we then examine the properties of the equivalence relations and formally establish connections between them. The results presented in this paper, including all theorems and their proofs, have been machine checked using the Coq proof assistant.
In their thoughtful and thought-provoking article, Clayton Chin and Geoffrey Brahm Levey argue that a distinctive conception of recognition as acknowledgement can and should be used in order to achieve the symbolic inclusion of all members of multicultural democracies. In this response, I offer a number of critical - but I hope also constructive - remarks on a number of aspects of their thesis. First, I discuss the forms of acknowledgement which they identify. Second, I question the alleged distinctiveness of their conception of recognition as acknowledgement. Third, I consider the status and role of democracy and democratic deliberation in their argument. Fourth, I analyse their claim that struggles for recognition can be additive processes.
Existing models for the analysis of concurrent processes tend to focus on fail-stop failures, where processes are either working or permanently stopped, and their state (working/stopped) is known. In fact, systems are often affected by grey failures: failures that are latent, possibly transient, and may affect the system in subtle ways that later lead to major issues (such as crashes, limited availability, overload). We introduce a model of actor-based systems with grey failures, based on two interlinked layers: an actor model, given as an asynchronous process calculus with discrete time, and a failure model that represents failure patterns to inject in the system. Our failure model captures not only fail-stop node and link failures, but also grey failures (e.g., partial, transient). We give a behavioural equivalence relation based on weak barbed bisimulation to compare systems on the basis of their ability to recover from failures, and on this basis we define some desirable properties of reliable systems. By doing so, we reduce the problem of checking reliability properties of systems to the problem of checking bisimulation.
In November 2019, a conference was held at the University of Bristol to mark the twentieth anniversary of the Centre for the Study of Ethnicity and Citizenship. This special issue of Ethnicities brings together a set of articles by a number of the keynote speakers at that conference. By doing so, it celebrates the Centre's achievements over these two decades, reveals how the field has changed over the last twenty years, gives a good indication of the range of the Centre's current activities and also hints at some of the directions which it may take in the future.
John Howse合作论文数School of Computing, Mathematical and Information Sciences, University of Brighton6
Erik Poll合作论文数Digital Security (DS) group at the Institute for Computing and Information Sciences of the Radboud University Nijmegen.5
Martin Odersky合作论文数School of Computer and Communication Sciences, Swiss Federal Institute of Technology in Lausanne4
Eijiro Sumii合作论文数Graduate School of Information Sciences,Tohoku University4