author | Christian Urban <urbanc@in.tum.de> |
Mon, 22 Mar 2010 18:20:06 +0100 | |
changeset 1580 | 0faec4f7d737 |
parent 1576 | 7b8f570b2450 |
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