Nominal/Ex/LF.thy
author Christian Urban <urbanc@in.tum.de>
Sat, 21 Aug 2010 16:20:10 +0800
changeset 2424 621ebd8b13c4
parent 2311 4da5c5c29009
child 2436 3885dc2669f9
permissions -rw-r--r--
changed parser so that the binding mode is indicated as "bind (list)", "bind (set)" or "bind (res)"; if only "bind" is given, then bind (list) is assumed as default

theory LF
imports "../NewParser"
begin

declare [[STEPS = 9]]

atom_decl name
atom_decl ident

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