Nominal/nominal_dt_rawperm.ML
changeset 2295 8aff3f3ce47f
parent 2292 d134bd4f6d1b
child 2396 f2f611daf480
equal deleted inserted replaced
2294:72ad4e766acf 2295:8aff3f3ce47f
    25          permute_fn p arg
    25          permute_fn p arg
    26 
    26 
    27     - in case the argument is non-recursive it will return
    27     - in case the argument is non-recursive it will return
    28 
    28 
    29          p o arg
    29          p o arg
    30 
       
    31 *)
    30 *)
    32 fun perm_arg permute_fn_frees p (arg_dty, arg) =
    31 fun perm_arg permute_fn_frees p (arg_dty, arg) =
    33   if Datatype_Aux.is_rec_type arg_dty 
    32   if Datatype_Aux.is_rec_type arg_dty 
    34   then (nth permute_fn_frees (Datatype_Aux.body_index arg_dty)) $ p $ arg
    33   then (nth permute_fn_frees (Datatype_Aux.body_index arg_dty)) $ p $ arg
    35   else mk_perm p arg
    34   else mk_perm p arg