src/HOL/Nominal/Examples/Lambda_mu.thy
author haftmann
Fri, 27 Jun 2025 08:09:26 +0200
changeset 82775 61c39a9e5415
parent 80914 d97fdabd9e2b
permissions -rw-r--r--
typo

theory Lambda_mu 
  imports "HOL-Nominal.Nominal" 
begin

section \<open>Lambda-Mu according to a paper by Gavin Bierman\<close>

atom_decl var mvar

nominal_datatype trm = 
    Var   "var" 
  | Lam  "\<guillemotleft>var\<guillemotright>trm"   (\<open>Lam [_]._\<close> [100,100] 100)
  | App  "trm" "trm" 
  | Pss  "mvar" "trm"                                   (* passivate *)
  | Act  "\<guillemotleft>mvar\<guillemotright>trm"  (\<open>Act [_]._\<close> [100,100] 100)       (* activate  *)


end