turned distinct and sorted into inductive predicates: yields nice induction principles for free
authorhaftmann
Mon, 04 Oct 2010 14:46:48 +0200
changeset 39916 8c83139a1433
parent 39915 ecf97cf3d248
child 39917 b85bfa89a387
turned distinct and sorted into inductive predicates: yields nice induction principles for free
NEWS
src/HOL/Library/Permutation.thy
--- a/NEWS	Mon Oct 04 12:22:58 2010 +0200
+++ b/NEWS	Mon Oct 04 14:46:48 2010 +0200
@@ -74,6 +74,10 @@
 
 *** HOL ***
 
+* Predicates `distinct` and `sorted` now defined inductively, with nice
+induction rules.  INCOMPATIBILITY: former distinct.simps and sorted.simps
+now named distinct_simps and sorted_simps.
+
 * Constant `contents` renamed to `the_elem`, to free the generic name
 contents for other uses.  INCOMPATIBILITY.
 
--- a/src/HOL/Library/Permutation.thy	Mon Oct 04 12:22:58 2010 +0200
+++ b/src/HOL/Library/Permutation.thy	Mon Oct 04 14:46:48 2010 +0200
@@ -168,7 +168,7 @@
     apply simp
     apply (subgoal_tac "a#list <~~> a#ysa@zs")
      apply (metis Cons_eq_appendI perm_append_Cons trans)
-    apply (metis Cons Cons_eq_appendI distinct.simps(2)
+    apply (metis Cons Cons_eq_appendI distinct_simps(2)
       distinct_remdups distinct_remdups_id perm_append_swap perm_distinct_iff)
    apply (subgoal_tac "set (a#list) = set (ysa@a#zs) & distinct (a#list) & distinct (ysa@a#zs)")
     apply (fastsimp simp add: insert_ident)