# HG changeset patch # User berghofe # Date 1238746146 -7200 # Node ID 294e8ee163ea37c0e0bacca81a80b5b369aaf6d2 # Parent 29eb80cef6b74f0f683c1876361312a554f30ec7# Parent e5f9477aed50953d1009b01016bf2abb76066dfa merged diff -r e5f9477aed50 -r 294e8ee163ea Admin/CHECKLIST --- a/Admin/CHECKLIST Fri Apr 03 10:08:47 2009 +0200 +++ b/Admin/CHECKLIST Fri Apr 03 10:09:06 2009 +0200 @@ -20,12 +20,9 @@ doc/Contents - maintain Logics: - Admin/makedist build lib/Tools/makeall - lib/html/index.html - doc-src/Logics/intro.tex - doc-src/Logics/logics.tex + lib/html/library_index_content.template - after release: commit new ~isabelle/website/include/documentationdist.include.html to website SVN diff -r e5f9477aed50 -r 294e8ee163ea Admin/makedist --- a/Admin/makedist Fri Apr 03 10:08:47 2009 +0200 +++ b/Admin/makedist Fri Apr 03 10:09:06 2009 +0200 @@ -128,10 +128,9 @@ # website mkdir -p ../website -cat > ../website/distinfo.mak < ../website/config <oops open oracle - otherwise output outputs overloaded diff -r e5f9477aed50 -r 294e8ee163ea src/HOL/Finite_Set.thy --- a/src/HOL/Finite_Set.thy Fri Apr 03 10:08:47 2009 +0200 +++ b/src/HOL/Finite_Set.thy Fri Apr 03 10:09:06 2009 +0200 @@ -1216,6 +1216,14 @@ "finite F ==> (setsum f F = 0) = (ALL a:F. f a = (0::nat))" by (induct set: finite) auto +lemma setsum_eq_Suc0_iff: "finite A \ + (setsum f A = Suc 0) = (EX a:A. f a = Suc 0 & (ALL b:A. a\b \ f b = 0))" +apply(erule finite_induct) +apply (auto simp add:add_is_1) +done + +lemmas setsum_eq_1_iff = setsum_eq_Suc0_iff[simplified One_nat_def[symmetric]] + lemma setsum_Un_nat: "finite A ==> finite B ==> (setsum f (A Un B) :: nat) = setsum f A + setsum f B - setsum f (A Int B)" -- {* For the natural numbers, we have subtraction. *} diff -r e5f9477aed50 -r 294e8ee163ea src/HOL/Tools/res_reconstruct.ML --- a/src/HOL/Tools/res_reconstruct.ML Fri Apr 03 10:08:47 2009 +0200 +++ b/src/HOL/Tools/res_reconstruct.ML Fri Apr 03 10:09:06 2009 +0200 @@ -459,7 +459,7 @@ (* ==== CHECK IF PROOF OF E OR VAMPIRE WAS SUCCESSFUL === *) - val failure_strings_E = ["SZS status: Satisfiable","SZS status: ResourceOut","# Cannot determine problem status"]; + val failure_strings_E = ["SZS status: Satisfiable","SZS status Satisfiable","SZS status: ResourceOut","SZS status ResourceOut","# Cannot determine problem status"]; val failure_strings_vampire = ["Satisfiability detected", "Refutation not found", "CANNOT PROVE"]; val failure_strings_SPASS = ["SPASS beiseite: Completion found.","SPASS beiseite: Ran out of time.", "SPASS beiseite: Maximal number of loops exceeded."]; diff -r e5f9477aed50 -r 294e8ee163ea src/Pure/pure_thy.ML --- a/src/Pure/pure_thy.ML Fri Apr 03 10:08:47 2009 +0200 +++ b/src/Pure/pure_thy.ML Fri Apr 03 10:09:06 2009 +0200 @@ -31,10 +31,10 @@ val add_thm: (binding * thm) * attribute list -> theory -> thm * theory val add_thmss: ((binding * thm list) * attribute list) list -> theory -> thm list list * theory val add_thms_dynamic: binding * (Context.generic -> thm list) -> theory -> theory - val note_thmss: string -> (Thm.binding * - (thm list * attribute list) list) list -> theory -> (string * thm list) list * theory - val note_thmss_grouped: string -> string -> (Thm.binding * - (thm list * attribute list) list) list -> theory -> (string * thm list) list * theory + val note_thmss: string -> (Thm.binding * (thm list * attribute list) list) list + -> theory -> (string * thm list) list * theory + val note_thmss_grouped: string -> string -> (Thm.binding * (thm list * attribute list) list) list + -> theory -> (string * thm list) list * theory val add_axioms: ((binding * term) * attribute list) list -> theory -> thm list * theory val add_axioms_cmd: ((binding * string) * attribute list) list -> theory -> thm list * theory val add_defs: bool -> ((binding * term) * attribute list) list ->