src/HOL/Tools/inductive_codegen.ML
changeset 14560 529464cffbfe
parent 14250 d09e92e7c2bf
child 14859 b4be6bdcbb94
equal deleted inserted replaced
14559:7612d19d5638 14560:529464cffbfe
   229     val (in_ts', _) = get_args is 1 ts;
   229     val (in_ts', _) = get_args is 1 ts;
   230     val in_ts = filter (is_constrt thy) in_ts';
   230     val in_ts = filter (is_constrt thy) in_ts';
   231     val in_vs = terms_vs in_ts;
   231     val in_vs = terms_vs in_ts;
   232     val concl_vs = terms_vs ts
   232     val concl_vs = terms_vs ts
   233   in
   233   in
   234     forall is_eqT (map snd (duplicates (flat (map term_vTs in_ts')))) andalso
   234     forall is_eqT (map snd (duplicates (flat (map term_vTs in_ts)))) andalso
   235     (case check_mode_prems (arg_vs union in_vs) ps of
   235     (case check_mode_prems (arg_vs union in_vs) ps of
   236        None => false
   236        None => false
   237      | Some vs => concl_vs subset vs)
   237      | Some vs => concl_vs subset vs)
   238   end;
   238   end;
   239 
   239