AC rules for equality
authorpaulson
Tue, 28 Sep 1999 15:12:50 +0200
changeset 7623 23efbb7ab889
parent 7622 dcb93b295683
child 7624 9024e9d370c7
AC rules for equality
src/HOL/simpdata.ML
--- a/src/HOL/simpdata.ML	Tue Sep 28 15:12:27 1999 +0200
+++ b/src/HOL/simpdata.ML	Tue Sep 28 15:12:50 1999 +0200
@@ -202,6 +202,11 @@
 
 fun prove nm thm  = qed_goal nm (the_context ()) thm (fn _ => [(Blast_tac 1)]);
 
+prove "eq_commute" "(a=b)=(b=a)";
+prove "eq_left_commute" "(P=(Q=R)) = (Q=(P=R))";
+prove "eq_assoc" "((P=Q)=R) = (P=(Q=R))";
+val eq_ac = [eq_commute, eq_left_commute, eq_assoc];
+
 prove "conj_commute" "(P&Q) = (Q&P)";
 prove "conj_left_commute" "(P&(Q&R)) = (Q&(P&R))";
 val conj_comms = [conj_commute, conj_left_commute];