“…Coq, Isabelle/HOL, and Agda theorem provers are used to develop formal semantics of low- [16,38,51,88,106,156], intermediate- [39,128,178], and high-level [113,214] programming languages for smart contracts, including DSLs for financial contracts [23,122]. However, Li et al [128] suggest that, among them, intermediate-level languages are the most suitable for formal verification.…”