Reimplementing Mizar in Rust

02/27/2023
by   Mario Carneiro, et al.
0

This paper describes a new open-source proof processing tool, mizar-rs, a wholesale reimplementation of core parts of the Mizar proof system, written in Rust. In particular, the "checker" and "analyzer" of Mizar are implemented, which together form the trusted core of Mizar. This is to our knowledge the first and only external implementation of these components. Thanks to the loose coupling of Mizar's passes, it is possible to use the checker as a drop-in replacement for the original, and we have used this to verify the entire MML in 11.8 minutes on 8 cores, a 4.8x speedup over the original Pascal implementation. Since Mizar is not designed to have a small trusted core, checking Mizar proofs entails following Mizar closely, so our ability to detect bugs is limited. Nevertheless, we were able to find multiple memory errors, four soundness bugs in the original (which were not being exploited in MML), in addition to one non-critical bug which was being exploited in 46 different MML articles. We hope to use this checker as a base for proof export tooling, as well as revitalizing development of the language.

READ FULL TEXT
research
08/19/2019

Boosting the Bounds of Symbolic QED for Effective Pre-Silicon Verification of Processor Cores

Existing techniques to ensure functional correctness and hardware trust ...
research
10/02/2017

Proof-checking Euclid

We used computer proof-checking methods to verify the correctness of our...
research
02/08/2022

Evolution of SASyLF 2008-2021

SASyLF was released in 2008 and used as a proof assistant in courses at ...
research
11/04/2018

Syntax and Typing for Cedille Core

This document specifies a core version of the type theory implemented in...
research
10/24/2018

A general proof certification framework for modal logic

One of the main issues in proof certification is that different theorem ...
research
02/14/2020

Sthread: In-Vivo Model Checking of Multithreaded Programs

This work strives to make formal verification of POSIX multithreaded pro...
research
05/11/2019

Artificial Consciousness and Security

This paper describes a possible way to improve computer security by impl...

Please sign up or login with your details

Forgot password? Click here to reset