src/HOL/Tools/BNF/bnf_def.ML
changeset 63862 ce05cc93e07b
parent 63851 1a1fd3f3a24c
child 64440 0d31d1735104
equal deleted inserted replaced
63861:90360390a916 63862:ce05cc93e07b
   794                 let val Type (@{type_name set}, [elemT]) = fastype_of set_app in
   794                 let val Type (@{type_name set}, [elemT]) = fastype_of set_app in
   795                   if elemT = A then set_app else mk_UNION set_app (build elemT)
   795                   if elemT = A then set_app else mk_UNION set_app (build elemT)
   796                 end;
   796                 end;
   797             in
   797             in
   798               if null set_apps then HOLogic.mk_set A []
   798               if null set_apps then HOLogic.mk_set A []
   799               else Library.foldr1 mk_union (map recurse set_apps)
   799               else Library.foldl1 mk_union (map recurse set_apps)
   800             end
   800             end
   801           | _ => HOLogic.mk_set A []));
   801           | _ => HOLogic.mk_set A []));
   802   in build end;
   802   in build end;
   803 
   803 
   804 fun map_flattened_map_args ctxt s map_args fs =
   804 fun map_flattened_map_args ctxt s map_args fs =