diff -r f4815812665b -r e61b058d58d2 src/HOL/Integ/Relation.ML --- a/src/HOL/Integ/Relation.ML Thu Mar 23 15:39:13 1995 +0100 +++ b/src/HOL/Integ/Relation.ML Fri Mar 24 12:30:35 1995 +0100 @@ -12,18 +12,18 @@ open Relation; -goalw Relation.thy [converse_def] "!!a b r. :r ==> :converse(r)"; +goalw Relation.thy [converse_def] "!!a b r. (a,b):r ==> (b,a):converse(r)"; by (simp_tac prod_ss 1); by (fast_tac set_cs 1); qed "converseI"; -goalw Relation.thy [converse_def] "!!a b r. : converse(r) ==> : r"; +goalw Relation.thy [converse_def] "!!a b r. (a,b) : converse(r) ==> (b,a) : r"; by (fast_tac comp_cs 1); qed "converseD"; qed_goalw "converseE" Relation.thy [converse_def] "[| yx : converse(r); \ -\ !!x y. [| yx=; :r |] ==> P \ +\ !!x y. [| yx=(y,x); (x,y):r |] ==> P \ \ |] ==> P" (fn [major,minor]=> [ (rtac (major RS CollectE) 1), @@ -35,23 +35,23 @@ addSEs [converseD,converseE]; qed_goalw "Domain_iff" Relation.thy [Domain_def] - "a: Domain(r) = (EX y. : r)" + "a: Domain(r) = (EX y. (a,y): r)" (fn _=> [ (fast_tac comp_cs 1) ]); -qed_goal "DomainI" Relation.thy "!!a b r. : r ==> a: Domain(r)" +qed_goal "DomainI" Relation.thy "!!a b r. (a,b): r ==> a: Domain(r)" (fn _ => [ (etac (exI RS (Domain_iff RS iffD2)) 1) ]); qed_goal "DomainE" Relation.thy - "[| a : Domain(r); !!y. : r ==> P |] ==> P" + "[| a : Domain(r); !!y. (a,y): r ==> P |] ==> P" (fn prems=> [ (rtac (Domain_iff RS iffD1 RS exE) 1), (REPEAT (ares_tac prems 1)) ]); -qed_goalw "RangeI" Relation.thy [Range_def] "!!a b r.: r ==> b : Range(r)" +qed_goalw "RangeI" Relation.thy [Range_def] "!!a b r.(a,b): r ==> b : Range(r)" (fn _ => [ (etac (converseI RS DomainI) 1) ]); qed_goalw "RangeE" Relation.thy [Range_def] - "[| b : Range(r); !!x. : r ==> P |] ==> P" + "[| b : Range(r); !!x. (x,b): r ==> P |] ==> P" (fn major::prems=> [ (rtac (major RS DomainE) 1), (resolve_tac prems 1), @@ -60,23 +60,23 @@ (*** Image of a set under a function/relation ***) qed_goalw "Image_iff" Relation.thy [Image_def] - "b : r^^A = (? x:A. :r)" + "b : r^^A = (? x:A. (x,b):r)" (fn _ => [ fast_tac (comp_cs addIs [RangeI]) 1 ]); qed_goal "Image_singleton_iff" Relation.thy - "(b : r^^{a}) = (:r)" + "(b : r^^{a}) = ((a,b):r)" (fn _ => [ rtac (Image_iff RS trans) 1, fast_tac comp_cs 1 ]); qed_goalw "ImageI" Relation.thy [Image_def] - "!!a b r. [| : r; a:A |] ==> b : r^^A" + "!!a b r. [| (a,b): r; a:A |] ==> b : r^^A" (fn _ => [ (REPEAT (ares_tac [CollectI,RangeI,bexI] 1)), (resolve_tac [conjI ] 1), (resolve_tac [RangeI] 1), (REPEAT (fast_tac set_cs 1))]); qed_goalw "ImageE" Relation.thy [Image_def] - "[| b: r^^A; !!x.[| : r; x:A |] ==> P |] ==> P" + "[| b: r^^A; !!x.[| (x,b): r; x:A |] ==> P |] ==> P" (fn major::prems=> [ (rtac (major RS CollectE) 1), (safe_tac set_cs),