isabelle-extreme is the "assembly language" of the Isabelle ecosystem – raw, unforgiving, and beautiful in its simplicity. While you will never ship a verified compiler written in it, exploring it offers a rare glimpse into the foundational bedrock on which massive proof developments rest.
(* Prove a simple property manually – no automation! ) lemma add_zero: "add 0 m = m" unfolding add_def by (rule fix_eq) ( primitive rule only *) isabelle-extreme
Have you experimented with minimal logics inside Isabelle? Share your experiences below! isabelle-extreme is the "assembly language" of the Isabelle
theory Scratch imports Main begin (* Define addition via fixed point *) definition add :: "nat ⇒ nat ⇒ nat" where "add ≡ fix (λadd n m. if n = 0 then m else add (n-1) (m+1))" ) lemma add_zero: "add 0 m = m"
Beyond the Mainland: Exploring isabelle-extreme , the Minimalist Core of Interactive Theorem Proving
Also known as (EXperimental TRansformational Equational Mathematics Engine), this is not a new front-end or library. It is a radically stripped-down meta-logic – the absolute minimal core needed to perform interactive proofs within the Isabelle framework.