Nominal/Tacs.thy
changeset 2049 38bbccdf9ff9
parent 1656 c9d3dda79fe3
child 2108 c5b7be27f105
equal deleted inserted replaced
2014:17684f7eaeb9 2049:38bbccdf9ff9
   156 fun is_ex (Const ("Ex", _) $ Abs _) = true
   156 fun is_ex (Const ("Ex", _) $ Abs _) = true
   157   | is_ex _ = false;
   157   | is_ex _ = false;
   158 *}
   158 *}
   159 
   159 
   160 ML {*
   160 ML {*
   161 fun dtyp_no_of_typ _ (TFree (n, _)) = error "dtyp_no_of_typ: Illegal free"
   161 fun dtyp_no_of_typ _ (TFree (_, _)) = error "dtyp_no_of_typ: Illegal free"
   162   | dtyp_no_of_typ _ (TVar _) = error "dtyp_no_of_typ: Illegal schematic"
   162   | dtyp_no_of_typ _ (TVar _) = error "dtyp_no_of_typ: Illegal schematic"
   163   | dtyp_no_of_typ dts (Type (tname, Ts)) =
   163   | dtyp_no_of_typ dts (Type (tname, _)) =
   164       case try (find_index (curry op = tname o fst)) dts of
   164       case try (find_index (curry op = tname o fst)) dts of
   165         NONE => error "dtyp_no_of_typ: Illegal recursion"
   165         NONE => error "dtyp_no_of_typ: Illegal recursion"
   166       | SOME i => i
   166       | SOME i => i
   167 *}
   167 *}
   168 
   168