The blockchain is a novel approach to support distributed systems enabling a common, consistent view of a shared state among distributed nodes. There, smart contracts are computer programs that allow users to deploy arbitrary computations, in charge of automatically regulate state transitions and enforce properties. In this paper we speculate on how the blockchain and smart contracts could take advantage of a logic programming approach, and, complementarily, on how logic programming can benefit from the blockchain infrastructure. Accordingly, we discuss some possible research directions and open questions for future research.
Smart Contracts are More than Objects: Pro-activeness on the BlockchainGiovanni Ciatto
In this this paper we focus on the expressiveness of smart contracts (SC) and its role in blockchain technologies (BCT), by presenting Tenderfone, a prototypical blockchain platform providing SC as pro-active, time-aware, and asynchronous entities.
Towards Agent-oriented Blockchains: Autonomous Smart ContractsGiovanni Ciatto
Features of blockchain technology (BCT) such as decentralisation, trust, fault tolerance, and accountability, are of paramount importance for multi-agent systems (MAS). In this paper we argue that a principled approach to MAS-BCT integration cannot overlook the foundational character of agency—that is, autonomy. Accordingly, we present a custom BCT implementation where autonomy is placed in smart contracts (SC) interpreted as software agents. We show how agency can enhance SC expressiveness with autonomy, situatedness, sociality, and intelligence, and highlight the limitations of state-of-art BCT in supporting MAS design and implementation.
Blockchain & Smart Contracts Basics and Perspectives for MASGiovanni Ciatto
Blockchain technology (BCT) enables a common, consistent view of some shared state among agents in distributed systems. Smart contracts (SC) are an emerging computational model allowing users to deploy arbitrary computations on a blockchain-based system. Whereas BCT and SC are currently exploited mostly for financial transactions, identity management, and asset property tracking, they have the potential to positively affect the development of many research and technology areas, such as knowledge-intensive, agent-based, intelligent, and pervasive systems.
In this tutorial we introduce the main notions behind BCT and SC, and try to foresee a number of possible research directions which are of potential interest for the WOA community.
Using Blockchain as a Platform for Smart Cities. Christian Nãsulea, Stelian-M...eraser Juan José Calderón
Using Blockchain as a Platform for Smart Cities
Christian Nãsulea, Stelian-Mihai Mic University of Bucharest, Romania.
ABSTRACT: Objectives: Incorporating new technologies into the development of smart cities means rethinking the way
different services are provided. From this perspective, Blockchain might represent the future of both smart cities and smart
communities as it offers new alteratives for individuals and institutions.
Prior Work: Blockchain was mainly perceived through its linkage with bitcoin, but recent developments have started
exploring the idea of using it for financial transactions, logistics and securing contracts. Tapscott & Tapscott (2016)have
acknowledged the potential the Blockchain Revolution had on redefining the idea of trust in both digital and local communities.
Blockchain technology has the ability to enhance transparency of local and regional institutions while also making it easier
to communicate sensitive data without compromising security and privacy.
Approach: We look at the different fields blockchain can have an impact on and we try to assess the viability of moving
towards an integrated platform for intermediating day-to-day activities between both institutions and individuals. We will
assess the advantages of digitizing and securing public and private data while also considering the potential risks this
process might involve.
Results: We aim to create a model of how blockchain might work in communities and assess its impact on the overall
economic and human development indicators.
Implications: Public administrators in many countries are starting to acknowledge blockchain’s potential in solving problems
for local communities our results will be a valuable starting point for developing local initiatives for using blockchain as a
platform for communications and transactions. Furthermore, a smart city must be a city where individuals can interact and
solve their issues quickly, using digital technologies for increased efficiency.
Value: Blockchain is thought to be the future of managing both public and private affairs. Countries such as Dubai, Singapore
and China are incorporating blockchain technology into developing smart cities. Blockchain makes us rethink many of the
different aspects of how communities can be organized, offering new alternatives and promising a more transparent and
efficient economic model.
Keywords: Digital Era, Economic Model, IoT, Technology
Blockchain and smart contracts: infrastructure and platformsClaudio Di Ciccio
An introductory presentation on the main concepts of blockchain technologies, with a special focus on the smart contracts. The slides supported the talk held at the Cyber 4.0 Seminar on Cyber 4.0 Seminar on “Blockchain and Smart Contracts: Concepts and applications” on 2021-03-03, virtually hosted by the Sapienza University of Rome for the Cyber 4.0 Competence Centre.
Philosophy of Blockchain Technology - OntologiesNicolae Sfetcu
About the necessity and usefulness of developing a philosophy specific to the blockchain technology, emphasizing on the ontological aspects. After an Introduction that highlights the main philosophical directions for this emerging technology, in Blockchain Technology I explain the way the blockchain works, discussing ontological development directions of this technology in Designing and Modeling. The next section is dedicated to the main application of blockchain technology, Bitcoin, with the social implications of this cryptocurrency. There follows a section of Philosophy in which I identify the blockchain technology with the concept of heterotopia developed by Michel Foucault and I interpret it in the light of the notational technology developed by Nelson Goodman as a notational system. In the Ontology section, I present two developmental paths that I consider important: Narrative Ontology, based on the idea of order and structure of history transmitted through Paul Ricoeur's narrative history, and the Enterprise Ontology system based on concepts and models of an enterprise, specific to the semantic web, and which I consider to be the most well developed and which will probably become the formal ontological system, at least in terms of the economic and legal aspects of blockchain technology. In Conclusions I am talking about the future directions of developing the blockchain technology philosophy in general as an explanatory and robust theory from a phenomenologically consistent point of view, which allows testability and ontologies in particular, arguing for the need of a global adoption of an ontological system for develop cross-cutting solutions and to make this technology profitable.
Smart Contracts are More than Objects: Pro-activeness on the BlockchainGiovanni Ciatto
In this this paper we focus on the expressiveness of smart contracts (SC) and its role in blockchain technologies (BCT), by presenting Tenderfone, a prototypical blockchain platform providing SC as pro-active, time-aware, and asynchronous entities.
Towards Agent-oriented Blockchains: Autonomous Smart ContractsGiovanni Ciatto
Features of blockchain technology (BCT) such as decentralisation, trust, fault tolerance, and accountability, are of paramount importance for multi-agent systems (MAS). In this paper we argue that a principled approach to MAS-BCT integration cannot overlook the foundational character of agency—that is, autonomy. Accordingly, we present a custom BCT implementation where autonomy is placed in smart contracts (SC) interpreted as software agents. We show how agency can enhance SC expressiveness with autonomy, situatedness, sociality, and intelligence, and highlight the limitations of state-of-art BCT in supporting MAS design and implementation.
Blockchain & Smart Contracts Basics and Perspectives for MASGiovanni Ciatto
Blockchain technology (BCT) enables a common, consistent view of some shared state among agents in distributed systems. Smart contracts (SC) are an emerging computational model allowing users to deploy arbitrary computations on a blockchain-based system. Whereas BCT and SC are currently exploited mostly for financial transactions, identity management, and asset property tracking, they have the potential to positively affect the development of many research and technology areas, such as knowledge-intensive, agent-based, intelligent, and pervasive systems.
In this tutorial we introduce the main notions behind BCT and SC, and try to foresee a number of possible research directions which are of potential interest for the WOA community.
Using Blockchain as a Platform for Smart Cities. Christian Nãsulea, Stelian-M...eraser Juan José Calderón
Using Blockchain as a Platform for Smart Cities
Christian Nãsulea, Stelian-Mihai Mic University of Bucharest, Romania.
ABSTRACT: Objectives: Incorporating new technologies into the development of smart cities means rethinking the way
different services are provided. From this perspective, Blockchain might represent the future of both smart cities and smart
communities as it offers new alteratives for individuals and institutions.
Prior Work: Blockchain was mainly perceived through its linkage with bitcoin, but recent developments have started
exploring the idea of using it for financial transactions, logistics and securing contracts. Tapscott & Tapscott (2016)have
acknowledged the potential the Blockchain Revolution had on redefining the idea of trust in both digital and local communities.
Blockchain technology has the ability to enhance transparency of local and regional institutions while also making it easier
to communicate sensitive data without compromising security and privacy.
Approach: We look at the different fields blockchain can have an impact on and we try to assess the viability of moving
towards an integrated platform for intermediating day-to-day activities between both institutions and individuals. We will
assess the advantages of digitizing and securing public and private data while also considering the potential risks this
process might involve.
Results: We aim to create a model of how blockchain might work in communities and assess its impact on the overall
economic and human development indicators.
Implications: Public administrators in many countries are starting to acknowledge blockchain’s potential in solving problems
for local communities our results will be a valuable starting point for developing local initiatives for using blockchain as a
platform for communications and transactions. Furthermore, a smart city must be a city where individuals can interact and
solve their issues quickly, using digital technologies for increased efficiency.
Value: Blockchain is thought to be the future of managing both public and private affairs. Countries such as Dubai, Singapore
and China are incorporating blockchain technology into developing smart cities. Blockchain makes us rethink many of the
different aspects of how communities can be organized, offering new alternatives and promising a more transparent and
efficient economic model.
Keywords: Digital Era, Economic Model, IoT, Technology
Blockchain and smart contracts: infrastructure and platformsClaudio Di Ciccio
An introductory presentation on the main concepts of blockchain technologies, with a special focus on the smart contracts. The slides supported the talk held at the Cyber 4.0 Seminar on Cyber 4.0 Seminar on “Blockchain and Smart Contracts: Concepts and applications” on 2021-03-03, virtually hosted by the Sapienza University of Rome for the Cyber 4.0 Competence Centre.
Philosophy of Blockchain Technology - OntologiesNicolae Sfetcu
About the necessity and usefulness of developing a philosophy specific to the blockchain technology, emphasizing on the ontological aspects. After an Introduction that highlights the main philosophical directions for this emerging technology, in Blockchain Technology I explain the way the blockchain works, discussing ontological development directions of this technology in Designing and Modeling. The next section is dedicated to the main application of blockchain technology, Bitcoin, with the social implications of this cryptocurrency. There follows a section of Philosophy in which I identify the blockchain technology with the concept of heterotopia developed by Michel Foucault and I interpret it in the light of the notational technology developed by Nelson Goodman as a notational system. In the Ontology section, I present two developmental paths that I consider important: Narrative Ontology, based on the idea of order and structure of history transmitted through Paul Ricoeur's narrative history, and the Enterprise Ontology system based on concepts and models of an enterprise, specific to the semantic web, and which I consider to be the most well developed and which will probably become the formal ontological system, at least in terms of the economic and legal aspects of blockchain technology. In Conclusions I am talking about the future directions of developing the blockchain technology philosophy in general as an explanatory and robust theory from a phenomenologically consistent point of view, which allows testability and ontologies in particular, arguing for the need of a global adoption of an ontological system for develop cross-cutting solutions and to make this technology profitable.
Blockchain for Intelligent Systems: Research PerspectivesAndrea Omicini
We summarise and compare features of MAS and BCT, and discuss how they could be fruitfully integrated in the engineering of intelligent systems by adopting a long-term research perspective.
Blockchain technology and applications from a financial perspectiveVittorio Zinetti
This article aims at explaining the blockchain opportunity for the financial industry. First the fundamentals of technology is introduced, then possible application of blockchain to three financial use cases are presented.
Blockchain technology and applications from a financial perspectiveTommaso Pellizzari
Blockchain iniatives and projects are part of UniCredit digital agenda, which aims at leveraging on new technologies to reshape the Group and create new business opportunities. Unicredit white paper gives a presentation of the technology and enlightens the blockchain opportunity for the financial industry.
Comparative Analysis of Blockchain Technologies under a Coordination PerspectiveGiovanni Ciatto
Many research works apply blockchain technologies to several different application domains ranging from supply chain and logistics to healthcare and real-estate. There, nevertheless, the blockchain performs the same two core tasks: identity management and asset tracking. In this paper we analyse how the blockchain can be exploited beyond these traditional tasks, towards coordination of distributed processes. To this end, we design and develop proof-of-concept implementations of the Linda model on top of different blockchains, and compare their strengths and shortcomings.
In this article, I review recent studies on blockchains, crypto currencies, and initial coin offerings. I organize the research into two broad categories on the economics of decentralized ledger technologies and their impacts on the real economy. I also outline promising directions for future research in this area.
BLOCKCHAIN-BASED SMART CONTRACTS : A SYSTEMATIC MAPPING STUDY csandit
An appealing feature of blockchain technology is smart contracts. A smart contract is
executable code that runs on top of the blockchain to facilitate, execute and enforce an
agreement between untrusted parties without the involvement of a trusted third party. In this
paper, we conduct a systematic mapping study to collect all research that is relevant to smart
contracts from a technical perspective. The aim of doing so is to identify current research topics
and open challenges for future studies in smart contract research. We extract 24 papers from
different scientific databases. The results show that about two thirds of the papers focus on
identifying and tackling smart contract issues. Four key issues are identified, namely, codifying,
security, privacy and performance issues. The rest of the papers focuses on smart contract
applications or other smart contract related topics. Research gaps that need to be addressed in
future studies are provided.
A brief description of how Blockchain Technology works. It is the technology behind the cryptocurrency. The blockchain is an incorruptible digital ledger of economic transactions that can be programmed to record not just financial transactions but virtually everything of value.
Blockchain beyond fintech by ridgelift.ioUdayan Modhe
A comprehensive paper on blockchain technology. It covers blockchain technological aspects, blockchain evolution, future trends in blockchain implementation and reference architecture.
A gentle introduction to the Blockchain and Smart ContractsGiovanni Ciatto
Abstract: The blockchain is a novel approach to distributed systems enabling a common, consistent view of some shared state among distributed agents.
Smart contracts are an emerging computational model — heavily influenced by the object oriented one — allowing users to deploy arbitrary computations on a blockchain-based system.
They aim at automatically regulating (financial) interactions among individuals or organisations.
It turns out that smart contracts are essentially a novel way to perform State Machine Replication, also considering the economical aspects of computations.
Despite the very interesting applications envisioned for smart contracts — mostly related to finance, identity management or asset tracking — they are far from perfection because some characteristic traits like, for instance, semantic subtleties within the imperative code, lack control flow encapsulation, source code immutability, and so on.
In this talk we gently introduce the blockchain research area with a top-down approach, starting from a general overview of the blockchain's main elements, and moving towards a comprehensive tour of their inter-dependencies.
Finally, we present a number of research directions which are of interest for our team, mainly aimed at evaluating the consequences of combining the blockchain techonology and the smart contract abstraction with other programming paradigms and computational models.
An appealing feature of blockchain technology is smart contracts. A smart contract is executable code that runs on top of the blockchain to facilitate, execute and enforce an agreement between untrusted parties without the involvement of a trusted third party. In this paper, we conduct a systematic mapping study to collect all research that is relevant to smart contracts from a technical perspective. The aim of doing so is to identify current research topics and open challenges for future studies in smart contract research. We extract 24 papers from different scientific databases. The results show that about two thirds of the papers focus on identifying and tackling smart contract issues. Four key issues are identified, namely, codifying, security, privacy and performance issues. The rest of the papers focuses on smart contract applications or other smart contract related topics. Research gaps that need to be addressed in future studies are provided.
http://aircconline.com/ijcsit/V9N5/9517ijcsit11.pdf
A SYSTEMATIC MAPPING STUDY ON CURRENT RESEARCH TOPICS IN SMART CONTRACTSijcsit
An appealing feature of blockchain technology is smart contracts. A smart contract is executable code that runs on top of the blockchain to facilitate, execute and enforce an agreement between untrusted parties without the involvement of a trusted third party. In this paper, we conduct a systematic mapping study to collect all research that is relevant to smart contracts from a technical perspective. The aim of doing so is to identify current research topics and open challenges for future studies in smart contract research. We extract 24 papers from different scientific databases. The results show that about two thirds of the papers focus on identifying and tackling smart contract issues. Four key issues are identified, namely, codifying, security, privacy and performance issues. The rest of the papers focuses on smart contract applications or other smart contract related topics. Research gaps that need to be addressed in future studies are provided.
An appealing feature of blockchain technology is smart contracts. A smart contract is executable code that runs on top of the blockchain to facilitate, execute and enforce an agreement between untrusted parties without the involvement of a trusted third party. In this paper, we conduct a systematic mapping study to
collect all research that is relevant to smart contracts from a technical perspective. The aim of doing so is to identify current research topics and open challenges for future studies in smart contract research. We extract 24 papers from different scientific databases. The results show that about two thirds of the papers
focus on identifying and tackling smart contract issues. Four key issues are identified, namely, codifying, security, privacy and performance issues. The rest of the papers focuses on smart contract applications or other smart contract related topics. Research gaps that need to be addressed in future studies are provided.
An Abstract Framework for Agent-Based Explanations in AIGiovanni Ciatto
We propose an abstract framework for XAI based on MAS encompassing the main definitions and results from the literature, focussing on the key notions of interpretation and explanation.
2P-Kt: logic programming with objects & functions in KotlinGiovanni Ciatto
Mainstream programming languages nowadays tends to be more and more multi-paradigm ones, by integrating diverse programming paradigms -- e.g., object-oriented programming (OOP) and functional programming (FP). Logic-programming (LP) is a successful paradigm that has contributed to many relevant results in the areas of symbolic AI and multi-agent systems, among the others. Whereas Prolog, the most successful LP language, is typically integrated with mainstream languages via foreign language interfaces, in this paper we propose an alternative approach based on the notion of domain-specific language (DSL), which makes LP available to OOP programmers straightforwardly within their OO language of choice. In particular, we present a Kotlin DSL for Prolog, showing how the Kotlin multi-paradigm (OOP + FP) language can be enriched with LP in a straightforward and effective way. Since it is based on the interoperable 2P-Kt project, our technique also enables the creation of similar DSL on top of other high-level languages such as Scala or JavaScript -- thus paving the way towards a more general adoption of LP in general-purpose programming environments.
More Related Content
Similar to From the Blockchain to Logic Programming and back: Research perspectives
Blockchain for Intelligent Systems: Research PerspectivesAndrea Omicini
We summarise and compare features of MAS and BCT, and discuss how they could be fruitfully integrated in the engineering of intelligent systems by adopting a long-term research perspective.
Blockchain technology and applications from a financial perspectiveVittorio Zinetti
This article aims at explaining the blockchain opportunity for the financial industry. First the fundamentals of technology is introduced, then possible application of blockchain to three financial use cases are presented.
Blockchain technology and applications from a financial perspectiveTommaso Pellizzari
Blockchain iniatives and projects are part of UniCredit digital agenda, which aims at leveraging on new technologies to reshape the Group and create new business opportunities. Unicredit white paper gives a presentation of the technology and enlightens the blockchain opportunity for the financial industry.
Comparative Analysis of Blockchain Technologies under a Coordination PerspectiveGiovanni Ciatto
Many research works apply blockchain technologies to several different application domains ranging from supply chain and logistics to healthcare and real-estate. There, nevertheless, the blockchain performs the same two core tasks: identity management and asset tracking. In this paper we analyse how the blockchain can be exploited beyond these traditional tasks, towards coordination of distributed processes. To this end, we design and develop proof-of-concept implementations of the Linda model on top of different blockchains, and compare their strengths and shortcomings.
In this article, I review recent studies on blockchains, crypto currencies, and initial coin offerings. I organize the research into two broad categories on the economics of decentralized ledger technologies and their impacts on the real economy. I also outline promising directions for future research in this area.
BLOCKCHAIN-BASED SMART CONTRACTS : A SYSTEMATIC MAPPING STUDY csandit
An appealing feature of blockchain technology is smart contracts. A smart contract is
executable code that runs on top of the blockchain to facilitate, execute and enforce an
agreement between untrusted parties without the involvement of a trusted third party. In this
paper, we conduct a systematic mapping study to collect all research that is relevant to smart
contracts from a technical perspective. The aim of doing so is to identify current research topics
and open challenges for future studies in smart contract research. We extract 24 papers from
different scientific databases. The results show that about two thirds of the papers focus on
identifying and tackling smart contract issues. Four key issues are identified, namely, codifying,
security, privacy and performance issues. The rest of the papers focuses on smart contract
applications or other smart contract related topics. Research gaps that need to be addressed in
future studies are provided.
A brief description of how Blockchain Technology works. It is the technology behind the cryptocurrency. The blockchain is an incorruptible digital ledger of economic transactions that can be programmed to record not just financial transactions but virtually everything of value.
Blockchain beyond fintech by ridgelift.ioUdayan Modhe
A comprehensive paper on blockchain technology. It covers blockchain technological aspects, blockchain evolution, future trends in blockchain implementation and reference architecture.
A gentle introduction to the Blockchain and Smart ContractsGiovanni Ciatto
Abstract: The blockchain is a novel approach to distributed systems enabling a common, consistent view of some shared state among distributed agents.
Smart contracts are an emerging computational model — heavily influenced by the object oriented one — allowing users to deploy arbitrary computations on a blockchain-based system.
They aim at automatically regulating (financial) interactions among individuals or organisations.
It turns out that smart contracts are essentially a novel way to perform State Machine Replication, also considering the economical aspects of computations.
Despite the very interesting applications envisioned for smart contracts — mostly related to finance, identity management or asset tracking — they are far from perfection because some characteristic traits like, for instance, semantic subtleties within the imperative code, lack control flow encapsulation, source code immutability, and so on.
In this talk we gently introduce the blockchain research area with a top-down approach, starting from a general overview of the blockchain's main elements, and moving towards a comprehensive tour of their inter-dependencies.
Finally, we present a number of research directions which are of interest for our team, mainly aimed at evaluating the consequences of combining the blockchain techonology and the smart contract abstraction with other programming paradigms and computational models.
An appealing feature of blockchain technology is smart contracts. A smart contract is executable code that runs on top of the blockchain to facilitate, execute and enforce an agreement between untrusted parties without the involvement of a trusted third party. In this paper, we conduct a systematic mapping study to collect all research that is relevant to smart contracts from a technical perspective. The aim of doing so is to identify current research topics and open challenges for future studies in smart contract research. We extract 24 papers from different scientific databases. The results show that about two thirds of the papers focus on identifying and tackling smart contract issues. Four key issues are identified, namely, codifying, security, privacy and performance issues. The rest of the papers focuses on smart contract applications or other smart contract related topics. Research gaps that need to be addressed in future studies are provided.
http://aircconline.com/ijcsit/V9N5/9517ijcsit11.pdf
A SYSTEMATIC MAPPING STUDY ON CURRENT RESEARCH TOPICS IN SMART CONTRACTSijcsit
An appealing feature of blockchain technology is smart contracts. A smart contract is executable code that runs on top of the blockchain to facilitate, execute and enforce an agreement between untrusted parties without the involvement of a trusted third party. In this paper, we conduct a systematic mapping study to collect all research that is relevant to smart contracts from a technical perspective. The aim of doing so is to identify current research topics and open challenges for future studies in smart contract research. We extract 24 papers from different scientific databases. The results show that about two thirds of the papers focus on identifying and tackling smart contract issues. Four key issues are identified, namely, codifying, security, privacy and performance issues. The rest of the papers focuses on smart contract applications or other smart contract related topics. Research gaps that need to be addressed in future studies are provided.
An appealing feature of blockchain technology is smart contracts. A smart contract is executable code that runs on top of the blockchain to facilitate, execute and enforce an agreement between untrusted parties without the involvement of a trusted third party. In this paper, we conduct a systematic mapping study to
collect all research that is relevant to smart contracts from a technical perspective. The aim of doing so is to identify current research topics and open challenges for future studies in smart contract research. We extract 24 papers from different scientific databases. The results show that about two thirds of the papers
focus on identifying and tackling smart contract issues. Four key issues are identified, namely, codifying, security, privacy and performance issues. The rest of the papers focuses on smart contract applications or other smart contract related topics. Research gaps that need to be addressed in future studies are provided.
Similar to From the Blockchain to Logic Programming and back: Research perspectives (20)
An Abstract Framework for Agent-Based Explanations in AIGiovanni Ciatto
We propose an abstract framework for XAI based on MAS encompassing the main definitions and results from the literature, focussing on the key notions of interpretation and explanation.
2P-Kt: logic programming with objects & functions in KotlinGiovanni Ciatto
Mainstream programming languages nowadays tends to be more and more multi-paradigm ones, by integrating diverse programming paradigms -- e.g., object-oriented programming (OOP) and functional programming (FP). Logic-programming (LP) is a successful paradigm that has contributed to many relevant results in the areas of symbolic AI and multi-agent systems, among the others. Whereas Prolog, the most successful LP language, is typically integrated with mainstream languages via foreign language interfaces, in this paper we propose an alternative approach based on the notion of domain-specific language (DSL), which makes LP available to OOP programmers straightforwardly within their OO language of choice. In particular, we present a Kotlin DSL for Prolog, showing how the Kotlin multi-paradigm (OOP + FP) language can be enriched with LP in a straightforward and effective way. Since it is based on the interoperable 2P-Kt project, our technique also enables the creation of similar DSL on top of other high-level languages such as Scala or JavaScript -- thus paving the way towards a more general adoption of LP in general-purpose programming environments.
Towards XMAS: eXplainability through Multi-Agent SystemsGiovanni Ciatto
In the context of the Internet of Things (IoT), intelligent systems (IS) are increasingly relying on Machine Learning (ML) techniques. Given the opaqueness of most ML techniques, however, humans have to rely on their intuition to fully understand the IS outcomes: helping them is the target of eXplainable Artificial Intelligence (XAI). Current solutions – mostly too specific, and simply aimed at making ML easier to interpret – cannot satisfy the needs of IoT, characterised by heterogeneous stimuli, devices, and data-types concurring in the composition of complex information structures. Moreover, Multi-Agent Systems (MAS) achievements and advancements are most often ignored, even when they could bring about key features like explainability and trustworthiness. Accordingly, in this paper we (i) elicit and discuss the most significant issues affecting modern IS, and (ii) devise the main elements and related interconnections paving the way towards reconciling interpretable and explainable IS using MAS.
Edge Computing is rapidly gaining traction in scenarios such as Cyber-Physical Systems and Web of Things. Whereas the Cloud hides heterogeneity of devices behind its standard interfaces and protocols, the Edge should deal with it, as well as with openness and governing interactions. In this paper we propose TuSoW as a model and technology for bringing tuple-based coordination at the Edge.
Logic Programming in Space-Time: The Case of Situatedness in LPaaSGiovanni Ciatto
Situatedness is a fundamental requirement for today’s complex software systems, as well as for the computational models and programming languages used to build them. Spatial and temporal situatedness, in particular, are essential features for AI, enabling actors of the system to take autonomous decisions contextual to the space-time they live in. To support spatio-temporal awareness in distributed pervasive systems, we adopt the standpoint of Logic Programming (LP) by focussing on the Logic Programming as a Service (LPaaS) approach, promoting the distribution of situated intelligence. Accordingly, we provide an interpretation about what it means to make LP span across space and time, then we extend the LPaaS model and architecture towards spatio-temporal situatedness, by identifying a set of suitably-expressive spatio-temporal primitives.
Bitcoin, cripto-valute e altre applicazioni.
Descrizione bottom-up della tecnologia blockchain, partendo dal caso emblematico di Bitcoin e generalizzando fino agli Smart Contracts
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)MdTanvirMahtab2
This presentation is about the working procedure of Shahjalal Fertilizer Company Limited (SFCL). A Govt. owned Company of Bangladesh Chemical Industries Corporation under Ministry of Industries.
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...Amil Baba Dawood bangali
Contact with Dawood Bhai Just call on +92322-6382012 and we'll help you. We'll solve all your problems within 12 to 24 hours and with 101% guarantee and with astrology systematic. If you want to take any personal or professional advice then also you can call us on +92322-6382012 , ONLINE LOVE PROBLEM & Other all types of Daily Life Problem's.Then CALL or WHATSAPP us on +92322-6382012 and Get all these problems solutions here by Amil Baba DAWOOD BANGALI
#vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore#blackmagicformarriage #aamilbaba #kalajadu #kalailam #taweez #wazifaexpert #jadumantar #vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore #blackmagicforlove #blackmagicformarriage #aamilbaba #kalajadu #kalailam #taweez #wazifaexpert #jadumantar #vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore #Amilbabainuk #amilbabainspain #amilbabaindubai #Amilbabainnorway #amilbabainkrachi #amilbabainlahore #amilbabaingujranwalan #amilbabainislamabad
Student information management system project report ii.pdfKamal Acharya
Our project explains about the student management. This project mainly explains the various actions related to student details. This project shows some ease in adding, editing and deleting the student details. It also provides a less time consuming process for viewing, adding, editing and deleting the marks of the students.
Hierarchical Digital Twin of a Naval Power SystemKerry Sado
A hierarchical digital twin of a Naval DC power system has been developed and experimentally verified. Similar to other state-of-the-art digital twins, this technology creates a digital replica of the physical system executed in real-time or faster, which can modify hardware controls. However, its advantage stems from distributing computational efforts by utilizing a hierarchical structure composed of lower-level digital twin blocks and a higher-level system digital twin. Each digital twin block is associated with a physical subsystem of the hardware and communicates with a singular system digital twin, which creates a system-level response. By extracting information from each level of the hierarchy, power system controls of the hardware were reconfigured autonomously. This hierarchical digital twin development offers several advantages over other digital twins, particularly in the field of naval power systems. The hierarchical structure allows for greater computational efficiency and scalability while the ability to autonomously reconfigure hardware controls offers increased flexibility and responsiveness. The hierarchical decomposition and models utilized were well aligned with the physical twin, as indicated by the maximum deviations between the developed digital twin hierarchy and the hardware.
Cosmetic shop management system project report.pdfKamal Acharya
Buying new cosmetic products is difficult. It can even be scary for those who have sensitive skin and are prone to skin trouble. The information needed to alleviate this problem is on the back of each product, but it's thought to interpret those ingredient lists unless you have a background in chemistry.
Instead of buying and hoping for the best, we can use data science to help us predict which products may be good fits for us. It includes various function programs to do the above mentioned tasks.
Data file handling has been effectively used in the program.
The automated cosmetic shop management system should deal with the automation of general workflow and administration process of the shop. The main processes of the system focus on customer's request where the system is able to search the most appropriate products and deliver it to the customers. It should help the employees to quickly identify the list of cosmetic product that have reached the minimum quantity and also keep a track of expired date for each cosmetic product. It should help the employees to find the rack number in which the product is placed.It is also Faster and more efficient way.
Welcome to WIPAC Monthly the magazine brought to you by the LinkedIn Group Water Industry Process Automation & Control.
In this month's edition, along with this month's industry news to celebrate the 13 years since the group was created we have articles including
A case study of the used of Advanced Process Control at the Wastewater Treatment works at Lleida in Spain
A look back on an article on smart wastewater networks in order to see how the industry has measured up in the interim around the adoption of Digital Transformation in the Water Industry.
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdffxintegritypublishin
Advancements in technology unveil a myriad of electrical and electronic breakthroughs geared towards efficiently harnessing limited resources to meet human energy demands. The optimization of hybrid solar PV panels and pumped hydro energy supply systems plays a pivotal role in utilizing natural resources effectively. This initiative not only benefits humanity but also fosters environmental sustainability. The study investigated the design optimization of these hybrid systems, focusing on understanding solar radiation patterns, identifying geographical influences on solar radiation, formulating a mathematical model for system optimization, and determining the optimal configuration of PV panels and pumped hydro storage. Through a comparative analysis approach and eight weeks of data collection, the study addressed key research questions related to solar radiation patterns and optimal system design. The findings highlighted regions with heightened solar radiation levels, showcasing substantial potential for power generation and emphasizing the system's efficiency. Optimizing system design significantly boosted power generation, promoted renewable energy utilization, and enhanced energy storage capacity. The study underscored the benefits of optimizing hybrid solar PV panels and pumped hydro energy supply systems for sustainable energy usage. Optimizing the design of solar PV panels and pumped hydro energy supply systems as examined across diverse climatic conditions in a developing country, not only enhances power generation but also improves the integration of renewable energy sources and boosts energy storage capacities, particularly beneficial for less economically prosperous regions. Additionally, the study provides valuable insights for advancing energy research in economically viable areas. Recommendations included conducting site-specific assessments, utilizing advanced modeling tools, implementing regular maintenance protocols, and enhancing communication among system components.
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxR&R Consult
CFD analysis is incredibly effective at solving mysteries and improving the performance of complex systems!
Here's a great example: At a large natural gas-fired power plant, where they use waste heat to generate steam and energy, they were puzzled that their boiler wasn't producing as much steam as expected.
R&R and Tetra Engineering Group Inc. were asked to solve the issue with reduced steam production.
An inspection had shown that a significant amount of hot flue gas was bypassing the boiler tubes, where the heat was supposed to be transferred.
R&R Consult conducted a CFD analysis, which revealed that 6.3% of the flue gas was bypassing the boiler tubes without transferring heat. The analysis also showed that the flue gas was instead being directed along the sides of the boiler and between the modules that were supposed to capture the heat. This was the cause of the reduced performance.
Based on our results, Tetra Engineering installed covering plates to reduce the bypass flow. This improved the boiler's performance and increased electricity production.
It is always satisfying when we can help solve complex challenges like this. Do your systems also need a check-up or optimization? Give us a call!
Work done in cooperation with James Malloy and David Moelling from Tetra Engineering.
More examples of our work https://www.r-r-consult.dk/en/cases-en/
Explore the innovative world of trenchless pipe repair with our comprehensive guide, "The Benefits and Techniques of Trenchless Pipe Repair." This document delves into the modern methods of repairing underground pipes without the need for extensive excavation, highlighting the numerous advantages and the latest techniques used in the industry.
Learn about the cost savings, reduced environmental impact, and minimal disruption associated with trenchless technology. Discover detailed explanations of popular techniques such as pipe bursting, cured-in-place pipe (CIPP) lining, and directional drilling. Understand how these methods can be applied to various types of infrastructure, from residential plumbing to large-scale municipal systems.
Ideal for homeowners, contractors, engineers, and anyone interested in modern plumbing solutions, this guide provides valuable insights into why trenchless pipe repair is becoming the preferred choice for pipe rehabilitation. Stay informed about the latest advancements and best practices in the field.
The Benefits and Techniques of Trenchless Pipe Repair.pdf
From the Blockchain to Logic Programming and back: Research perspectives
1. From the Blockchain to Logic Programming and back
Research perspectives
Giovanni Ciatto1 Roberta Calegari1 Stefano Mariani2
Enrico Denti1 Andrea Omicini1
1
{roberta.calegari, giovanni.ciatto, enrico.denti,
andrea.omicini}@unibo.it
2
stefano.mariani@unimore.it
1Dipartimento di Informatica, Scienza e Ingegneria—Universit`a di Bologna
2Dipartimento di Scienze e Metodi dell’Ingegneria, Universit`a di Modena e Reggio Emilia
Talk @ 19th Workshop From Objects to Agents
Palermo, June 29, 2018
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 1 / 30
2. Outline
1 Motivations & Context
2 Blockchain and smart contracts
3 Logic-based smart contracts
4 The blockchain for distributed Logic Programming
5 Conclusions and future works
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 2 / 30
3. Motivations & Context
Next in Line. . .
1 Motivations & Context
2 Blockchain and smart contracts
3 Logic-based smart contracts
4 The blockchain for distributed Logic Programming
5 Conclusions and future works
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 3 / 30
4. Motivations & Context
Context
Blockchain Technology (BCT)
Novel way to achieve replication of business-logic & data on the net
consistency, untamperability, fault-tolerance, trust over decentralisation
eg cryptocurrencies (e.g. Bitcoin) or identity/access/asset management
Smart-contracts-enabled BCT (ScBCT)
An interpreter as the replicated application, executing smart contracts
ie trusted computational entities automatically handling our assets
Ethereum as the most prominent example
Logic programming (LP)
Programming as goal-oriented reasoning, on top of declarative language
supports meta-programming and provides understandable outputs (proofs)
employed in cognitive agents, e.g. AgentSpeak [Rao96]
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 4 / 30
5. Motivations & Context
Motivations
Can LP be useful within the scope of ScBCTs?
LP may positively affect smart contracts’
declarativeness, observability and mutability . . .
interaction semantics, through message-passing . . .
. . . paving the way towards agent-oriented smart contracts
Can BCTs be useful within the scope of LP?
BCTs as a shared blackboard for distributed cooperative reasoning
Smart contracts as logic services, `a la LPaaS [CDMO18]
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 5 / 30
6. Blockchain and smart contracts
Next in Line. . .
1 Motivations & Context
2 Blockchain and smart contracts
3 Logic-based smart contracts
4 The blockchain for distributed Logic Programming
5 Conclusions and future works
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 6 / 30
7. Blockchain and smart contracts Overview
Blockchain & Smart contracts Overview
ScBCT consist of a P2P network jointly pursuing State Machine
Replication (SMR) [CBPS10, Sch90]
maintaining a consistent view/update over/of a shared state . . .
. . . among mutually-untrusted nodes, a.k.a. miners
replicating an interpreter, i.e. a virtual machine, for smart contracts
by means of the
PoW
Proof-of-Work [Bac02, Nak08] consensus mechanism
providing eventual consistency of the whole system state
endowing cryptocurrencies with their economic value
logging all transactions affecting the shared state on the block-chain
issued by end users
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 7 / 30
8. Blockchain and smart contracts State, transactions & blocks
Blockchain main concepts I
TXs
hash( )
Index i-1
Timestamp
TXs
hash( )
Index i
Timestamp
TXs
hash( )
Index i+1
Timestamp
Statei-1 Statei Statei+1
States, transactions and blocks: the global p.o.v.
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 8 / 30
9. Blockchain and smart contracts State, transactions & blocks
Blockchain main concepts II
Transactions
Blocks
Blockchain
Miners
Clients
Miners, clients and replication: the network p.o.v.
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 9 / 30
10. Blockchain and smart contracts Smart contracts
Smart contracts [Sza96]
Definition
Stateful, reactive, user-defined, immutable, and deterministic processes
executing some arbitrary computation on the blockchain, i.e., while being
consistently replicated over the blockchain network
Stateful — they encapsulate their own state, like OOP’s objects
Reactive — they can only be triggered by issuing some invocation TX
User-defined — users can deploy their smart contracts implementing an
arbitrary logic by issuing a deployment TX
Immutable — their source/byte-code cannot be altered after deployment
Arbitrary — they are expressed with a Turing-complete language
Replicated — the blockchain is essentially a replicated interpreter, employing
a consensus protocol to keep the many replicas consistent
! Disclaimer: focus on the Ethereum platform
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 10 / 30
11. Blockchain and smart contracts Smart contracts
Smart contracts – Features and problems
State encapsulation + sync. interaction + transactional semantics
Object-oriented & imperative metaphor, e.g. Solidity
Side effects are reverted on exceptions
× problems arising from re-entrancy [LCO+16, LL17]
× imperative syntax is understandable to experts only
Immutability + observability of code =⇒ Trust in financial TXs
× may require disassembler or source code
Economic dimension of computations: miners need compensation
quasi-Turing completeness [Woo14]
× per-instruction economic-cost may hinder SW engineering
× Immutability =⇒ No bug fixes
× Pure reactiveness =⇒ No scheduled/periodic computations
× poor practical expressiveness
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 11 / 30
12. Blockchain and smart contracts Smart contracts
Smart contracts on the blockchain I
TXs
hash( )
Index i-1
Timestamp
TXs
hash( )
Index i
Timestamp
TXs
hash( )
Index i+1
Timestamp
Statei-1 Statei Statei+1
Smart contracts being deployed and evolving among states
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 12 / 30
13. Blockchain and smart contracts Smart contracts
Smart contracts on the blockchain II
Transactions
Blocks
Blockchain
Miners
Clients
Smart contracts
Smart contracts being replicated among peers
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 13 / 30
14. Logic-based smart contracts
Next in Line. . .
1 Motivations & Context
2 Blockchain and smart contracts
3 Logic-based smart contracts
4 The blockchain for distributed Logic Programming
5 Conclusions and future works
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 14 / 30
15. Logic-based smart contracts
Logic-based smart contracts
Smart contracts are re-interpreted as logic processes characterised by:
Logic theories as specification scripts
=⇒ Declarativeness & understandability
Strong division between static & dynamic KBs
Static KB defined upon deploy and immutable
Dynamic KB keeping track of the mutable state
=⇒ Controlled mutability by adding/removing rules
Special functors define smart contracts interaction semantics API
eg receive(Message) :- WhatToDo.
eg send(Message, Receiver).
send(M, R) triggers goal receive(Message) on R
TX is aborted if the goal cannot be proven
! Miners role, consensus mechanism, and transactional semantics remain unchanged
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 15 / 30
16. Logic-based smart contracts
Features and open questions
Interpreted Language & mutability =⇒ observability
State and behaviour inspectable without disassembler
Controlled mutability: a smart contract modifying it-self
(Inspectable) behaviour may be added/fixed after deploy
? Which semantics for inter-smart-contracts communication?
! Sync VS async semantics of the send/2 primitive
Async semantics =⇒ encapsulation of control flow
? Delayed messages for post-poned computations
Self-sent messages for periodic computations
Only makes sense for the async semantics
? Economic-related aspects of (logic-based) computation
Who’s paying for message-triggered computations?
Which value for unification? back-tracking? asserts? retracts? . . .
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 16 / 30
17. Logic-based smart contracts
Sync VS Async I
Invocation TX
Method Call
Return from Call
End of TX
hash( )
Index i
Timestamp
TX
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 17 / 30
18. Logic-based smart contracts
Sync VS Async II
Invocation TX
Message TX
Message TX
Message TX
hash( )
Index i
Timestamp
hash( )
Index i+2
Timestamp
hash( )
Index i+3
Timestamp
hash( )
Index i+1
Timestamp
TX TX TX TX
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 18 / 30
19. The blockchain for distributed Logic Programming
Next in Line. . .
1 Motivations & Context
2 Blockchain and smart contracts
3 Logic-based smart contracts
4 The blockchain for distributed Logic Programming
5 Conclusions and future works
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 19 / 30
20. The blockchain for distributed Logic Programming The blockchain as a Logic Theory
The blockchain as a Logic Theory
BCTs essentially provide consistent read/write access to distributed data
What if data were logic terms?
The whole blockchain represents (the evolution of) a logic theory
Clients may issue goals to the blockchain network
or asserting/retracting shared knowledge
Miners may cooperatively participate to the SLD resolution process
Navigating the proof-three in parallel
ie publishing partial results on the blockchain
? Economical incentives for a fair balancing of computational efforts
Preventing already proven goals to be proven again
? How to freeze the knowledge while reasoning?
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 20 / 30
21. The blockchain for distributed Logic Programming Smart contacts enabled BCTs as multiple theories
Smart contacts enabled BCTs as multiple theories
Smart contracts essentially control consistent read/write access their
internal state
What if each smart contract was responsible for a monotonic theory?
Non-monotone edits spawns a new smart contract
in charge of handling the new theory version
the old smart contract and its theory continue to exist
Multiple, possibly para-consistent logic theories
all originating from a common ancestor
each theory expresses what is true in a particular space-time point
each one is handled by a particular smart contract
Clients may query each smart contract’s theory
about a particular view of the world
smart contracts employ SLD resolution
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 21 / 30
22. Conclusions and future works
Next in Line. . .
1 Motivations & Context
2 Blockchain and smart contracts
3 Logic-based smart contracts
4 The blockchain for distributed Logic Programming
5 Conclusions and future works
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 22 / 30
23. Conclusions and future works
Conclusions
The blockchain as a means for replicating programs over the network
ie Smart contracts
Mixing LP and the blockchain is possible in two ways
1 Logic programming and its semantics adopted by smart contracts
Logic-based smart contracts
Also focusing on their interaction semantics
2 The blockchain as a fault-tolerant middleware for logic programs
The blockchain as a blackboard for distributed cooperative reasoning
Smart contracts as multiple para-consistent logic theories
Several questions, mostly arising from the economic dimension of
computation
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 23 / 30
24. Conclusions and future works
Future Works
Developing our own logic-friendly blockchain implementation
? maybe based on Tendermint1
Refining our logic smart contract abstraction towards MAS
Re-designing the Ethereum operational semantics [Woo14] in terms of
asynchronous interactions
Injecting tuProlog2 into some Java-friendly BCT
eg Hyperledger Fabric [ABB+18] or Corda3
1
https://tendermint.com
2
http://apice.unibo.it/xwiki/bin/view/Tuprolog/WebHome
3
https://www.corda.net/
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 24 / 30
25. From the Blockchain to Logic Programming and back
Research perspectives
Giovanni Ciatto1 Roberta Calegari1 Stefano Mariani2
Enrico Denti1 Andrea Omicini1
1
{roberta.calegari, giovanni.ciatto, enrico.denti,
andrea.omicini}@unibo.it
2
stefano.mariani@unimore.it
1Dipartimento di Informatica, Scienza e Ingegneria—Universit`a di Bologna
2Dipartimento di Scienze e Metodi dell’Ingegneria, Universit`a di Modena e Reggio Emilia
Talk @ 19th Workshop From Objects to Agents
Palermo, June 29, 2018
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 25 / 30
26. Appendix
Appendix – The problem with re-entrancy I
contract MyWallet {
function protectSavings ( MoneyHandler handler , uint money) public {
handler.deposit.value(money)(1 /* year */);
}
}
contract MoneyHandler {
struct ClientInfo { uint duration; uint since; uint amount }
mapping(address => ClientInfo) clients;
function deposit(uint duration) public {
ClientInfo storage c = clients[msg.sender ];
c.duration = duration;
c.since = now;
c.amount = msg.value;
}
function withdraw () public {
ClientInfo storage c = clients[msg.sender ];
uint amount = c.amount;
amount += (now - c.since) % (c.duration * 1 years) * c.amount /100;
msg.sender.send(amount);
}
}
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 26 / 30
27. Appendix
Appendix – The problem with re-entrancy II
contract MyWallet {
function protectSavings ( MoneyHandler handler , uint money) public {
handler.deposit.value(money)(1 /* year */);
}
}
contract Mallory {
uint nOfTheft = 3;
/* No deposit function */
function () { // <-- fallback function
if (nOfTheft > 0) {
MyWallet fool = (MyWallet) msg.sender;
fool. protectSavings (this , 1); // <-- re -entrancy!
}
}
}
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 27 / 30
28. References
References I
[ABB+18] Elli Androulaki, Artem Barger, Vita Bortnikov, Christian Cachin, Konstantinos
Christidis, Angelo De Caro, David Enyeart, Christopher Ferris, Gennady Laventman,
Yacov Manevich, Srinivasan Muralidharan, Chet Murthy, Binh Nguyen, Manish
Sethi, Gari Singh, Keith Smith, Alessandro Sorniotti, Chrysoula Stathakopoulou,
Marko Vukoli´c, Sharon Weed Cocco, and Jason Yellick.
Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains.
Proceedings of the Thirteenth EuroSys Conference on - EuroSys ’18, pages 1–15,
jan 2018.
[Bac02] Adam Back.
Hashcash - A Denial of Service Counter-Measure.
Http://Www.Hashcash.Org/Papers/Hashcash.Pdf, (August):1–10, 2002.
[CBPS10] Bernadette Charron-Bost, Fernando Pedone, and Andr´e Schiper, editors.
Replication: Theory and Practice.
Springer-Verlag, Berlin, Heidelberg, 2010.
[CDMO18] Roberta Calegari, Enrico Denti, Stefano Mariani, and Andrea Omicini.
Logic programming as a service.
arXiv preprint arXiv:1806.02577, 2018.
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 28 / 30
29. References
References II
[LCO+16] Loi Luu, Duc-Hiep Chu, Hrishi Olickel, Prateek Saxena, and Aquinas Hobor.
Making Smart Contracts Smarter.
In Proceedings of the 2016 ACM SIGSAC Conference on Computer and
Communications Security - CCS’16, pages 254–269, New York, New York, USA,
2016. ACM Press.
[LL17] Iuon-chang Lin and Tzu-chun Liao.
A Survey of Blockchain Security Issues and Challenges.
International Journal of Network Security, 1919(55):653–659, 2017.
[Nak08] Satoshi Nakamoto.
Bitcoin: A Peer-to-Peer Electronic Cash System.
Www.Bitcoin.Org, page 9, 2008.
[Rao96] Anand S. Rao.
Agentspeak(l): Bdi agents speak out in a logical computable language.
In Walter Van de Velde and John W. Perram, editors, Agents Breaking Away, pages
42–55, Berlin, Heidelberg, 1996. Springer Berlin Heidelberg.
[Sch90] Fred B. Schneider.
Implementing Fault-tolerant Services Using the State Machine Approach: A
Tutorial.
ACM Comput. Surv., 22(4):299–319, 1990.
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 29 / 30
30. References
References III
[Sza96] Nick Szabo.
Smart Contracts: Building Blocks for Digital Markets.
Alamut.Com, (c):16, 1996.
[Woo14] Gavin Wood.
Ethereum: a secure decentralised generalised transaction ledger.
Ethereum Project Yellow Paper, pages 1–32, 2014.
Ciatto (Univ. of Bologna) BC & LP: Research Perspectives WOA 2018, June 29 30 / 30