equal
deleted
inserted
replaced
401 val has_bool_arg_const = |
401 val has_bool_arg_const = |
402 exists_Const |
402 exists_Const |
403 (fn (c,T) => not(is_conn c) andalso exists (has_bool) (binder_types T)); |
403 (fn (c,T) => not(is_conn c) andalso exists (has_bool) (binder_types T)); |
404 |
404 |
405 (*A higher-order instance of a first-order constant? Example is the definition of |
405 (*A higher-order instance of a first-order constant? Example is the definition of |
406 HOL.one, 1, at a function type in theory SetsAndFunctions.*) |
406 one, 1, at a function type in theory SetsAndFunctions.*) |
407 fun higher_inst_const thy (c,T) = |
407 fun higher_inst_const thy (c,T) = |
408 case binder_types T of |
408 case binder_types T of |
409 [] => false (*not a function type, OK*) |
409 [] => false (*not a function type, OK*) |
410 | Ts => length (binder_types (Sign.the_const_type thy c)) <> length Ts; |
410 | Ts => length (binder_types (Sign.the_const_type thy c)) <> length Ts; |
411 |
411 |