Tutorial/Minimal.thy
author Christian Urban <urbanc@in.tum.de>
Tue, 10 Apr 2012 15:22:16 +0100
changeset 3157 de89c95c5377
parent 3132 87eca760dcba
child 3235 5ebd327ffb96
permissions -rw-r--r--
updated to latest changes (10 April) to quotient package (lift_raw_const only takes dummy theorem TrueI....in the future this will not work anymore)

theory Minimal
imports "Nominal2"
begin

atom_decl name

nominal_datatype lam =
  Var "name"
| App "lam" "lam"
| Lam x::"name" l::"lam"  binds x in l ("Lam [_]. _" [100, 100] 100)



lemma alpha_test:
  shows "Lam [x]. (Var x) = Lam [y]. (Var y)"
  by (simp add: lam.eq_iff Abs1_eq_iff lam.fresh fresh_at_base)

end