src/Tools/isac/Knowledge/PolyEq.thy
branchisac-update-Isa09-2
changeset 38031 460c24a6a6ba
parent 38030 95d956108461
child 38034 928cebc9c4aa
equal deleted inserted replaced
38030:95d956108461 38031:460c24a6a6ba
  1314 
  1314 
  1315 fun size_of_term' x (Const ("Atools.pow",_) $ Free (var,_) $ Free (pot,_)) =
  1315 fun size_of_term' x (Const ("Atools.pow",_) $ Free (var,_) $ Free (pot,_)) =
  1316     (case x of                                                          (*WN*)
  1316     (case x of                                                          (*WN*)
  1317 	    (Free (xstr,_)) => 
  1317 	    (Free (xstr,_)) => 
  1318 		(if xstr = var then 1000*(the (int_of_str pot)) else 3)
  1318 		(if xstr = var then 1000*(the (int_of_str pot)) else 3)
  1319 	  | _ => raise error ("size_of_term' called with subst = "^
  1319 	  | _ => error ("size_of_term' called with subst = "^
  1320 			      (term2str x)))
  1320 			      (term2str x)))
  1321   | size_of_term' x (Free (subst,_)) =
  1321   | size_of_term' x (Free (subst,_)) =
  1322     (case x of
  1322     (case x of
  1323 	    (Free (xstr,_)) => (if xstr = subst then 1000 else 1)
  1323 	    (Free (xstr,_)) => (if xstr = subst then 1000 else 1)
  1324 	  | _ => raise error ("size_of_term' called with subst = "^
  1324 	  | _ => error ("size_of_term' called with subst = "^
  1325 			  (term2str x)))
  1325 			  (term2str x)))
  1326   | size_of_term' x (Abs (_,_,body)) = 1 + size_of_term' x body
  1326   | size_of_term' x (Abs (_,_,body)) = 1 + size_of_term' x body
  1327   | size_of_term' x (f$t) = size_of_term' x f  +  size_of_term' x t
  1327   | size_of_term' x (f$t) = size_of_term' x f  +  size_of_term' x t
  1328   | size_of_term' x _ = 1;
  1328   | size_of_term' x _ = 1;
  1329 
  1329 
  1367     let
  1367     let
  1368 	(* val _=tracing("*** subs variable is: "^(subst2str subst)); *)
  1368 	(* val _=tracing("*** subs variable is: "^(subst2str subst)); *)
  1369     in
  1369     in
  1370 	case subst of
  1370 	case subst of
  1371 	    (_,x)::_ => (term_ord' x pr thy tu = LESS)
  1371 	    (_,x)::_ => (term_ord' x pr thy tu = LESS)
  1372 	  | _ => raise error ("ord_make_polynomial_in called with subst = "^
  1372 	  | _ => error ("ord_make_polynomial_in called with subst = "^
  1373 			  (subst2str subst))
  1373 			  (subst2str subst))
  1374     end;
  1374     end;
  1375 end;(*local*)
  1375 end;(*local*)
  1376 
  1376 
  1377 *}
  1377 *}