  Verifying the execution of a program is complicated and often limited by the
inability to validate the code's correctness. It is a crucial aspect of
scientific research, where it is needed to ensure the reproducibility and
validity of experimental results. Similarly, in customer software testing, it
is difficult for customers to verify that their specific program version was
tested or executed at all. Existing state-of-the-art solutions, such as
hardware-based approaches, constraint solvers, and verifiable computation
systems, do not provide definitive proof of execution, which hinders reliable
testing and analysis of program results. In this paper, we propose an
innovative approach that combines a prototype programming language called Mona
with a certification protocol OCCP to enable the distributed and decentralized
re-execution of program segments. Our protocol allows for certification of
program segments in a distributed, immutable, and trustworthy system without
the need for naive re-execution, resulting in significant improvements in terms
of time and computational resources used. We also explore the use of blockchain
technology to manage the protocol workflow following other approaches in this
space. Our approach offers a promising solution to the challenges of program
execution verification and opens up opportunities for further research and
development in this area. Our findings demonstrate the efficiency of our
approach in reducing the number of program executions compared to existing
state-of-the-art methods, thus improving the efficiency of certifying program
executions.
