diff -r f02b26f7d39d -r 7fba644ed827 src/HOL/BNF_Wellorder_Constructions.thy --- a/src/HOL/BNF_Wellorder_Constructions.thy Sun Dec 27 21:46:36 2015 +0100 +++ b/src/HOL/BNF_Wellorder_Constructions.thy Sun Dec 27 22:07:17 2015 +0100 @@ -1515,19 +1515,19 @@ "curr A f \ \ a. if a \ A then \b. f (a,b) else undefined" lemma curr_in: -assumes f: "f \ Func (A <*> B) C" +assumes f: "f \ Func (A \ B) C" shows "curr A f \ Func A (Func B C)" using assms unfolding curr_def Func_def by auto lemma curr_inj: -assumes "f1 \ Func (A <*> B) C" and "f2 \ Func (A <*> B) C" +assumes "f1 \ Func (A \ B) C" and "f2 \ Func (A \ B) C" shows "curr A f1 = curr A f2 \ f1 = f2" proof safe assume c: "curr A f1 = curr A f2" show "f1 = f2" proof (rule ext, clarify) fix a b show "f1 (a, b) = f2 (a, b)" - proof (cases "(a,b) \ A <*> B") + proof (cases "(a,b) \ A \ B") case False thus ?thesis using assms unfolding Func_def by auto next @@ -1540,7 +1540,7 @@ lemma curr_surj: assumes "g \ Func A (Func B C)" -shows "\ f \ Func (A <*> B) C. curr A f = g" +shows "\ f \ Func (A \ B) C. curr A f = g" proof let ?f = "\ ab. if fst ab \ A \ snd ab \ B then g (fst ab) (snd ab) else undefined" show "curr A ?f = g" @@ -1557,11 +1557,11 @@ thus ?thesis using True unfolding Func_def curr_def by auto qed qed - show "?f \ Func (A <*> B) C" using assms unfolding Func_def mem_Collect_eq by auto + show "?f \ Func (A \ B) C" using assms unfolding Func_def mem_Collect_eq by auto qed lemma bij_betw_curr: -"bij_betw (curr A) (Func (A <*> B) C) (Func A (Func B C))" +"bij_betw (curr A) (Func (A \ B) C) (Func A (Func B C))" unfolding bij_betw_def inj_on_def image_def apply (intro impI conjI ballI) apply (erule curr_inj[THEN iffD1], assumption+)