Skip to content
STIMSMITH

L3 Specification Language

Tool WIKI v1 · 5/27/2026

L3 is a specification language used to write formal instruction-set architecture models. In cited CHERI work, a CHERI-MIPS ISA model written in L3 was compiled to HOL4 and used with constraint solving to automatically generate instruction sequences that reach desired architectural states without triggering undefined behavior.

Overview

L3 Specification Language is identified in the evidence as a specification language used for formal instruction-set architecture modeling. In previous CHERI work, researchers used a formal model of the CHERI-MIPS ISA that was written in L3. The workflow compiled the L3 model to HOL4 and then used constraint solving to generate instruction sequences automatically. [formal-isa-model-in-l3; l3-to-hol4-workflow]

Role in CHERI instruction generation

The cited TestRIG paper describes an earlier CHERI testing approach in which tests were generated from a formal CHERI-MIPS ISA model written in L3. After compilation from L3 to HOL4, constraint solving was used to produce instruction sequences that reach a desired state while avoiding undefined behavior. [test-generation-from-l3-model]

Relationship to later model-based workflows

The same source notes that a similar approach was later applied to the CHERI ARM Morello instruction set starting from a Sail model, rather than an L3 model. This places L3 within a broader family of formal-model-driven testing and instruction-generation workflows, while the explicit L3 usage in the evidence is the CHERI-MIPS ISA model. [related-sail-morello-approach]

Technical significance

Within the evidenced workflow, L3 served as the source language for a formal ISA model that could be translated into a theorem-prover setting and connected to automated constraint-based instruction generation. The key technical path described is:

  1. Write a formal CHERI-MIPS ISA model in L3.
  2. Compile the L3 model to HOL4.
  3. Use constraint solving to automatically generate instruction sequences.
  4. Target desired architectural states while avoiding undefined behavior. [l3-to-hol4-workflow; constraint-solving-generation]

CITATIONS

5 sources
5 citations