Skip to main content

Reasoning About Smart Contracts Encoded in LTL

  • Conference paper
  • First Online:
AIxIA 2021 – Advances in Artificial Intelligence (AIxIA 2021)

Abstract

Smart contracts are programs deployed on blockchains that automatically execute when some conditions are verified to satisfy the terms of an agreement. They are usually programmed in procedural languages even if some recent proposals use logic for their specification and verification. However, existing logic-based initiatives only enable the formal checking of properties of a single smart contract independently from the other smart contracts running on the same blockchain. This paper proposes a framework, called SCRea, that works on a set of smart contracts encoded in Linear Temporal Logics. SCRea can work offline or at runtime to verify whether the execution of each smart contract is compatible with the execution of the others and, in case, provides a particular order of execution ensuring that the preconditions of each smart contract are verified before its execution.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 89.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 119.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    https://docs.soliditylang.org/en/v0.8.7/.

References

  1. Douglis, F., Stavrou, A.: Distributed ledger technologies. IEEE Internet Comput. 24(3) (2020)

    Google Scholar 

  2. Idelberger, F., Governatori, G., Riveret, R., Sartor, G.: Evaluation of logic-based smart contracts for blockchain systems. In: Alferes, J.J.J., Bertossi, L., Governatori, G., Fodor, P., Roman, D. (eds.) RuleML 2016. LNCS, vol. 9718, pp. 167–183. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-42019-6_11

    Chapter  Google Scholar 

  3. Hu, J., Zhong, Y.: A method of logic-based smart contracts for blockchain system. In: Proceedings of ICDPA, pp. 58–61 (2018)

    Google Scholar 

  4. Stancu, A., Dragan, M.: Logic-based smart contracts. In: Rocha, Á., Adeli, H., Reis, L.P., Costanzo, S., Orovic, I., Moreira, F. (eds.) WorldCIST 2020. AISC, vol. 1159, pp. 387–394. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-45688-7_40

    Chapter  Google Scholar 

  5. Nakamoto, S.: Bitcoin: a peer-to-peer electronic cash system (2008)

    Google Scholar 

  6. Wood, G.: Ethereum: a secure decentralised generalised transaction ledger. Ethereum Proj. Yellow Pap. 151(2014), 1–32 (2014)

    Google Scholar 

  7. Szabo, N.: The idea of smart contracts. Nick Szabo’s Papers and Concise Tutorials, 6 (1997)

    Google Scholar 

  8. Dannen, C.: Introducing Ethereum and Solidity, p. 185. Apress, Berkeley (2017)

    Book  Google Scholar 

  9. Pnueli, A.: The Temporal logic of programs. In: Proceedings of FOCS, pp. 46–57 (1977)

    Google Scholar 

  10. Pnueli, A.: The temporal semantics of concurrent programs. Theoret. Comput. Sci. 13, 45–60 (1981)

    Article  MathSciNet  Google Scholar 

  11. Bacchus, F., Kabanza, F.: Planning for temporally extended goals. Ann. Math. Artif. Intell. 22(1–2), 5–27 (1998)

    Article  MathSciNet  Google Scholar 

  12. Calvanese, D., De Giacomo, G., Vardi, M.Y.: Reasoning about actions and planning in LTL action theories. In: Proceedings of KR, pp. 593–602 (2002)

    Google Scholar 

  13. Sohrabi, S., Baier, J.A., McIlraith, S.A.: Preferred explanations: theory and generation via planning. In Proceedings of AAAI, pp. 261–267 (2011)

    Google Scholar 

  14. Bobadilla, L., Sanchez, O., Czarnowski, J., Gossman, K., LaValle, S.: Controlling wild bodies using linear temporal logic. In: Proceedings of RSS, pp. 17–24 (2011)

    Google Scholar 

  15. Ding, X., Smith, S., Belta, C., Rus, D.: Optimal control of Markov decision processes with linear temporal logic constraints. IEEE Trans. Autom. Control 59(5), 1244–1257 (2014)

    Article  MathSciNet  Google Scholar 

  16. Maggi, F.M., Montali, M., Westergaard, M., van der Aalst, W.M.P.: Monitoring business constraints with linear temporal logic: an approach based on colored automata. In: Rinderle-Ma, S., Toumani, F., Wolf, K. (eds.) BPM 2011. LNCS, vol. 6896, pp. 132–147. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-23059-2_13

    Chapter  Google Scholar 

  17. Fionda, V., Guzzo, A.: Control-flow modeling with declare: behavioral properties, computational complexity, and tools. IEEE Trans. Knowl. Data Eng. 32(5), 898–911 (2020)

    Article  Google Scholar 

  18. Chekol, M.W., Fionda, V., Pirrò, G.: Time travel queries in RDF archives. In: Proceedings of MEPDaW, pp. 28–42 (2017)

    Google Scholar 

  19. Fionda, V., Greco, G.: LTL on finite and process traces: complexity results and a practical reasoner. J. Artif. Intell. Res. 63, 557–623 (2018)

    Article  MathSciNet  Google Scholar 

  20. Pešić, M., Bošnački, D., van der Aalst, W.M.P.: Enacting declarative languages using LTL: avoiding errors and improving performance. In: van de Pol, J., Weber, M. (eds.) SPIN 2010. LNCS, vol. 6349, pp. 146–161. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-16164-3_11

    Chapter  Google Scholar 

  21. Pesic, M., Schonenberg, H., Van der Aalst, W.: DECLARE: full support for loosely- structured processes. In: Proceedings of EDOC, pp. 287–298 (2007)

    Google Scholar 

  22. Van Der Aalst, W., Pesic, M., Schonenberg, H.: Declarative workflows: balancing between flexibility and support. Comput. Sci. Res. Dev. 23(2), 99–113 (2009)

    Article  Google Scholar 

  23. De Giacomo, G., Vardi, M.Y.: Linear temporal logic and linear dynamic logic on finite traces. In: Proceedings of IJCAI, pp. 854–860 (2013)

    Google Scholar 

  24. Li, J., Zhang, L., Pu, G., Vardi, M.Y., He, J.: LTLf satisfiability checking. In: Proceedings of ECAI, pp. 513–518 (2014)

    Google Scholar 

  25. Biere, A., Heljanko, K., Junttila, T., Latvala, T., Schuppan, V.: Linear encodings of bounded LTL model checking. Log. Methods Comput. Sci. 2(5), 1–64 (2006)

    Article  MathSciNet  Google Scholar 

  26. Audemard, G., and Simon, L.: Predicting learnt clauses quality in modern SAT solvers. In: Proceedings of IJCAI, pp. 399–404 (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Valeria Fionda .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Fionda, V., Greco, G., Mastratisi, M.A. (2022). Reasoning About Smart Contracts Encoded in LTL. In: Bandini, S., Gasparini, F., Mascardi, V., Palmonari, M., Vizzari, G. (eds) AIxIA 2021 – Advances in Artificial Intelligence. AIxIA 2021. Lecture Notes in Computer Science(), vol 13196. Springer, Cham. https://doi.org/10.1007/978-3-031-08421-8_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-08421-8_9

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-08420-1

  • Online ISBN: 978-3-031-08421-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics