Project Detail |
Certified computer systems are becoming the key in the increasingly complex decision making activities of our modern society. Among others, provably correct/secure solutions within Artificial Intelligence (AI), Autonomous Systems, Big Data, Blockchain, Decentralized Finance (DeFi), Cloud Computing, or Machine Learning (ML) are indispensable in the ongoing digitalization of our society. While the explosion in applications of computer systems leads to great increases in productivity, wealth, and convenience, it creates a paradoxical situation: we rely on computer systems despite that uncountable many application scenarios showcase that computer systems are not (properly) certified and hence are error-prone. Unfortunately, a single software error can quickly escalate into a big issue with huge economic damage. Software errors could be though prevented by rigorous code reviews in the software logic. However, who can tell software developers which logical formalism should be used? Moreover, which certification mechanism is best to be used during code review, for ensuring system safety and security? LEARN answers these questions by automating reasoning about software and discovering proof strategies for software certification. Doing so, LEARN introduces a web-based framework for learning and predicting logic models of software properties. LEARN also discovers collections of proof strategies without relying on server back-end, by automating inductive reasoning over commonly used software data structures. LEARN eliminates massive costs arising from correcting defective software releases, by proving an easy to deploy certification platform for developers and organizations. |