src/Pure/primitive_defs.ML
changeset 42284 326f57825e1a
parent 35989 3418cdf1855e
child 44241 7943b69f0188
equal deleted inserted replaced
42283:25d9d836ed9c 42284:326f57825e1a
    25     fun err msg = raise TERM (msg, [eq]);
    25     fun err msg = raise TERM (msg, [eq]);
    26     val eq_vars = Term.strip_all_vars eq;
    26     val eq_vars = Term.strip_all_vars eq;
    27     val eq_body = Term.strip_all_body eq;
    27     val eq_body = Term.strip_all_body eq;
    28 
    28 
    29     val display_terms =
    29     val display_terms =
    30       commas_quote o map (Syntax.string_of_term ctxt o Syntax.bound_vars eq_vars);
    30       commas_quote o map (Syntax.string_of_term ctxt o Syntax_Trans.bound_vars eq_vars);
    31     val display_types = commas_quote o map (Syntax.string_of_typ ctxt);
    31     val display_types = commas_quote o map (Syntax.string_of_typ ctxt);
    32 
    32 
    33     val (raw_lhs, rhs) = Logic.dest_equals eq_body handle TERM _ => err "Not a meta-equality (==)";
    33     val (raw_lhs, rhs) = Logic.dest_equals eq_body handle TERM _ => err "Not a meta-equality (==)";
    34     val lhs = Envir.beta_eta_contract raw_lhs;
    34     val lhs = Envir.beta_eta_contract raw_lhs;
    35     val (head, args) = Term.strip_comb lhs;
    35     val (head, args) = Term.strip_comb lhs;