New class "order" and accompanying changes.
authornipkow
Wed, 12 Feb 1997 18:54:39 +0100
changeset 2609 4370e5f0fa3f
parent 2608 450c9b682a92
child 2610 655dc064a28c
New class "order" and accompanying changes.
src/HOL/Lex/AutoChopper.ML
src/HOL/Lex/Chopper.thy
src/HOL/ex/Puzzle.ML
--- a/src/HOL/Lex/AutoChopper.ML	Wed Feb 12 18:53:59 1997 +0100
+++ b/src/HOL/Lex/AutoChopper.ML	Wed Feb 12 18:54:39 1997 +0100
@@ -51,7 +51,7 @@
 goal AutoChopper.thy
 "! r erk l rst st ys yss zs::'a list. \
 \    acc xs st erk r (l,rst) A = (ys#yss, zs) --> \
-\    ys@flat(yss)@zs = (if acc_prefix A st xs then r@xs else erk@flat(l)@rst)";
+\    ys@concat(yss)@zs = (if acc_prefix A st xs then r@xs else erk@concat(l)@rst)";
 by (list.induct_tac "xs" 1);
  by (simp_tac (!simpset addcongs [conj_cong] setloop (split_tac [expand_if])) 1);
 by (asm_simp_tac (!simpset setloop (split_tac [expand_if])) 1);
@@ -133,7 +133,7 @@
  "! st erk r l rest ys yss zs. \
 \   acc xs st erk r (l,rest) A = (ys#yss, zs) --> \
 \     (if acc_prefix A st xs       \
-\      then acc(flat(yss)@zs)(start A) [] [] ([],flat(yss)@zs) A = (yss,zs) \
+\      then acc(concat(yss)@zs)(start A) [] [] ([],concat(yss)@zs) A = (yss,zs) \
 \      else (erk~=[] & (l,rest)=(yss,zs)) | (erk=[] & (l, rest)=(ys#yss,zs)))";
 by (simp_tac (!simpset setloop (split_tac [expand_if])) 1);
 by (list.induct_tac "xs" 1);
@@ -151,7 +151,7 @@
  by (subgoal_tac "r@[a] ~= []" 2);
   by (Fast_tac 2);
  by (Simp_tac 2);
-by (subgoal_tac "flat(yss) @ zs = list" 1);
+by (subgoal_tac "concat(yss) @ zs = list" 1);
  by (hyp_subst_tac 1);
  by (atac 1);
 by (case_tac "yss = []" 1);
--- a/src/HOL/Lex/Chopper.thy	Wed Feb 12 18:53:59 1997 +0100
+++ b/src/HOL/Lex/Chopper.thy	Wed Feb 12 18:54:39 1997 +0100
@@ -25,8 +25,8 @@
        (!zs. chopper(xs) = ([],zs) -->
              zs=xs & (!ys. ys ~= [] & ys <= xs --> ~L(ys))) &
        (!ys yss zs. chopper(xs) = (ys#yss,zs) -->
-          ys ~= [] & L(ys) & xs=ys@flat(yss)@zs &
-          chopper(flat(yss)@zs) = (yss,zs) &
+          ys ~= [] & L(ys) & xs=ys@concat(yss)@zs &
+          chopper(concat(yss)@zs) = (yss,zs) &
           (!as. as <= xs & ys <= as & ys ~= as --> ~L(as)))"
 
 end
--- a/src/HOL/ex/Puzzle.ML	Wed Feb 12 18:53:59 1997 +0100
+++ b/src/HOL/ex/Puzzle.ML	Wed Feb 12 18:54:39 1997 +0100
@@ -23,7 +23,7 @@
 by (subgoal_tac "f(na) <= f(f(na))" 1);
 by (fast_tac (!claset addIs [Puzzle.f_ax]) 2);
 by (rtac lessD 1);
-by (best_tac (!claset delrules [le_refl] 
+by (fast_tac (!claset delrules [order_refl] 
                       addIs [Puzzle.f_ax, le_less_trans]) 1);
 val lemma = result() RS spec RS mp;