Nominal/activities/Minimal.thy
changeset 415 f1be8028a4a9
equal deleted inserted replaced
414:05e5d68c9627 415:f1be8028a4a9
       
     1 theory Minimal
       
     2 imports "Nominal"
       
     3 begin
       
     4 
       
     5 atom_decl name
       
     6 
       
     7 nominal_datatype lam =
       
     8   Var "name"
       
     9 | App "lam" "lam" 
       
    10 | Lam "\<guillemotleft>name\<guillemotright>lam" ("Lam [_]._")
       
    11 
       
    12 lemma alpha_test:
       
    13   shows "Lam [x].Var x = Lam [y].Var y"
       
    14   by (simp add: lam.inject alpha swap_simps fresh_atm)
       
    15 
       
    16 thm lam.inject[no_vars]
       
    17 thm alpha[no_vars]
       
    18 thm swap_simps[no_vars]
       
    19 thm fresh_atm[no_vars]
       
    20 
       
    21 end