Nominal/Ex/Term8.thy
author Cezary Kaliszyk <kaliszyk@in.tum.de>
Tue, 18 May 2010 17:56:41 +0200
changeset 2160 8c24ee88b8e8
parent 2147 e83493622e6f
child 2436 3885dc2669f9
permissions -rw-r--r--
more on subst

theory Term8
imports "../NewParser"
begin

(* example 8 *)

atom_decl name

ML {* val _ = cheat_alpha_bn_rsp := true *}

nominal_datatype foo =
  Foo0 "name"
| Foo1 b::"bar" f::"foo" bind_set "bv b" in f
and bar =
  Bar0 "name"
| Bar1 "name" s::"name" b::"bar" bind_set s in b
binder
  bv
where
  "bv (Bar0 x) = {}"
| "bv (Bar1 v x b) = {atom v}"

thm foo_bar.supp

end