Un DSL di sicurezza Lean 4 vincolato
Scrivi funzioni di sicurezza come macchine a stati, transizioni con guardia, dataflow booleano e a virgola fissa — e dimostra proprietà di sicurezza (invarianti, raggiungibilità dello stato sicuro) con il kernel Lean.
Lean 4Generazione diversa a doppio canale
Due generatori progettati in modo indipendente, uno in Rust, uno in Lean, dalla stessa specifica. I loro output devono essere strutturalmente identici — qualsiasi divergenza fa fallire la build.
sgen-a · sgen-bValidazione della traduzione
Ogni build ri-analizza il testo Rust emesso e il kernel Lean verifica un nuovo certificato che sia semanticamente uguale alla specifica. Ciò che è dimostrato è ciò che spedisci.
Certificato del kernelOutput Rust ristretto
Zero heap, privo di panic, nessun unsafe, loop con limiti costanti, aritmetica satura — pronto per il compilatore qualificato Ferrocene.
#![no_std]Tracciabilità bidirezionale, verificata dalla macchina
Requisito → teorema Lean → simbolo Rust → vettore di test. Il testo del requisito fissato con hash trasforma l'impatto di una modifica in un errore di build.
Matrice di tracciabilitàAritmetica a virgola fissa in formato Q
Larghezze, scalatura e saturazione esplicite — più assenza di overflow verificata dal kernel e obblighi di esattezza su ogni costante.
Q-format