equal
deleted
inserted
replaced
137 (* FIXME: this should be an operation the library *) |
137 (* FIXME: this should be an operation the library *) |
138 val class_name = (NameSpace.map_base (fn s => "pt_"^s) tyatm) |
138 val class_name = (NameSpace.map_base (fn s => "pt_"^s) tyatm) |
139 in |
139 in |
140 if (Type.of_sort (Sign.tsig_of thy) (ty,[class_name])) |
140 if (Type.of_sort (Sign.tsig_of thy) (ty,[class_name])) |
141 then [(pi,typi)] |
141 then [(pi,typi)] |
142 else raise EQVT_FORM "Could not find a permutation" |
142 else raise |
|
143 EQVT_FORM ("Could not find any permutation or an argument is not an instance of "^class_name) |
143 end |
144 end |
144 | Abs (_,_,t1) => get_pi_aux t1 |
145 | Abs (_,_,t1) => get_pi_aux t1 |
145 | (t1 $ t2) => get_pi_aux t1 @ get_pi_aux t2 |
146 | (t1 $ t2) => get_pi_aux t1 @ get_pi_aux t2 |
146 | _ => []) |
147 | _ => []) |
147 in |
148 in |