author | Cezary Kaliszyk <kaliszyk@in.tum.de> |
Mon, 22 Mar 2010 17:21:27 +0100 | |
changeset 1576 | 7b8f570b2450 |
parent 1561 | c3dca6e600c8 |
child 1595 | aeed597d2043 |
permissions | -rw-r--r-- |
theory LFex imports "Parser" begin atom_decl name atom_decl ident ML {* val _ = cheat_equivp := false *} nominal_datatype kind = Type | KPi "ty" n::"name" k::"kind" bind n in k and ty = TConst "ident" | TApp "ty" "trm" | TPi "ty" n::"name" t::"ty" bind n in t and trm = Const "ident" | Var "name" | App "trm" "trm" | Lam "ty" n::"name" t::"trm" bind n in t thm kind_ty_trm.supp end