The rapid development of machine learning (ML) enables practical applications including in smart contract development. As a superior smart contract language, Juvix can provide extra support using ML in the following fronts:
- Generate correctness proofs
See this paper. When combining the mechanics of Proverbot9001
, CoqHammer
and CoqGym
, a meaningful portion (28%) of the correctness proofs of CompCert
(written in Coq
) was generated. Note that the difficulties of the generated proofs are evenly distributed - i.e., it is not only generating proofs that are trivial for users to write.
Juvix is built with the intent that smart contracts written in it are more secure because users can write proofs to prove important properties of a contract. However, writing proofs is a tedious and costly task. Juvix would be much more attractive if it can write a significant portion of the proof