src/HOLCF/Tools/Domain/domain_syntax.ML
changeset 33807 ce8d2e8bca21
parent 33802 48ce3a1063f2
child 35129 ed24ba6f69aa
equal deleted inserted replaced
33803:f5db63bd7aee 33807:ce8d2e8bca21
   194     val ctt : ((binding * typ * mixfix) list * ast Syntax.trrule list) list =
   194     val ctt : ((binding * typ * mixfix) list * ast Syntax.trrule list) list =
   195         map (calc_syntax definitional funprod) eqs';
   195         map (calc_syntax definitional funprod) eqs';
   196   in thy''
   196   in thy''
   197        |> ContConsts.add_consts_i
   197        |> ContConsts.add_consts_i
   198            (maps fst ctt @ 
   198            (maps fst ctt @ 
   199             (if length eqs'>1 then [const_copy] else[])@
   199             (if length eqs'>1 andalso not definitional
       
   200              then [const_copy] else []) @
   200             [const_bisim])
   201             [const_bisim])
   201        |> Sign.add_trrules_i (maps snd ctt)
   202        |> Sign.add_trrules_i (maps snd ctt)
   202   end; (* let *)
   203   end; (* let *)
   203 
   204 
   204 end; (* struct *)
   205 end; (* struct *)