Isabelle Elixir bindings and more

View Source

Hex version HexDocs

Elixir bindings and utilities for the Isabelle proof assistant

isabelle_elixir lets you drive Isabelle’s resident server from Elixir code: start/stop the JVM server, launch logic sessions, compile & check theories, stream build progress, and retrieve generated artefacts – all with familiar Elixir APIs.


✨ Features

  • Zero-pain server control – start, list, kill Isabelle servers programmatically.
  • TCP client – synchronous helpers for every core server command (session_start, use_theories, …).
  • Streaming status – follow NOTE/FINISHED/FAILED messages and extract results.
  • Stateless by design – works in scripts, Mix tasks, GenServers or LiveBooks.
  • Pure Elixir – no NIFs.

📦 Installation

Add the dependency to your mix.exs and fetch it:

defp deps do
  [
    {:isabelle_elixir, "~> 0.1"}
  ]
end